我有一个Linux VPS(virtuozzo)服务器,我需要设置端口转发,但是我的托管服务提供商不允许iptables-nat内核模块,因此iptables -t nat
-不起作用。
我正在寻找其他方法来做到这一点。我知道我可以使用openssh转发端口,但是我需要转发20+个不同的端口,即tcp和udp,所以这不是一个选择。
是否有任何适用于Linux的软件可以进行端口转发?
我有一个Linux VPS(virtuozzo)服务器,我需要设置端口转发,但是我的托管服务提供商不允许iptables-nat内核模块,因此iptables -t nat
-不起作用。
我正在寻找其他方法来做到这一点。我知道我可以使用openssh转发端口,但是我需要转发20+个不同的端口,即tcp和udp,所以这不是一个选择。
是否有任何适用于Linux的软件可以进行端口转发?
Answers:
使用称为“ socat”的工具,它是处理此类问题的好工具,并且已经打包在许多Linux发行版中。在此处阅读:http://www.dest-unreach.org/socat/doc/README
socat的端口转发示例:
socat TCP4-LISTEN:80,fork TCP4:www.yourdomain.org:8080
这会将端口80上的所有TCP连接重定向到www.yourdomain.org端口8080 TCP。
那rinetd
呢
它是一个重定向TCP连接的守护程序。查看手册页,看看它是否适合您的需求:http : //www.boutell.com/rinetd/
xinet / inetd。例如:
重新导向
允许将TCP服务重定向到另一台主机。当xinetd在该端口上接收到TCP连接时,它会生成一个进程,该进程建立与指定主机和端口号的连接,并在两个主机之间转发所有数据。
我发现了一个名为portfwd的小型实用程序http://portfwd.sourceforge.net/完全满足我的需要(TCP和UDP转发),主页说它的最新更新时间为2002年,但最新版本为2007年,并且可以在2.6内核上运行。
好了,这是应该起作用的简单答案,这不是火箭科学,但是大多数人都过度复杂化了答案并将所有新特性混淆到Linux用户。
ufw允许2xxx
2xxx =您的端口号只要在服务器终端中键入该命令,即可打开所需的端口。