我现在已经花了一些时间研究,但是我还没有find解决以下问题的解决scheme:
我想隧道服务器1,端口x到服务器2,端口x的任何请求。 端口保持不变,我只想将发送到端口x上的服务器1的任何数据隧道到服务器2。
连接将如下所示:
客户端>服务器1>隧道>服务器2
并相反:
服务器2>隧道>服务器1>客户端
那可能吗? 如果是的话,怎么样? 这些服务器都在运行Debian 8。
请原谅,如果这是一个总的noob问题,但我刚刚开始使用服务器和东西。
谢谢^^
这被称为代理(ing)。 是的,这可以通过启用server1上的转发模块,然后在您的iptables上添加适当的转发规则。
例如:
*在server1上:
启用Forwading:
echo "1" > /proc/sys/net/ipv4/ip_forward sysctl net.ipv4.ip_forward=1
在Iptables上添加转发规则
iptables -t nat -A PREROUTING --dst server1_ip -p tcp --dport portX -j DNAT --to-destination server2_ip:portX iptables -t nat -A POSTROUTING -p tcp --dst server2_ip --dport portX -j SNAT --to-source server1_ip iptables -t nat -A OUTPUT --dst server1_ip -p tcp --dport portX -j DNAT --to-destination server2_ip:portX
哪里:
portX:您希望转发的端口
server1_ip:服务器ip,它接收初始ip并转发到server2。
server2_ip:您希望将stream量转发到的服务器的IP地址。