iptables 阻止端口上的传出,允许选定的 IP

iptables 阻止端口上的传出,允许选定的 IP

Debian 7

iptables v1.4.14(没有规则)

需要阻止端口 25,587,465 上的所有传出连接并仅允许特定 IP 上的连接。

我尝试过的:

iptables -A OUTPUT -p tcp --match multiport --dports 25,587,465 -j REJECT
iptables -A OUTPUT -p tcp -s 127.0.1.1 --match multiport --dports 25,587,465 -j ACCEPT
iptables -A OUTPUT -p tcp -s **.**.**.*** --match multiport --dports 25,587,465 -j ACCEPT
iptables -A OUTPUT -p tcp -s **.**.**.*** --match multiport --dports 25,587,465 -j ACCEPT

我尝试了不同的规则顺序,但没有按预期工作。

答案1

iptables 规则是按顺序评估的,这意味着如果您在第一条规则中阻止所有内容,则以后允许某些内容是没有意义的,因为永远不会达到这些规则。

我很确定您不想匹配源地址,而是想要目的地。

iptables -A OUTPUT -p tcp -d 127.0.1.1 --match multiport --dports 25,587,465 -j ACCEPT
iptables -A OUTPUT -p tcp -d **.**.**.*** --match multiport --dports 25,587,465 -j ACCEPT
iptables -A OUTPUT -p tcp -d **.**.**.*** --match multiport --dports 25,587,465 -j ACCEPT
iptables -A OUTPUT -p tcp --match multiport --dports 25,587,465 -j REJECT

相关内容