我正在学习 iptables,但找不到关于这两条规则之间区别的解释:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
状态“新”是什么意思?如果有状态“NEW”,那么是否有状态“OLD”?
我正在学习 iptables,但找不到关于这两条规则之间区别的解释:
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
状态“新”是什么意思?如果有状态“NEW”,那么是否有状态“OLD”?
NEW 是第一次建立连接时的状态。通常在 iptables 规则的早期接受所有 ESTABLISHED,RELATED 连接以减少处理负载。后续规则根据端口号等确定允许哪些新连接。对于上面的两个规则,第一个将允许端口 80 上的所有流量,而第二个将只允许初始握手。如果默认规则是 DROP 数据包,则仅第二条规则不足以允许在端口 80 上进行通信。