Rinetd安装

发布时间:2017-11-13 21:17:07编辑:admin阅读(3943)

    Rinetd是为在一个Unix和Linux操作系统中为重定向传输控制协议(TCP)连接的一个工具。Rinetd是单一过程的服务器,它处理任何数量的连接到在配置文件etc/rinetd中指定的地址/端口对。尽管rinetd使用非闭锁I/O运行作为一个单一过程,它可能重定向很多连接而不对这台机器增加额外的负担。


    环境说明:

    blob.png

    之前的想法是在ECS主机安装VPN,客户端进行拨号,来连接RDS数据库,后来发现总是无法打开表,非常慢,他们建议使用rinted,后来进过测试,可以打开表,而且速度很快。


    安装过程如下:


    安装Rinetd

    wget http://www.boutell.com/rinetd/http/rinetd.tar.gz

    tar -zxvf rinetd.tar.gz -C /usr/src

    cd /usr/src/rinetd


    sed -i 's/65536/65535/g' rinetd.c (修改端口范围,否则会报错)


    mkdir /usr/man

    make && make install

    创建配置文件


    cat >>/etc/rinetd.conf <<end


    # allow 192.168.2.*


    # deny 192.168.1.*


    # bindadress bindport connectaddress connectport


    0.0.0.0 3306 a.rds.aliyuncs.com 3306


    logfile /var/log/rinetd.log


    end


    添加开机自启动

    echo rinetd >>/etc/rc.local

    rinetd启动后,就已经可以通过云服务器的3306端口连接到处于内网模式的xxx rds数据库了

    除了这个场景,其它的内网端口转发也都可以(由于FTP协议相对特殊,无法实现转发)


    配置文件中可以对某个IP或者IP段进行允许/拒绝,藉此提高内网端口的安全性;

    如果二者冲突,测试的结果来看是拒绝优先。


    上面配置只是配置一个RDS,如果有多个,需要添加端口号,添加蓝色部分

    vi /etc/rinetd.conf


    # allow 192.168.2.*


    # deny 192.168.1.*


    # bindadress bindport connectaddress connectport


    0.0.0.0 3306 a.rds.aliyuncs.com 3306

    0.0.0.0 3307 b.rds.aliyuncs.com 3306

    0.0.0.0 3308 c.rds.aliyuncs.com 3306


    logfile /var/log/rinetd.log


    重启服务

    pkill rinetd

    rinetd


    使用mysql客户端进行测试。注意连接第2台和第3台的时候,更改下端口号。


关键字