链(内置):
PREROUTING:对数据包作路由选择前应用此链中的规则;
INPUT:进来的数据包应用此规则链中的策略;
FORWARD:转发数据包时应用此规则链中的策略;
OUTPUT:外出的数据包应用此规则链中的策略;
POSTROUTING:对数据包作路由选择后应用此链中的规则;
流入:PREROUTING --> INPUT;
流出:OUTPUT --> POSTROUTING;
转发:PREROUTING --> FORWARD --> POSTROUTING;
表:(优先级:raw --> mangle --> nat --> filter)
filter:过滤,INPUT --> FORWARD --> OUTPUT;
nat:network address translation,网络地址转换,PREROUTING(DNAT) --> OUTPUT --> POSTROUTING(SNAT);
mangle:拆解报文,做出修改,封装报文,PREROUTING --> INPUT --> FORWARD --> OUTPUT --> POSTROUTING;
raw:关闭nat表上启用的连接追踪功能,POSTROUTING --> OUTPUT;
iptables:四表五链
链上规则写入次序就是检查的次序,匹配到相应的规则后,就不再继续向下匹配,因此隐含一定的法则:
(1)同类规则(访问同一应用),匹配范围小的放上面;
(2)不同类规则(访问不同应用),匹配到频率较大的放上面;
(3)设置默认策略:白名单、黑名单;