想要写防跳新手的可以看看 可能教程也不全 大牛勿喷ԅ(¯ㅂ¯ԅ) 规则 iptables [A] [B] [C] [D] [E] A有4个规则 filter nat raw mangle 对于filter来讲一般只能做在3个链上:INPUT ,FORWARD ,OUTPUT 对于nat来讲一般也只能做在3个链上:PREROUTING ,OUTPUT ,POSTROUTING 对于raw来讲一般也只能做在2个链上:PREROUTING ,OUTPUT 而mangle则是5个链都可以做:PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING 链-t 1.PREROUTING (路由前) 2.INPUT (数据包流入口) 3.FORWARD (转发管卡) 4.OUTPUT (数据包出口) 5.POSTROUTING (路由后) B就是前面对应的链 一般都是写-A或-I加链 -A:新增规则(追加方式)到某个规则链中,该规则将会成为规则链中的最后一条规则。 -I:插入一条规则(-I 链 3就是插入到第三条) -S:查看某规则链中的规则 -F:删除某规则链中的所有规则 -X:删除某个规则链 -N:定义新的规则链 -R:取代现行规则,规则被取代后并不会改变顺序 -D:从某个规则链中删除一条规则,可以输入完整规则,或直接指定规则编号加以删除 主意事项: -I是添加到相同规则链最上面 -A是添加到相同规则链最下面 C指定你接下来的规则到底是在哪个链上操作的,当定义策略的时候,是可以省略的 D指定匹配标准 C和D规则点击此处 E如何进行处理 ACCEPT – 允许 REJECT – 防火墙拒绝数据包,有回应产生 * – 丢弃数据包 REDIRECT – 重定向:主要用于实现端口重定向 SNAT – 源地址转换,将内网地址转换成公网的合法地址 DNAT – 目标地址转换,多用在内部服务器的发布 MASQUERADE – 地址伪装 RETURN – 返回,在自定义链执行完毕后使用返回,来返回原规则链。 举例: 放行uid为1000的软件 iptables -t nat -I OUTPUT -m owner --uid-owner 1000 -j ACCEPT 放行uid为1000的软件tcp协议 iptables -t nat -I OUTPUT -p tcp -m owner --uid-owner 1000 -j ACCEPT 放行uid为1000的软件tcp协议的80端口(只放行80端口) iptables -t nat -I OUTPUT -p tcp --dport 80 -m owner --uid-owner 1000 -j ACCEPT 放行uid为1000的软件tcp协议的非80端口(不是80端口放行) iptables -t nat -I OUTPUT -p tcp ! --dport 80 -m owner --uid-owner 1000 -j ACCEPT 丢弃uid为1000的软件的包 iptables -t mangle -I OUTPUT -m owner --uid-owner 1000 -j * 想要学习更多 http://www.linuxso.com/linuxpeixun/10332.html http://www.linux*com/Linux/2013-10/90930p2.htm http://m.blog.chinaunix.net/uid-26495963-id-3279216.html 其他:多个 80到84用下面的代码 80,81,82,83,84或80:84 ,表示多个不同的 :表示之间 写防跳要注意:防跳规则的顺序,因为防跳脚本是从上向下读取的,所以自己写好了防跳最好使用-S查看防跳脚本规则的顺序。 还要注意的是uid为-1的无法禁网(个别手机可能会不一样)