iptables match到一条policy之后就不会往下继续查找policy了,来看看为什么。
也就是说,当一个包到达网卡,iptables检查的时候,是按照我们/etc/sysconfig/iptables中设定的规则一条一条往下check的,所以,设定在前面的规则会影响到后面的规则,设置的时候小心了。比如:
# Generated by iptables-save v1.2.8 on Sun Nov 25 16:13:01 2007
*filter
:INPUT DROP [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i eth1 -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j DROP
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth1 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -i eth1 -p tcp -m tcp --dport 53 -j ACCEPT
-A INPUT -i eth1 -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -i eth1 -p tcp -m tcp --dport 139 -j ACCEPT
-A INPUT -m state --state ESTABLISHED -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -p tcp -m tcp --sport 22 -j ACCEPT
-A OUTPUT -p tcp -m tcp --sport 53 -j ACCEPT
-A OUTPUT -p udp -m udp --sport 53 -j ACCEPT
-A OUTPUT -p tcp -m tcp --sport 139 -j ACCEPT
COMMIT
# Completed on Sun Nov 25 16:13:01 2007
这样的一段规则,设置之后就没有任何效果。因为一开始:
-A INPUT -i eth1 -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -j DROP
这一句就把所有发往eth1的可能的网络链接封掉了,所以,下面的开放22端口这些东西就全都无效了,因为iptables根本就不往下看了。所以,一定要小心了。
通过上文,想必大家都知道为什么iptables match到一条policy之后就不会往下继续查找policy了把!希望本文对你们有用!
【编辑推荐】
- linux iptables layer7 模块 中文howto
- iptables 学习笔记
- iptables配置备份
- Linux系统Iptables端方执行详细讲解
- Linux系统Iptables防火墙
- Ubuntu 10.10 设置iptables做NAT
- iptables与natcheck