将 IP 地址转发到 localhost ssh 隧道

将 IP 地址转发到 localhost ssh 隧道

我已经设置了 ssh 隧道,以便可以访问服务器私有子网上的 HTML 设备。例如:

$ ssh [email protected] -L 48884:192.168.100.14:80

允许我输入http://localhost:48884本地浏览器并连接到子网设备网页。

现在,我有一个使用192.168.100.14本地计算机上的地址的应用程序,我想设置一个 IPTables 条目,以便它将请求转发到192.168.100.14:80to localhost:48884

这会接近我想要的吗?

# iptables -A PREROUTING -t nat -p tcp -d 192.168.100.14 --dport 80 -j DNAT --to 127.0.0.1:48884

答案1

# Any Traffic destined to TCP 80 on eth0 must be forwarded to TCP 48884 on loopback interface 
 sudo iptables -t nat -I PREROUTING -p tcp -i eth0 --dport 80 -j DNAT --to-destination 127.0.0.1:48884
# Then allow forwarding from standard NIC to loopback (assuming eth0 is the standard NIC)
 sudo sysctl -w net.ipv4.conf.eth0.route_localnet=1

相关内容