實驗拓撲
實驗要求
- 連接互聯網主機的網卡劃分至external區域
- 連接公司內部主機的網卡劃分至trusted區域
- 連接企業內部網站服務器的網卡劃分至dmz區域
- 網站服務器和網關服務器均通過SSH的12345端口來管理
- 網站服務器上開啓HTTP協議
- 網站服務器拒絕來自任何位置的ping
- 網關服務器拒絕來自互聯網上的ping
- 公司內部主機通過網關服務器共享上網
- 互聯網用戶通過網關服務器訪問企業內部網站服務器
實現步驟
1.配置企業內部網站服務器
安裝Nginx
yum -y install epel-release
yum -y install nginx
啓動Nginx服務
systemctl start nginx
systemctl enable nginx
創建測試頁面
mv /usr/share/nginx/html/index.html /usr/share/nginx/html/index.html_bak
vim /usr/share/nginx/html/index.html
This is server 111111
在本地驗證
2.配置互聯網主機網站服務器
配置方法同上,爲了便於驗證,將測試頁面的內容修改即可,配置完後在本地驗證,驗證結果如下:
3.配置firewalld防火牆策略
在網關服務器上配置默認區域
- 連接互聯網主機的網卡劃分至external區域
- 連接公司內部主機的網卡劃分至trusted區域
- 連接企業內部網站服務器的網卡劃分至dmz區域
具體操作如下:
網關服務器上的三個網卡分別對應一個區域
#設置firewalld區域
firewall-cmd --set-default-zone=external
#添加網卡到區域內
firewall-cmd --change-interface=eth1 --zone=dmz
firewall-cmd --change-interface=eth0 --zone=trusted
配置完後,查看當前的默認區域,如下:
網站服務器和網關服務器均通過SSH的12345端口來管理
配置內部網站服務器
修改sshd端口
# 修改服務器sshd端口號
vim /etc/ssh/sshd_conf
......
Port 12345 #去掉前面的“#”號,端口修改爲12345
......
#修改完保存後,重啓服務
setenforce 0
systemctl restart sshd
驗證
已經無法連接了,加上端口號在驗證一下
發現還是無法連接,所以我們需要設置防火牆策略,讓端口12345可用,具體配置如下:
firewall-cmd --add-port=12345/tcp
配置完後再次驗證
這次已經可以正常連接了。
配置網關服務器
關於sshd端口的配置同上面的內部網站服務器,此處省略,防火牆策略如下:
firewall-cmd --add-port=12345/tcp
firewall-cmd --add-port=12345/tcp --zone=dmz
firewall-cmd --add-port=12345/tcp --zone=trusted
在內部網站服務器和互聯網主機上開啓HTTP協議
firewall-cmd --add-service=http
網站服務器拒絕來自任何位置的ping
firewall-cmd --add-icmp-block=echo-request
驗證(在網關服務器上驗證)
網關服務器拒絕來自互聯網上的ping
firewall-cmd --add-icmp-block=echo-request
驗證
使用公司內部主機ping,可以ping通
使用互聯網上的主機ping,ping不通
公司內部主機通過網關服務器共享上網
開啓網關服務器的路由轉發功能
echo "1" > /proc/sys/net/ipv4/ip_forward
爲external添加富規則,允許來自內網的流量進行地址僞裝訪問外網
firewall-cmd --add-rich-rule='rule family=ipv4 source address=172.16.1.0/24 masquerade'
驗證
互聯網用戶通過網關服務器訪問企業內部網站服務器
爲external區域添加端口轉發,允許外網訪問某一個特定地址的80端口的請求轉發到企業內部服務器上
vim /etcsysconfig/network-scripts/ifcfg-eth2
......
IPADDR1=10.1.1.2
NETMASK=255.255.255.0
IPADDR2=10.1.1.3
NETMASK=255.255.255.0
......
firewall-cmd --add-rich-rule='rule family=ipv4 destination address=10.1.1.3/32 forward-port port=80 protocol=tcp to-addr=192.168.1.10' --zone=external
驗證