firewalld综合实验

实验拓扑

在这里插入图片描述

实验要求

  • 连接互联网主机的网卡划分至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 reload

验证
在这里插入图片描述
已经无法连接了,加上端口号在验证一下
在这里插入图片描述
发现还是无法连接,所以我们需要设置防火墙策略,让端口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端口的请求转发到企业内部服务器上

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

验证
在这里插入图片描述