iptables -m state模块 注意与-m conntrack的区别

1、
经常看到如下2个语句(当然也可以同时设定 ip和端口):
iptables -t filter -I -m state --state ESTABLISHED,RELATED -j ACCEPT
iptabels -t filter -A -m state --state INVALID -j DROP
这些是用在本机访问外部sshd等服务时,sshd服务端数据回程到INPUT本机时需要设定的

当然还有-m state --state NEW又是另外一个状态了,比如本机提供sshd服务,外部访问本端的sshd服务首次的连接状态就是NEW

参考:http://www.zsythink.net/archives/1597 这哥们已经说的很清楚了,要深入的话需要参考 linux tutorial中user-land states部分

2、
在centos7中可以看到如下的默认iptables语句:
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A IN_public_allow -p tcp -m tcp --dport 80 -m conntrack --ctstate NEW,UNTRACKED -j ACCEPT
-A IN_public_allow -p tcp -m tcp --dport 3306 -m conntrack --ctstate NEW,UNTRACKED -j ACCEPT
-A IN_public_deny -s 59.66.0.0/16 -p tcp -m tcp --dport 40022 -m conntrack --ctstate NEW,UNTRACKED -j REJECT --reject-with icmp-port-unreachable
-A IN_public_deny -s 101.5.0.0/16 -p tcp -m tcp --dport 40022 -m conntrack --ctstate NEW,UNTRACKED -j REJECT --reject-with icmp-port-unreachable
-A IN_public_deny -s 101.6.0.0/16 -p tcp -m tcp --dport 40022 -m conntrack --ctstate NEW,UNTRACKED -j REJECT --reject-with icmp-port-unreachable

原文地址:https://www.cnblogs.com/weihua2020/p/14072420.html