Linux下简单好用的工具rinetd,实现端口映射/转发/重定向

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

#软件下载
wget http://www.boutell.com/rinetd/http/rinetd.tar.gz
#解压安装
tar zxvf rinetd.tar.gz
make
make install

#编辑配置
vi /etc/rinetd.conf
0.0.0.0 8080   172.19.94.3 8080
0.0.0.0 2222   192.168.0.103 3389
1.2.3.4 80     192.168.0.10 80

说明一下

  • 0.0.0.0表示本机绑定所有可用地址
  • 将所有发往本机 8080 端口的请求转发到 172.19.94.3 的 8080 端口
  • 将所有发往本机 2222 端口的请求转发到 192.168.0.103的 3389 端口
  • 将所有发往 1.2.3.4 的 80 端口请求转发到 192.168.0.10 的 80 端口

命令格式

bindaddress bindport connectaddress connectport

绑定的地址 绑定的端口 连接的地址 连接的端口

[Source Address] [Source Port] [Destination Address] [Destination Port]

源地址 源端口 目的地址 目的端口

###启动程序

pkill rinetd  ##关闭进程
rinetd -c /etc/rinetd.conf  ##启动转发

把这条命令加到 /etc/rc.local 里面开机自动运行(可能情况不同,具体看如何实现开机启动的)

查看状态

netstat -antup

需要注意

  1. rinetd.conf 中绑定的本机端口必须没有被其它程序占用
  2. 运行 rinetd 的系统防火墙应该打开绑定的本机端口