iptables service 管理防火墙规则的模式(静态):用户将新的防火墙规则添加进 /etc/sysconfig/iptables 配置文件当中,再执行命令 /etc/init.d/iptables reload 使变更的规则生效。在这整个过程的背后,iptables service 首先对旧的防火墙规则进行了清空,然后重新完整地加载所有新的防火墙规则,如果加载了防火墙的模块,需要在重新加载后进行手动加载防火墙的模块。
firewalld防火墙:使用 python 语言开发,管理防火墙规则的模式(动态):任何规则的变更都不需要对整个防火墙规则列表进行重新加载,只需要将变更部分保存并更新到运行中的 iptables 即可。还有命令行和图形界面配置工具,它仅仅是替代了 iptables service 部分,其底层还是使用 iptables 作为防火墙规则管理入口。
Filewalld(动态防火墙)作为系统中变更对于netfilter内核模块的管理工具;
<1>概述:保护内部主机和内部网络的安全,通过过滤的方式对网络层的ip地址和端口进行处理;
<2>了解防火墙:
硬件防火墙:ASA
软件防火墙:iptables(linux平台)、ISA(windows自带的)
<3>iptables防火墙结构:
netfilter内核模块、iptables用户工具、firewall用户工具
<4>iptables的表:按照不同功能来划分;
raw(状态跟踪)、mangle(标记)、nat(修改)、filter(过滤)
raw:主要是为了提高效率使用的,raw本身的含义是指“原生的”、“未经过加工 的”,符合raw表所对应规则的数据包将会跳过一些检查,这样就可以提高效率;
mangle:mangle表的规则可以对数据包进行修改,比如修改ttl值等;
nat:进行源地址或目标地址修改转换;
filter:通过过滤数据包的ip地址、mac地址、协议、端口,对数据包进行控制;
<5>iptables规则链:根据不同时机来划分链,在链中存放规则;
INPUT(入站)、OUTPUT(出站)、FORWARD(转发)、PREROUTING(路由前)、POSTROUTING(路由后)
<6>表中默认包含链:
raw:PREROUTING、OUTPUT
mangle:PREROUTING、INPUT、FORWARD、OUTPUT、POSTROUTING
nat: PREROUTING、POSTROUTING、OUTPUT
filter:INPUT、FORWARD、OUTPUT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -i lo -m state --state NEW -j ACCEPT iptables -A INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT iptables -A INPUT -p tcp --dport 53 -m state --state NEW -j ACCEPT iptables -A INPUT -s 172.25.254.250 -p tcp --dport 22 -m state --state NEW -j ACCEPT iptables -A INPUT -j REJECT service iptables save