需要 iptables 将几个端口转发到另一个本地端口

需要 iptables 将几个端口转发到另一个本地端口

我正在运行 Wireguard,希望它监听比默认端口更多的端口。由于它由 Algo 管理,最简单的方法似乎是使用 iptables 转发端口,但我无法让它工作。

以下是我迄今为止尝试过的:

iptables -t nat -I PREROUTING -i eth0 -d 46.101.***.***/32 -p udp -m multiport --dports 53,80,443,554 -j REDIRECT --to-ports 51819

iptables -A INPUT -p udp --dport 554 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p udp --sport 554 -m conntrack --ctstate ESTABLISHED -j ACCEPT

对每个端口重复最后两个命令。ip 46.101。是运行服务的 eth0 接口的 IP。我只能通过 udp:51819 连接,没有其他端口。没有其他防火墙处于活动状态。

答案1

最后这个办法奏效了

iptables -A INPUT -p udp -m multiport --dports 80,443,554,51819 -j ACCEPT
iptables -t nat -A PREROUTING -p udp -m multiport --dports 80,443,554 -j REDIRECT --to-ports 51819

相关内容