Firewalld介绍:
在上一代的红帽企业版OS中,netfilter作为一个模块被内核加载,主要用于检查数据包在传输中的情况,意味着一个数据包在incoming,outgoing和forwarded时会被检查,netfilter作为一个模块,系统提供了一个用户级别的工具---iptables 作为普通的用户去管理和调试netfilter的一个手段在之前的版本中,而在RHEL7中,会用到firewalld这个守护进程来替代iptables。firewalld这个守护进程被firewalld这个软件包提供,并且在默认安装系统的时候已经完整安装(除非是最小化安装OS)。
Firewalld工作原理:
firewalld把所有的流量划分为区(network zones)简化了防火墙管理,基于标准比如源IP或是进入网络的接口,流量被转义到适当的区域防火墙的规则,每个区域有属于自己的端口号,服务来进行开启与关闭。
关于预设区域(Pre-defined zones):
/usr/lib/firewall/zones 保存了大量的预设区,但此目录下的.xml文件是不可以被修改了
而/etc/firewalld/zones目录下的内容可以被修改
下图给出常见的系统预设区的名词和含义:
关于预设服务:
系统同时保留了一些预设的服务(Pre-defined services),同样/usr/lib/firewalld/service下面的.xml文件是不可以被修改的,而/etc/firewalld/service则是可以修改的。
cp /usr/lib/firewalld/services/[service].xml /etc/firewalld/services/[service].xml 然后做修改
常见的保留预设服务: