Firewalld综合实验
实验环境
实验要求
1、连接互联网主机的网卡划分至external区域
2、连接公司内部主机的网卡划分至trusted区域
3、连接企业内部网站服务器的网卡划分至dmz区域
4、网站服务器和网关服务器均通过SSH的12345端口来管理
5、网站服务器上开启HTTP协议
6、网站服务器拒绝来自任何位置的ping
7、网关服务器拒绝来自互联网上的ping
8、公司内部主机通过网关服务器共享上网
准备工作
公司内部主机:192.168.53.130(静态IP地址)
网关服务器:192.168.53.132、172.16.219.128、192.168.110.134(静态IP地址)
企业内部服务器:172.16.219.131(静态IP地址)
互联网服务器主机:192.168.110.114(静态IP地址)
1、配置网关服务器
设置IP地址
vmware1
vi /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static
IPADDR=192.168.53.132
NETMASK=255.255.255.0
vmware2
vi /etc/sysconfig/network-scripts/ifcfg-ens37
BOOTPROTO=static
IPADDR=172.16.219.128
NETMASK=255.255.255.0
vmware8
vi /etc/sysconfig/network-scripts/ifcfg-ens38
BOOTPROTO=static
IPADDR=192.168.110.134
NETMASK=255.255.255.0
2、配置企业内部服务器
(网卡模式vmware2)
vi /etc/sysconfig/network-scripts/ifcfg-ens38
BOOTPROTO=static
IPADDR=172.16.219.131
NETMASK=255.255.255.0
GATEWAY=172.16.219.128
安装nginx服务
yum -y install epel-release
yum -y install nginx
启动服务
systemctl start nginx
systemctl enable nginx
创建测试页面
mv /usr/share/nginx/html/index.html /usr/share/nginx/html/111
echo "server1111111111111" > /usr/share/nginx/html/index.htm
企业内部服务器验证
3、配置互联网服务器
(网卡模式vmware8)
vi /etc/sysconfig/network-scripts/ifcfg-ens38
BOOTPROTO=static
IPADDR=192.168.110.144
NETMASK=255.255.255.0
GATEWAY=192.168.110.134
互联网服务器验证:(安装nginx服务过程省略)
4、配置Firewalld规则(网关服务器配置)
在网关服务器上配置默认区域
1、连接互联网主机的网卡划分至external区域
2、连接公司内部主机的网卡划分至trusted区域
3、连接企业内部网站服务器的网卡划分至dmz区域
配置每个网卡设置对应的区域:
firewall-cmd --set-default-zone=external # 默认区域
firewall-cmd --change-interface=ens37 --zone=dmz # ens33添加到dmz区域
firewall-cmd --change-interface=ens38 --zone=trusted # ens37添加到trusted区域
查看当前区域的配置
企业内部网站服务器和网关服务器均通过SSH的12345端口来管理
配置内部网站服务器
vim /etc/ssh/sshd_conf
......
Port 12345 #去掉前面的“#”号,端口修改为12345
......
验证、加端口验证
setenforce 0 # 先关闭setenforce服务
systemctl restart sshd # 重启服务
设置防火墙策略,让端口12345可用
firewall-cmd --add-port=12345/tcp
配置网关服务器firewalld
配合ssh服务的策略
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
验证:
公司内网服务器
互联网服务器
公司内部主机通过网关服务器共享上网
开启网关服务器的路由转发功能
echo "1" > /proc/sys/net/ipv4/ip_forward
为external添加富规则,允许来自内网的流量访问外网
firewall-cmd --add-rich-rule='rule family=ipv4 source address=192.168.53.0/24 masquerade'
验证
互联网用户通过网关服务器访问企业内部网站服务器
为external区域添加端口转发,允许外网访问某一个特定地址的80端口的请求转发到企业内部服务器上
vim /etcsysconfig/network-scripts/ifcfg-ens38
IPADDR1=192.168.110.134
NETMASK=255.255.255.0
IPADDR2=192.168.110.100
NETMASK=255.255.255.0
添加富规则
firewall-cmd --add-rich-rule='rule family=ipv4 destination address=192.168.110.100/32 forward-port port=80 protocol=tcp to-addr=172.168.219.131' --zone=external # 这里的192.168.110.100/32 代表所所有110段的地址都转到企业内部服务器上
验证:(在互联网服务器上通过网关服务器的IP地址转发到企业内网服务器上)