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根本就不往下看了。所以,一定要小心了。
原文地址:https://www.cnblogs.com/super119/p/1902961.html