通过rinetd实现端口转发来访问内网的服务

一、   问题描述

通过外网来访问内网的服务

二、   环境要求

需要有一台能够外网访问的机器做端口映射,通过数据包转发来实现外部访问阿里云的内网服务

三、   操作方法

做端口映射的方案有很多,Linux下的ssh tunnel和windows下的portmap等等,这里分享一个更稳定和简单的小工具rinetd

四、   下载安装

$ 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

$ mkdir /usr/man&&make&&make install

五、   创建配置文件:

$ vim /etc/rinetd.conf

# allow 192.168.2.*

# deny 192.168.1.*

# bindaddress bindport connectaddress connectport

114.215.143.167 4408 10.174.205.239 3306

logfile /var/log/rinetd.log

六、   加入到开机启动脚本中

$ echo rinetd >> /etc/rc.local

$ cat /etc/rc.local

七、   启动 rinetd

$ rinetd -c /etc/rinetd.conf

# 检查进程是否启动

$ ps aux | grep -I rinetd

# 检查监控的端口是否开启

$ netstat -tanop | grep 4408

八、   验证

待 rinetd启动后,就已经可以通过外网的4408端口连接到处于内网模式的10.174.205.239:3306数据库了

九、   其他说明

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

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

如果二者冲突,拒绝优先。

rinetd也有Windows版本,配置方法完全相同,在此不再赘述。 如果你是ubuntu系统,使用:apt-get install rinetd -y 就可以实现安装。

通过rinetd实现端口转发来访问内网的服务的更多相关文章

  1. Linux通过端口转发来访问内网服务(端口转发访问阿里云Redis数据库等服务)

    # 安装rinetd wget http://www.boutell.com/rinetd/http/rinetd.tar.gz&&tar -xvf rinetd.tar.gz& ...

  2. Linux 通过rinetd端口转发来访问内网服务

    可以通过端口映射的方式,来通过具有公网的云服务器 ECS 访问用户名下其它未购买公网带宽的内网 ECS 上的服务.端口映射的方案有很多,比如 Linux 下的 SSH Tunnel.rinetd,Wi ...

  3. 阿里云ECS linux通过rinetd 端口转发来访问内网服务

    一.场景说明: 可以通过端口映射的方式,来通过具有公网的云服务器 ECS 访问用户名下其它未购买公网带宽的内网 ECS 上的服务.端口映射的方案有很多,比如 Linux 下的 SSH Tunnel.r ...

  4. Linux 通过端口转发来访问内网服务

    Rinetd是为在一个Unix和Linux操作系统中为重定向传输控制协议(TCP)连接的一个工具,系统内部服务受系统网服限制外部无法访问,需要通过rinetd映射将内网服务转发出来. 1. 下载解压 ...

  5. p2p-tunnel 打洞内网穿透系列(三)TCP转发访问内网web服务

    系列文章 p2p-tunnel 打洞内网穿透系列(一)客户端配置及打洞 p2p-tunnel 打洞内网穿透系列(二)TCP转发访问远程共享文件夹 p2p-tunnel 打洞内网穿透系列(三)TCP转发 ...

  6. iptables端口转发规则(内网端口转外网端口)

    需求:外网124.202.173.118需要访问 10.45.225.70的内网54032端口,10.45.225.70服务器有公网地址139.129.109.81将内网地址端口转发到外网地址端口,并 ...

  7. 利用SSH端口转发实现远程访问内网主机远程桌面(一) 建立SSH转发

    近期家里更换了移动的宽带,拨号后拿到的是10开头的内网IP,就不能像之前一样通过路由器的端口映射实现从外网访问主机的远程桌面.这种情况下可以利用一台具有公网IP的服务器充当中转,利用SSH的隧道转发功 ...

  8. frp 内网穿透访问内网Web服务

    ps:最近想要通过域名(公网)访问或者测试在本地搭建的 web 服务(不想在公网IP服务器上再部署个服务,也不想通过teamview等工具远程卡到爆!), 由于本地机器没有公网 IP,无法将域名解析到 ...

  9. 怎样从外网访问内网微服务Microservices?

    本地部署了一个微服务,只能在局域网内访问,怎样从外网也能访问到本地的微服务呢?本文将介绍具体的实现步骤. 准备工作 部署并启动微服务程序 默认部署的微服务端口是8088. 实现步骤 下载并解压hole ...

随机推荐

  1. 使用Servlet实现图片下载

    package chensi.com; import java.io.FileInputStream; import java.io.IOException; import java.net.URLE ...

  2. oracle备忘

    一.explain plan a)explain plan for select ... select * from table(dbms_xplan.display()); function dis ...

  3. Strict Standards: Only variables should be passed by reference

    <?php $tag="1 2 3 4 5 6 7"; $tag_sel = array_shift(explode(' ', $tag)); print_r($tag_se ...

  4. vsftpd移植

    1.交叉编译 2.将生成的 vsftpd 复制到目标板 /usr/sbin 目录,vsftpd.conf 复制到目标板 /etc 目录,并添加 vsftpd 为可执行: 3.配置 使用 vi 打开 v ...

  5. 将src非空的属性注入到des中

    package lizikj.bigwheel.common.vo.merchandise.util; import java.lang.reflect.Field; import lizikj.bi ...

  6. 【08_238】Product of Array Except Self

    Product of Array Except Self Total Accepted: 26470 Total Submissions: 66930 Difficulty: Medium Given ...

  7. javaweb-url /

    /一直搞得不清不楚 有时候不用加有时加了也行,有时必须加 转发自XXX论坛 推荐使用 <% String path = request.getContextPath(); String base ...

  8. PHP--Warning: Invalid argument supplied for foreach() in ...

    1.背景 今天学习PHPExcel的使用,在代码执行foreach($data as $value){...}的时候出现这样一个警告提示:Warning: Invalid argument suppl ...

  9. linux-6的yum软件仓库

    yum命令 命令 作用 yum repolist all  列出所有仓库 yum list all  列出仓库中的所有软件包 yum  info 软件包名称  查看软件包信息 yum install  ...

  10. 使用 sqlcmd 运行 Transact-SQL 脚本文件

    在数据恢复时遇到问题:bat文件批处理的指导文档 https://msdn.microsoft.com/zh-cn/library/ms170572%28v=sql.120%29.aspx