一、 firewalld的9个zone
开启firewalld防火墙
firewallde默认有9个zone(zone是firewalld单位),默认zone为public
1.drop(丢弃):任何接受的数据包都被丢弃,没有任何恢复,仅能有发送出去的网络连接,数据包不能进来,但是可以出去。
2.block(限制):任何接受的网络连接都被ipv4的icmp-host-prohibited信息和ipv6的icmp-adm-prohibited信息所拒绝。(和drop相比,比较宽松一些,主要针对icmp)
3.piblic(公共):在公共区域内使用,不能相信网络内其他计算机不会对你造成危害,只能接受经过选取的连接
4.external(外部):特别是为路由器启用伪装功能的外部网,你不能信任来自网络的其他计算,不能相信他们不会对你造成危害,只能接受经过选择的连接
5.dmz(非军事区):用于你的非军事区内的电脑,此区域可公开访问,可以有限的进入你的内部网络,仅仅接受经过选择的连接
6.work(工作):用于工作区,你可以基本上信任网络内其他电脑不会对你造成危害,仅仅接收经过选择的连接
7.home(家庭):用于内部网络,你可以基本上信任网络内其他电脑不会对你造成危害,仅仅接收经过选择的连接
8.internal(内部):用于内部网络,你可以基本上信任网络内其他电脑不会对你造成危害,仅仅接收经过选择的连接
9.trusted(信任):可接受所有的网络连接
查看所有zone命令:firewall-cmd --get-zones
查看默认zone命令: firewall-cmd --get-default-zone
对于一个接受到的请求具体使用哪个zone,farewalld是通过三种方法来进行判断:
1.source,也就是源地址
2.interface接受请求的网卡
3.firewalld.conf中配置的默认zone
这三个优先级按顺序依次降低,也就是说如果按照source可以找到就不会再按interface来查找,如果前面两个找不到再按第三个找
针对网卡zones的一些常用命令
修改默认zone:
之所以有9个zone,是因为每一个zone里面都使用了不通的service,而service就是针对一个服务(端口)做的iptables规则,zone就是一个规则集合
firewall-cmd --get-services 查看所有的servies
firewall-cmd --list-services //查看当前zone下有哪些service
列出home服务:
给home增加服务
只是把http服务加入到home中,要想永久生效需要修改配置文件
zone配置模板
更改配置文件,之后会在/etc/firewalld/zones目录下面生成配置文件
案例:ftp服务自定义端口1121,需要在work zone下面放行ftp
ftp.xml模板复制到/etc/firewalld/services/目录下
修改端口21为1121
work.xml模板复制到/etc/firewalld/zones/目录下
vi /etc/firewalld/zones/work.xml新增一行:
重新加载服务
此时,配置好的ftp已经在work zone下