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

可以通过端口映射的方式,来通过具有公网的云服务器 ECS 访问用户名下其它未购买公网带宽的内网 ECS 上的服务。端口映射的方案有很多,比如 Linux 下的 SSH Tunnel、rinetd,Windows 下的 portmap 等,本文简要介绍 rinetd,和 ssh tunnel 的配置方法。

说明:本文相关配置和说明仅用于示例和操作指引,阿里云不对相关操作结果及由此产生的问题负责。

rinetd 配置方法



如果是 Ubuntu 系统,可以直接使用如下指令安装:

  1. apt-get install rinetd -y

下面介绍源代码安装配置方法:

1. 下载解压 rinetd 软件包:

  1. wget http://www.boutell.com/rinetd/http/rinetd.tar.gz&&tar -xvf rinetd.tar.gz&&cd rinetd

2. 修改编译配置:

  1. sed -i ‘s/65536/65535/g’ rinetd.c# 修改端口范围,否则会报错

3. 编译安装:

  1. mkdir /usr/man&&make&&make install

4. 创建配置文件:

  1. cat >>/etc/rinetd.conf <>/etc/rc.local # allow 192.168.2.# deny 192.168.1.# bindadress bindport connectaddress connectport0.0.0.0 3306 example.rds.aliyuncs.com 3306logfile /var/log/rinetd.logendecho rinetd >>/etc/rc.local

5. 使用:

rinetd 启动后,就已经可以通过云服务器的 3306 端口连接到处于内网模式的 example rds 数据库了。除了这个场景,其它的内网端口转发配置也类似。不过,由于FTP 协议端口是随机的,所以无法通过此方法实现转发。

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

SSH Tunnel 配置方法



通过putty 和 有公网 IP 的 ECS 之间建立 SSH 隧道,然后通过本地端口转发,实现在客户 PC 终端上对内网 ECS 和 RDS 的直接访问,为客户的远程管理提供了巨大的方便。

其数据流向如下示意图: 

前置条件

  • 客户 PC 终端可以 ssh 登录有公网的 ECS 服务器。
  • 有公网的 ECS 服务器可以通过内网访问其他内网 ECS 服务器。
  • 有公网的 ECS 服务器可以通过内网访问 RDS(ECS 的内网 IP 在 RDS 的白名单中)。

客户端配置

1. 客户端使用 putty,填写有公网 ECS 的 IP 及 ssh 端口

2. 设置 SSH Tunnel:Source Port 是 PC 本地监听的端口,Destination 填写内网 ECS 服务器的内网地址及端口。然后点击 Add,就会生成一个端口转发记录,然后点击 Open 会打开 SSH 连接:

3. 在弹出的窗口中输入正常 SSH 登录有公网 IP 的 ECS 服务器:

4. 这时在客户 PC 终端上使用 netstat –na 命令应该可以看到一个 127.0.0.1 的 22 端口的本地监听:

5. 通过连接这个本地端口就可以连接到内网的 ECS 服务器上了:

6. 这个方法同样适用于 Windows系统(为了不与客户 PC 终端的端口冲突,这里使用了 33389 端口作为本地监听端口)

7. 内网的 RDS 也可以实现:

8. 可以在客户 PC 终端直接使用数据库客户端程序来连接 RDS 中的数据库,非常方便。

另外,在 SecureCRT 中这个功能叫做 端口转发 ,进行类似的配置后也可以实现同样的功能。

原文地址:https://www.cnblogs.com/hftian/p/10008350.html

时间: 2024-08-04 01:13:26

Linux 通过rinetd端口转发来访问内网服务的相关文章

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

# 安装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 说明:IP的端口是双字节,也就是256*256-1, 256*256对计算机来说就是0,因

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

一.   问题描述 通过外网来访问内网的服务 二.   环境要求 需要有一台能够外网访问的机器做端口映射,通过数据包转发来实现外部访问阿里云的内网服务 三.   操作方法 做端口映射的方案有很多,Linux下的ssh tunnel和windows下的portmap等等,这里分享一个更稳定和简单的小工具rinetd 四.   下载安装 $ wget http://www.boutell.com/rinetd/http/rinetd.tar.gz $ tar -xvf rinetd.tar.gz $

iptables 端口转发 实现访问内网的httpd服务

上篇文章写到通过dhcp实现客户机上网功能,由于公网地址只有一个,我想把内部服务发布到外网就需要通过 "端口转发" 来实现 1.公网服务器: eth0:公网IP eth1:内网IP - 192.168.1.1 2.HTTPD服务器: eth0:内网IP -192.168.1.100 3.实现方法: 通过访问公网IP的8080端口来实现到内网MYSQL服务器的3306端口的访问 4.在公网服务器上: iptables -t nat -A PREROUTING -p tcp --dport

映射-外网访问内网服务-ngrok和cisco路由做映射

一:软件解决 软件下载地址: https://ngrok.com/download ngrok-stable-windows-amd64.zip 使用: cmd ---CD..切换到软件目录 ngrok.exe 在弹出框输入:ngrok http 80   (80或者其他端口号,根据实际情况) 二:cisco路由做映射 步骤如下 登陆cisco en ,config 查看配置   show run 固定IP: ip nat inside source static tcp 10.10.1.253

1、SRX防火墙Static NAT解决内网无法通过公网访问内网服务问题

1.实验拓扑图 2.实验配置 =============================================================2.1.内网服务器访问Internet=============================================================set system host-name SRX1set system time-zone Asia/Shanghaiset system name-server 114.114.114.

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

近期家里更换了移动的宽带,拨号后拿到的是10开头的内网IP,就不能像之前一样通过路由器的端口映射实现从外网访问主机的远程桌面.这种情况下可以利用一台具有公网IP的服务器充当中转,利用SSH的隧道转发功能将远程桌面请求转发至内网主机. SSH隧道 SSH 会自动加密和解密所有SSH 客户端与服务端之间的网络数据,除此之外SSH 还能够将其他TCP端口的网络数据通过SSH链接来转发,并且自动提供了相应的加密及解密服务,这一功能也称为“SSH隧道”.SSH隧道分为本地转发.远程转发和动态转发. 本地转

rinetd端口转发

第1章 云服务器ECS Linux通过端口转发来访问内网服务 前置条件 客户PC 终端可以ssh 登录有公网的ECS 服务器. 有公网的ECS 服务器可以通过内网访问其他内网ECS 服务器. 有公网的ECS 服务器可以通过内网访问RDS(ECS 的内网IP 在RDS 的白名单中) rinetd 配置方法 1.1 如果是Ubuntu系统,可以直接使用如下指令安装: apt-get install rinetd –y 1.2 下面介绍源代码安装配置方法(centos,redhat等) 1.下载解压r

设置端口转发来访问Virtualbox里linux中的网站

上一篇中我们讲到怎么设置virtuabox来通过SSH登录机器. 同样,我们也可以按照上一篇内容中的介绍,设置端口转发,来访问虚拟linux系统已经搭建的网站: 1.设置端口转发: 我们设置本地的8888端口来转发给虚拟机的80端口. 虚拟机中的网站简单结构如下: [email protected]:/var/www/php# ll /var/www/php/test.php -rw-rw-r-- 1 zhiguo zhiguo 217 Apr 12 20:59 /var/www/php/tes

花生壳+端口映射实现远程ssh访问内网linux主机

一.花生壳安装(安装前需要在花生壳网站注册获得一个免费域名,有了这个域名,后边才能在外网通过访问这个域名来实现ssh登陆内网linux主机) [[email protected] 桌面]# wget http://download.oray.com/peanuthull/linux/phddns-2.0.6.el6.x86_64.rpm --2014-10-27 20:11:30--  http://download.oray.com/peanuthull/linux/phddns-2.0.6.