iptables 允许来自一个 ip 的所有内容

iptables 允许来自一个 ip 的所有内容

这是我所拥有的。

双宿主 FreePBX 盒。一切运行良好。eth0 是外部的。eth1 是内部的。SIP 提供商位于 216.234.xx

我正在尝试配置 iptables 以允许来自 eth1 和 lo 的所有内容。但只允许来自 216.234.xx 的流量

以下是我添加的当前 iptables 规则。

-A INPUT -i lo -j ACCEPT
-A INPUT -i eth1 -j ACCEPT
-A INPUT -s 216.234.x.x/32 -j ACCEPT
-A OUTPUT -j ACCEPT

我一按下回车键...

iptables -A INPUT -i eth0 - j DROP

入站音频停止工作。

然后当我删除该规则时它又恢复了。我不知所措。

谢谢,

答案1

听起来在 DROP 之前添加 LOG 规则是个不错的选择,看看您是否能够发现一些必要的流量被意外丢弃。

答案2

您所需要的是状态防火墙 - 只允许数据包在一个方向传输显然是没用的。

幸运的是,conntrack 很智能,所以你不需要这么做。

确保第一条规则是-A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT,并且不再担心 - SIP 助手有望捕获不同 IP 的问题。

您还可以最好阅读 iptables 手册页,了解 conntrack 匹配接受的确切参数,以便将来更好地使用它。

还要记住,连接助手的自动设置最终将被处理,因此,虽然您目前可以将 RELATED 应用于所有内容,但在不久的将来,内核可能会破坏它。

相关内容