Loading... <p>这几学习iptables,踩了一些坑,作下总结。</p> <p></p> <p><strong>1、三表</strong></p> <p>(1)filter:默认表,处理本机数据包,包含input、output和forward</p> <p>(2)nat:处理源或目的IP/端口转换,包含prerouting、postrouting、output</p> <p>(3)mangle:处理高级路由信息,包含prerouting、output、input、forward</p> <p></p> <p><strong>2、五链</strong></p> <p>(1)inpput,处理要进入本机的数据包的规则</p> <p>(2)output:处理由本机产生,要外发的数据包的规则</p> <p>(3)forward:处理非本机的数据包的规则</p> <p>(4)prerouting:处理进入netfilter后路由判断前执行的数据包的规则</p> <p>(5)postrouting,处理离开netfilter前执行的数据包的规则</p> <p></p> <p><strong>3、语法参数</strong></p> <p> iptables [-t table] command [chain] [match] [-j target]</p> <p> </p> <p> (1)table:表名,filter、nat、mangle,默认为filter</p> <p> (2)command:</p> <p> -A:链尾添加规则</p> <p> -D:链中删除规则,可指定行号</p> <p> -R:替换规则</p> <p> -L:显示规则</p> <p> -I:插入规则,可指定行号</p> <p> -X:删除自定义的规则</p> <p> -F:清空所有规则或删除指定的规则</p> <p> -N:创建新命名的链。</p> <p> -P:设置默认策略</p> <p> -Z:包字节计数器清零</p> <p> (3)match</p> <p> 通用匹配</p> <p> -p:指定协议</p> <p> -s:指定源地址</p> <p> -d:指定目的地址</p> <p> -i:指定数据包进入的网卡</p> <p> -o:指定数据包出去的网卡</p> <p> 隐含匹配:tcp udp icmp</p> <p> 显示匹配:(还在学习,后续补充)</p> <p> (4)target:</p> <p> ACCEPT:满足条件的包允许通过</p> <p> REJECT:满足条件的包丢弃,且回信息给对方</p> <p> DROP:满足条件的包丢弃,不返回信息给对方</p> <p> REDIRECT:转发包到另一个端口</p> <p> MASQUERADE:获取IP地址作NAT</p> <p> SNAT:源地址转换</p> <p> DNAT:目的地址转换</p> <p></p> <p>(学习中,未完待续,后续补充实战例子上来)</p> 最后修改:2021 年 12 月 10 日 10 : 53 AM © 允许规范转载 赞赏 如果觉得我的文章对你有用,请随意赞赏 赞赏作者 支付宝微信