简单理解iptables
表
在配置iptables的时候需要先选表再匹配链
所有的规则都记录在raw、mangle、nat、filter这四张表中
处理的优先级raw>mangle>nat>filter
表 | 功能 |
---|---|
mangle | 拆解报文做出修改,重新封装 |
nat | 网络地址转换功能 |
filter | 过滤功能,防火墙 |
raw | 可在数据包连接跟踪前进行处理 |
选择表filter并查看规则
1 | iptables -t filter -L |
其它表同理,实际使用中默认查看的是filter表,因此查看filter表的规则也可以简写为
1 | iptables -L |
命令其它可选参数,-v
更详细的规则信息,-n
不解析地址
链
简单的说“链”就是对一些特定行为的数据包采用的规则集合
链 | 匹配的报文 | 能使用的表 |
---|---|---|
INPUT | 需要发到本机上层数据包 | mangle、nat*、filter |
OUTPUT | 从本机上层发出的数据包 | raw、mangle、nat、filter |
FORWARD | 非本机需要转发的数据包 | mangle、filter |
PREROUTING | 进入网卡还未路由的数据包 | raw、mangle、nat |
POSTROUTING | 即将出网卡的数据包 | mangle、nat |
某些系统规定nat表中的规则不能用于INPUT链
常用参数
| 参数 | 用途 |
| — | — |
| -L | 查看规则 |
| -P | 设置默认策略 |
| -I | 插入规则(默认在第一条) |
| -A | 添加一条规则在链尾 |
| -R | 替换某条规则 |
| -D | 删除某条规则 |
| -F | 删除所有规则 |
| -Z | 计数器清零 |
| -X | 删除自定义链 |
匹配
基本匹配规则
| 参数 | 内容 |
| — | — |
| -s | 匹配来源IP地址,“!”表示除外 |
| -d | 匹配目标IP地址 |
| -i | 匹配流入该网卡的数据包 |
| -o | 匹配从该网卡流出的数据包 |
| -p | 匹配协议,如tcp,udp,icmp |
动作
参数 | 动作 |
---|---|
ACCEPT | 接受 |
REJECT | 拒绝 |
DROP | 丢弃数据包 |
RETURN | 数据包不继续执行该链后面的命令 |
REDIRECT | 转发(仅用于nat表) |
感谢您的阅读,本文由 NewHanly 版权所有。如若转载,请注明出处:NewHanly(http://newhanly.com/2020/04/21/iptables/)