当前位置: 首页 > Linux运维 > Linux安装rinetd实现TCP端口转发

Linux安装rinetd实现TCP端口转发

Linux运维 9条评论 2018-4-3 2,535 views

在Linux系统中大多数情况选择用iptables来实现端口转发,iptables虽然强大,但配置不便,而且新手容易出错。在此分享另一个TCP端口转发工具rinetd,rinetd小巧简单,配置方便。

安装rinetd

在Linux系统输入下面的命令,一行一个:

#安装依赖
yum -y install gcc gcc-c++
#下载rinetd
wget https://boutell.com/rinetd/http/rinetd.tar.gz
#解压
tar -zxvf rinetd.tar.gz
#创建手册目录
mkdir -p /usr/man/man8
#进入目录
cd rinetd
#编译安装
make && make install

看到下面的提示说明安装成功了,可以输入rinetd -v查看当前版本。

设置TCP端口转发

#新建rinetd配置文件
vi /etc/rinetd.conf
#填写如下内容
0.0.0.0 2018 103.74.192.160 2019
#启动rinetd
rinetd -c /etc/rinetd.conf

rinetd配置文件的格式如下:

  • 0.0.0.0:源IP
  • 2018:源端口
  • 103.74.192.160:目标IP
  • 2019:目标端口

上面配置的意思是将本地2018端口转发到103.74.192.160的2019端口,启动后可以输入netstat -apn|grep 'rinetd'查看是否运行正常,注意还需要在自己服务器防火墙放行对应的源端口,否则无法正常使用用。

总结

rinetd安装和配置都非常简单,但缺点是不支持UDP转发,如果有UDP转发的需求可以看看《Iptables实现端口转发

rinetd官网:https://boutell.com/

9 条评论 “Linux安装rinetd实现TCP端口转发”

  1. 小清新说道:

    xiaoz,问下那些情况下需要端口转发?

  2. 追梦说道:

    haproxy支持端口段转发

    1. xiaoz说道:

      嗯,haproxy功能更强大,rinetd配置比较简单。

  3. 唯一度博客说道:

    转发之后,php怎么获取用户真实IP?

  4. 菜鸟运维说道:

    自打nginx支持端口转发后我就觉得服务器只需要一个nginx了

  5. 机器侠说道:

    貌似不支持 tcp 端口段批量转发吧?只支持单端口转发吗?

    1. xiaoz说道:

      好像只支持单端口,我也希望有批量转发的功能。

  6. 淘惠网说道:

    这个方法不错,很实用!

  7. tracymc说道:

    确实比iptables好用多了,简单易懂。

发表评论

电子邮件地址不会被公开。 必填项已用*标注