[svc]通过ssh tunnel连接内网ECS和RDS

论坛 期权论坛 脚本     
已经匿名di用户   2022-5-29 18:50   1402   0

问题背景:

一些ECS没有访问公网的需求,或是RDS出于安全考虑只允许内网访问。但是希望远程连接这些ECS或RDS进行管理时就会比较麻烦,一般可以通过选一台有公网的ECS搭建VPN的方法来解决这个问题。但是搭建VPN有一定的技术门槛,需要有一定的网络基础,在配置的过程中会遇到很多问题。

这种情况下,可以通过SSH Tunnel的方式来简单的实现对内网ECS和RDS的访问。使用此方案不需要安装额外的软件,不需要配置路由转发,可以大大降低配置和使用的技术门槛。
806469-20180309144134736-653973327.png

解决方案:

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

配置方法:

1.前置条件:

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

2,客户端配置

a)客户端使用putty,填写有公网ECS的IP及ssh端口
806469-20180309144812423-2031889613.png

b)设置ssh tunnel,Source Port是PC本地监听的端口。Destination填写内网ECS服务器的内网地址及端口。然后点击“Add”,就会生成一个端口转发记录,然后点击“Open”会打开SSH连接。
806469-20180309144817274-1749460890.png

c)在弹出的窗口中输入正常SSH登录有公网IP的ECS服务器
806469-20180309144823141-298881208.png

d)这时在客户PC终端上使用netstat -an命令应该可以看到一个127.0.0.1的22端口的本地监听。
806469-20180309144828356-1790608592.png

e)通过连接这个本地端口就可以连接到内网的ECS服务器上了。
806469-20180309144833497-2133306254.png

f)这个方法同样适用于windows系统(为了不与客户PC终端的端口冲突,这里使用了33389端口作为本地监听端口)
806469-20180309144838475-557399033.png
806469-20180309144846144-1477583669.png

g)内网的RDS也没有问题
806469-20180309144851354-394682032.png
806469-20180309144857149-1891251514.png

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

806469-20180309144904293-1332984068.png

在SecureCRT中这个功能叫做“端口转发”,进行类似的配置后也可以实现同样的功能。
806469-20180309144914484-1684331161.png

参考

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:81
帖子:4969
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP