iptables NAT 端口转发不起作用

iptables NAT 端口转发不起作用

我遇到了一个有关端口转发的问题。我的情况非常简单。我想连接到远程服务器,但存在 IP 限制。只有我的主服务器才允许连接。我希望能够使用第三台计算机连接到远程服务器:

第三台计算机(10.10.0.2)====> 主服务器(172.16.15.3)====> 远程服务器(192.168.10.5:80)

实际上我使用 SSH 端口转发:

ssh -L 12345:192.168.10.5:80 [email protected]
wget 127.0.0.1:12345

但我必须管理 SSH 连接并始终检查隧道是否已启动。这就是我想使用 NAT 的原因,但它根本不起作用!主服务器在 Fedora 上。

sysctl net.ipv4.ip_forward
net.ipv4.ip_forward = 1

我尝试这样做:

iptables -A PREROUTING -t nat -i enp3s0 -p tcp --dport 81 -j DNAT --to-destination 192.168.10.5:80
iptables -A FORWARD -p tcp -d 192.168.10.5 --dport 80 -j ACCEPT
iptables -A POSTROUTING -t nat -s 192.168.10.5 -o enp3s0 -j MASQUERADE

但是当我尝试连接时,我用 tcpdump 看到了传入的数据包,但没有传出的数据包

telnet 172.16.15.3 81

您知道如何修复它吗?

此致

相关内容