文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

端口转发工具Rinetd详细入门教程

2023-10-23 12:01

关注

目录

条件

下载 

安装

方法A.shell安装

方法B.shell脚本安装

配置rinetd.conf文件

编辑器A:nano(新手友好)

编辑器B:vim

rinetd开关

A.配置启动

B.脚本启动

创建脚本

启动

测试

参考链接


条件

例如:iptables -A INPUT -p tcp -m tcp --dport 8080 -j ACCEPT

 转发规则

这个转发只看目标端口协议,

如果目标端口协议是TCP的,工具软件中就使用TCP连接,

如果目标端口协议是SSL的,工具软件中就使用SSL连接即可。

rinetd的转发,是无条件转发,不查看协议等内容,也就不存在遭受CC攻击等风险,但DDOS攻击还是受影响的。

所以,尽量保护好你的中转IP。

rinetd 在生产环境要谨慎使用,CPU使用率高

下载 

rinetd的下载地址:http://www.rinetd.com/download/rinetd.tar.gz

官网异常时下载处

安装

方法A.shell安装

[root@nginx /]# mkdir rined_soft                        #创建rined_soft [root@nginx /]# cd rined_soft                           #进入到该文件夹[root@nginx rined_soft]# tar -zxvf rinetd.tar.gz#解压[root@nginx rined_soft]# make#编译[root@nginx rined_soft]# make install #安装[root@master rinetd]# rinetd --help#rinetd是以命令的形式存在的Usage: rinetd [OPTION]  -c, --conf-file FILE   read configuration from FILE  -h, --help             display this help  -v, --version          display version numberMost options are controlled through theconfiguration file. See the rinetd(8)manpage for more information.

方法B.shell脚本安装

cat >> rinetd-installer.sh <<'EOF'           #cat追加内容,以EOF为结尾#!/bin/bash      #直接使用当前所在的shell(也就是bash)来解释脚本wget http://www.rinetd.com/download/rinetd.tar.gz #wget下载tar -zxvf rinetd.tar.gz                           #解压报错则去掉z             cd rinetd  mkdir -p /usr/man/man8make && make install      #若提示make cc Command not found  则yum安装gcc: yum install gccEOFchmod +x rinetd-installer.sh                       #chmod改权限。代号x :执行权限 ./rinetd-installer.sh #安装

#wget 下载

从网络上自动下载文件的自由工具,支持通过 HTTP、HTTPS、FTP 三个最常见的 TCP/IP协议 下载,并可以使用 HTTP 代理。"wget" 这个名称来源于 “World Wide Web” 与 “get” 的结合。

若tar -zxvf rinetd.tar.gz解压报错

gzip: stdin: not in gzip format

tar: Child returned status 1

tar: Error is not recoverable: exiting now

可将tar -xzvf去掉z

原因:gz下载不完整,或者并非.gz格式

本质:并非真正用到了gzip,所以不用参数z

配置rinetd.conf文件

命令默认在/usr/sbin/rinet,配置文件默认在/etc/rinetd.conf

编辑器A:nano(新手友好)

对标的是Windows系统中的记事本软件

nano /etc/rinetd.conf

如果目标文件不存在,系统会自动在该位置新建一个该名字的文件。

文件编辑:
使用键盘的上 下 左 右对光标进行移动,移动到指定位置以后,直接输入即可。

# 设置拒绝访问的ip地址信息# deny 192.168.1.*#允许192.168.18.*网段访问allow 192.168.18.*#​443端口即网页浏览端口0.0.0.0 443 mirrors.tuna.tsinghua.edu.cn 443  ​# 设置日志文件路径logfile /var/log/rinetd.log

保存文件:

Ctrl + o

CTRL+英文键o,如果文件发生了更改,会弹出提示,询问文件保存位置,

如果不需要进行修改文件保存位置,直接回车即可。

如果不想保存可以按Ctrl + C键取消保存。

退出编辑

Ctrl + x

如果文件保存完了,输入这一步,会直接回到命令行模式,

如果文件没有保存,按完这命令以后,会提示是否进行保存,

输入Y然后提示保存位置再按一遍回车即可保存,即可保存并退出。

输入N为不保存退出。取消的话,可以按Ctrl + C键退回编辑模式。

编辑器B:vim

vim filename,如果文件存在则打开,如果文件不存在则新建

vim插入模式想要退出,需要先按下键盘的“esc”键,然后输入“:”,输入wq(保存退出)或者q!(不保存退出)

vim /etc/rinetd.conf#添加如下几行内容0.0.0.0 8080 192.168.43.120 8080#将所有发往本机任何网卡的8080端口的请求转发到192.168.43.120的8080端口上0.0.0.0 2222 192.168.43.121 3389#将所有发往本机任何网卡2222端口的请求转发到192.168.43.121的3389端口192.168.43.1 80 192.168.43.122 80#将所有发往本机IP为192.168.43.1的80端口请求转发到192.168.43.122的80端口#说明:0.0.0.0表示本机绑定所有可用地址[Source Address] [Source Port] [Destination Address] [Destination Port]源地址 源端口 目的地址 目的端口

Linux常用工具之vim_哆哆哆咪咪咪的博客-CSDN博客_linux vim

rinetd开关

A.配置启动

rinetd的启动与停止[root@master rinetd]# rinetd -c /etc/rinetd.conf                 #启动rinetd[root@master rinetd]# pkill rinetd                                #关闭rinetd

B.脚本启动

创建脚本

cat >> /etc/init.d/rinetd <<'EOF'#!/bin/bashEXEC=/usr/sbin/rinetdCONF=/etc/rinetd.confPID_FILE=/var/run/rinetd.pidNAME=RinetdDESC="Rinetd Server"case "$1" in    start)        if [ -x "$PID_FILE" ]; then            echo "$NAME is running ..."            exit 0        fi        $EXEC -c $CONF        echo -e "\e[1;32m$NAME is running\e[0m"    ;;    stop)        if [ -f "$PID_FILE" ]; then            kill `cat $PID_FILE`            while [ -x "$PID_FILE" ]            do                echo "Waiting for $NAME to shutdown..."                  sleep 1            done            rm -f $PID_FILE        fi        echo -e "\e[1;31m$NAME stopped.\e[0m"    ;;    restart)        $0 stop        $0 start    ;;    status)        if [ -f $PID_FILE ]; then            echo "$NAME is running ..."        else            echo "$NAME stopped."        fi    ;;    *)        echo $"Usage: $0 {start|stop|restart|status}"        exit 2    ;;esacexit 0EOF

启动

/etc/init.d/rinetd start


测试

[root@master rinetd]#echo '0.0.0.0 80 192.168.43.201 8161' >> /etc/rinetd.conf                #添加这条转发规则到rinetd.conf[root@master rinetd]# pkill rinetd                                                            #关闭rinetd[root@master rinetd]# rinetd -c /etc/rinetd.conf                                             #启动rinetd

网页测试成功,已经将80端口转发到mq的8161端口,如下:

在这里插入图片描述

参考链接

rinetd端口转发工具_MssGuo的博客-CSDN博客_rinetd

Linux下使用Rinetd搭建一个中转服务器来实现端口转发 - 玩技e族

Linux服务器安装rinetd转发 - 应援 - E.R.T. -

Rinetd——端口转发工具 - 简书

来源地址:https://blog.csdn.net/qq_28838891/article/details/128180070

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-服务器
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯