Iptables 接受所有来自特定 IP 和端口的内容

Iptables 接受所有来自特定 IP 和端口的内容

我想接受从 IP 地址及其特定端口到我的任何端口的所有流量。
这是配置:
配置

详细信息:
我在服务器中使用 Jitsi,并且我想从另一个 server2(客户端)访问 Jitsi。客户端上有防火墙,默认情况下会阻止除 https 和 ssh 之外的所有内容。
Jitsi meet 会议流程(没有 STUN,允许点对点连接)如下所示:

  • 客户端从其任意端口向 Jitsi 的第 10000 个端口发送连接请求。
  • Jitsi 接受到其 10000 的请求,并将应答发送到请求来自的端口。
  • 客户端看不到答案,因为防火墙已阻止它,因为答案来自随机端口。

因此,我需要接受来自 Jitsi 服务器的 IP 及其特定端口 10000 到我的任何端口的所有流量。

我尝试将这些添加到rules.chains中:

-A PREROUTING -s 10.0.0.1 --sport 10000 -j POLACCEPT

但这没有用。它在 systemctl restart netfilter-persistent 上给了我错误。
顺便说一句,我可以在 tcpdump 结果中看到传入的数据包,我猜这是因为 udp 数据包即将到来,然后 iptables 阻止了它们,但 tcpdump 可能仍然能够看到它们。

有没有解决方案?它是什么?

答案1

问题是,协议已被指定。
-A PREROUTING -p udp -s 10.0.0.1 --sport 10000 -j POLACCEPT
线应该适用于此。 -p 表示协议,现在指定为 udp。

根据这里的答案: https://serverfault.com/questions/415717/setting-iptables-rule-for-all-protocols-for-specific-source-and-destination-port 这是不允许的,因为 IP 传输层可以具有不与端口绑定的协议。

相关内容