在没有 iptables 的 Linux 上进行端口转发?

tro*_*oex 40 linux port-forwarding

我有一台 Linux VPS (virtuozzo) 服务器,我需要设置端口转发,但我的托管服务提供商不允许使用iptables-nat内核模块,因此iptables -t nat- 无法正常工作。

我正在寻找其他方法来做到这一点。我知道我可以使用openssh转发端口,但我需要转发 20 多个不同的端口,tcp 和 udp,所以这不是一个选项。

有没有可以做端口转发的linux软件?

小智 58

使用名为“socat”的工具,它是处理此类事情的绝佳工具,并且已经打包在许多 linux 发行版中。在这里阅读:http : //www.dest-unreach.org/socat/doc/README

socat 的端口转发示例:

socat TCP4-LISTEN:80,fork TCP4:www.yourdomain.org:8080
Run Code Online (Sandbox Code Playgroud)

这会将端口 80 上的所有 TCP 连接重定向到 www.yourdomain.org 端口 8080 TCP。


Jon*_*oss 19

有一个很小的、轻量级的资源程序被调用redir,它是非常可配置的。

apt-get install redir 安装在基于 Debian 的发行版上。

redir :SRC :DEST 将作为守护进程在后台运行。


小智 13

怎么样rinetd
它是一个重定向 TCP 连接的守护进程。查看手册页,看看它是否适合您的需求:https : //manpages.debian.org/unstable/rinetd/rinetd.8.en.html


Bil*_*hor 6

xinetd支持重定向属性,该属性可以执行您想要的操作。正如其他人所指出的,有许多程序可以处理重定向。

使用xinetd或其他使用该tcpwrappers库的程序将允许您在必要时应用访问限制。


tro*_*oex 4

我发现一个名为 portfwd http://portfwd.sourceforge.net/的小实用程序,它完全满足我的需要(TCP 和 UDP 转发),主页说它最后更新于 2002 年,但最新版本是 2007 年,它适用于 2.6 内核。