允许所有转发并阻止一组 IP 工作:
iptables -P FORWARD ACCEPT
iptables -A FORWARD -m set --match-set denied_ips src,dst -j REJECT
但拒绝所有转发并允许一组 IP 不起作用:
iptables -P FORWARD DROP
iptables -A FORWARD -m set --match-set allowed_ips src,dst -j ACCEPT
这是怎么回事?
编辑:为澄清起见,以下是我的规则。我想FORWARD
删除不在的所有内容allowed_ips
。
#iptables -S
-P INPUT ACCEPT
-P FORWARD DROP
-P OUTPUT ACCEPT
-A FORWARD -m set --match-set allowed_ips src,dst -j ACCEPT
答案1
我找到了答案:事实证明
iptables -A FORWARD -m set --match-set allowed_ips src,dst -j ACCEPT
仅当 src和dst 在 中allowed_ips
。我错误地认为当 src 或 dst 在 中时它会匹配allowed_ips
。