Linux 下使用 rinetd 来实现端口转发

简介

有一台 Online.net 的 Win 系统服务器,每次远程桌面都卡的要死。所以就想用 VPS 转发一下。

其实 Linux 下使用 iptables 实现端口转发就足够了,但配置较为复杂。作为小白的我还是选择了使用 rinetd。

虽然 rinetd 有点古老,但很短小、高效,对于解决这种问题来说是非常完美的。

官网:http://www.boutell.com/rinetd/

方法

安装 rinetd

root权限执行:

wget http://www.boutell.com/rinetd/http/rinetd.tar.gz
tar -xvf rinetd.tar.gz
cd rinetd
sed -i 's/65536/65535/g' rinetd.c //修改rinetd.c,将查询到的65536修改为65535
mkdir /usr/man/
make && make install

安装在 /usr/sbin 目录下

创建配置文件

nano /etc/rinetd.conf

填入配置信息,格式为:

bindaddress bindport connectaddress connectport
绑定的地址 绑定的端口 转发的地址 转发的端口

在每一单独的行中指定每个要转发的端口。

源地址和目的地址都可以是主机名或 IP 地址,IP 地址为0.0.0.0 则将rinetd 绑定到任何可用的本地IP地址上

示例:

跳板 VPS 的 IP 为1.1.1.1, rinetd已经安装在跳板 VPS 上。服务器的 IP 为2.2.2.2。

0.0.0.0 555 2.2.2.2 3389

可实现 访问跳板 VPS(1.1.1.1)的555端口就等于访问服务器(2.2.2.2)的3389端口。

程序启动,停止,查询,自启动

创建完配置文件后,别忘了启动程序才能生效。

启动命令:/usr/sbin/rinetd

停止命令:killall rinetd

查看是否启动:netstat -tanulp|grep rinetd

开机启动:
在 /etc/rc.local 文件中,添加 /usr/sbin/rinetd 启动命令即可。

标签: 端口转发, rinetd