一、配置实例:
(一)实验环境说明:
(1)一台内部测试机;一台外部测试机;网站服务器为DMZ区域;
(2)网关服务器作为防火墙,并具备路由转发功能;
(3)外部测试机和DMZ区域的服务器都搭建一个web服务;
(4)准备四台虚拟机(我的是centos7);
(5)整个实验环境,都在局域网下进行,所有网卡设置成仅主机模式
其中,centos7-3和centos7-4,这两台虚拟机需要安装 httpd服务。
(二)实验步骤:
(1)第一步:首先进入centos7-3,和centos7-4,在有网的情况下,安装 httpd服务
命令:yum install httpd -y
(2)第二步:进入centos7-2,再加两块网卡,总共三块网卡
(3)第三步:给三块网卡各配上静态ip地址,配好之后用命令: systemctl restart network ,重启一下服务。
ens33:100.1.1.10
ens36:192.168.10.1
ens37:192.168.20.1
在 /etc/sysctl.conf 文件后加上net.ipv4.ip_forward=1,开启路由转发功能,并用命令,sysctl -p 让其生效。
(4)第四步:现在打开centos7-1,配静态ip地址192.168.10.10
到10网段的网关也是可以ping通的。
(5)第五步:进入DMZ区域的centos7-3,进行相关配置。
1、修改网卡信息,配置静态IP地址为:192.168.20.20
2、测试到网关是否互通
(6)第六步:来到centos7-4,修改配置信息1、更改网卡,配置静态IP地址为:100.1.1.20
2、测试到网关100.1.1.10是否能通
(7)第七步:待所有环境都配置好之后,我们查看测试服务器能否访问内部和DMZ区域。
1、开启httpd服务,并在/var/www/html 目录下,创建一个index.html,写一段话,作为后面测试用。
2、更改防火墙设置
首先设置dmz区域,并且添加http服务,删除ssh服务,阻止icmp协议。
(8)第八步:开启外部区域的 httpd服务,和之前一样,创建一下小网页,作为测试用。
(9)第九步:首先在dmz和外部区域,先检查一下,本地的网页是否能够打开
(10)第十步:由于防火墙还没有设置,所以我们可以看到在内部区域,访问这两个网页是无法连接的状态。
(11)第十一步:我们回到centos7-2,开始配置防火墙设置:配置外部区域,ens36网卡为信任区域,ens37网卡为dmz区域,删除ssh访问,添加http服务,阻止icmp协议,最后重启防火墙。
(12)第十二步:我们再回到内部测试机centos7-1,试一下访问外部的网页还能否成功。
同时,我们在外部区域的centos7-4中,也可以在access _ log 日志中看到谁开访问过了,同时防火墙也给来访地址做了伪装,显示的是网关访问。
同时,由于地址伪装的原因,外部区域也是无法访问到具体的私网地址。
而且访问100.1.1.10网关的时候,也是显示的是无法连接,因为这个数据过来的时候,由于没有做端口映射,不知道该转发给内部区域还是dmz区域。
(二)、如何做端口映射
(1)只需要在防火墙上设置一条命令即可:
firewall-cmd --zone=external --add-forward-port=port=80:proto=tcp:toaddr=192.168.20.20 --permanent
//指定外部区域,为80端口,并为tcp协议,指定ip地址192.168.20.20
(2)设置完成后,我们在回到外部区域的centos7-4主机上,看能否访问成功
(3)由于做了icmp协议的阻塞,内部区域的centos7-1 也是无法与dmz区域的主机相互通,但是访问网站是可以的。