讲道理,iptables和firewalld都不是真正意义上的防火墙,他们只是定义防火墙规则的服务而已。而且这些工具,我们只需要精通一个即可。
至于iptables“四表五链”的理论概念,个人认为无需有太多的了解,只需掌握常用的参数即可,应付日常工作足矣。
策略与规则链
一般而言,防火墙的策略规则有两种,一种是允许,一种是拒绝。
防火墙有默认策略,如果默认策略是拒绝,那么就需要设置允许规则;如果默认策略是允许,那么就需要设置拒绝规则。
防火墙会从上至下读取配置的策略规则,匹配到规则后,就去执行规则中的行为。如果匹配不到,就会去执行默认策略。
规则链会依据数据包的位置来进行处理,具体位置如下:
- 在进行路由选择前处理数据包(PREROUTING)
- 处理流入的数据包(INPUT)
- 处理流出的数据包(OUTPUT)
- 处理转发的数据包(FORWARD)
- 在路由选择后处理数据包(POSTROUTING)
而我们是用最多的就是INPUT链,对于流入的数据包,我们有四个动作可以对其处理。
ACCEPT(允许)、REJECT(拒绝)、LOG(记录)、DROP(丢弃)
iptables中的命令参数
参数 | 作 |
---|