五链
input | 当收到访问本机地址的数据包时 |
output | 当本机向外发送数据包时 |
forward | 当收到需要转发给其他地址的数据包时 |
prerouting | 在对数据包做路由选择之前 |
postrouting | 在对数据包做路由选择之后 |
四表
filter | 对数据包进行过滤,具体规则要求决定怎样处理数据包 |
nat | 修改数据包的ip地址、端口号信息 |
mangle | 修改数据包的服务类型等(解析包) |
raw | 决定是否对数据包进行状态跟踪 |
优先级关系: raw -- mangle -- nat -- filter
表与链的关系
表(功能) | 链(钩子) |
raw | prerouting,output |
mangle | prerouting,input,forward,output,postrouting |
nat | prerouting,output,postrouting(centOS 7中还有input) |
filter | input,forward,output |
iptables用法
规则:根据指定的匹配条件去尝试匹配每条流经此处的报文,若匹配成功则由规则后面的指定的处理动作来进行处理;
匹配条件:
基本匹配条件:(1)源地址 source ip (2)目标地址 destination ip
扩展匹配条件:(1)源端口 source port (2)目标端口 destination port
处理动作:
ACCEPT | REJECT | DROP | SNAT |
MASQUERADE | DNAT | REDIRECT | LOG |
语法结构:
iptables -t 指定表 - I | A 匹配条件 -j 处理动作