firewalld的9个zone
打开firewalld,禁掉iptables
systemctl disable iptables
systemctl stop iptables
systemctl enable firewalld
systemctl start firewalld
Iptables -nvL 显示的firewalld的规则
firewalld默认有9个zone,zone为firewalld的单位。
默认public zone,每个zone就是一个规则集。
什么是规则集:一条规则放行80或者22端口这样的规则。
firewall-cmd --get-zones //查看所有zone
firewall-cmd ---get-default-zone //查看默认zone
默认zone为public
9个zone
firewalld关于zone的操作
firewall-cmd --set-default-zOne=work //设定默认zone
[root@centos7 ~]# firewall-cmd --set-default-zOne=work
Warning: ZONE_ALREADY_SET: work
success
[root@centos7 ~]# firewall-cmd --get-default-zone
work
关闭networkmanager
systemctl stop NetworkManager
systemctl disable NetworkManager
firewall-cmd --get-zone-of-interface=eth0 //查指定网卡
firewall-cmd --zOne=public --add-interface=lo //给指定网卡设置zone
firewall-cmd --zOne=dmz --change-interface=lo //针对网卡更改zone
firewall-cmd --zOne=dmz --remove-interface=lo //针对网卡删除zone
firewall-cmd --get-active-zones //查看系统所有网卡所在的zone
其它:
命令补全 yum install -y bash-completion
firewalld关于service的操作
Service 是zone下面的子单元,也可以理解为端口。
防火墙控制端口。
firewall-cmd --get-services 查看所有的servies
firewall-cmd --list-services //查看当前zone下有哪些service
firewall-cmd --zOne=public --add-service=http //把http增加到public zone下面
firewall-cmd --zOne=public --remove-service=http
ls /usr/lib/firewalld/zones/ //zone的配置文件模板
firewall-cmd --zOne=public --add-service=http --permanent //更改配置文件,之后会在/etc/firewalld/zones目录下面生成配置文件
需求:ftp服务自定义端口1121,需要在work zone下面放行ftp
cp /usr/lib/firewalld/services/ftp.xml /etc/firewalld/services
vi /etc/firewalld/services/ftp.xml //把21改为1121
cp /usr/lib/firewalld/zones/work.xml /etc/firewalld/zones/
vi /etc/firewalld/zones/work.xml //增加一行
firewall-cmd --reload //重新加载
firewall-cmd --zOne=work --list-services