无名商城论坛

搜索
查看: 285|回复: 0

[其他技术] 【WD】SSH穿透ECS访问内网RDS数据库

[复制链接]

1万

主题

1万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
32464
发表于 2022-5-8 15:13:24 | 显示全部楼层 |阅读模式
一、前言
处于安全考虑,RDS一般只会允许指定的IP进行访问,而我们开发环境的IP往往是动态的,每次IP变动都需要去修改RDS的白名单,为我们的工作带来很大的不便。

那么如何去解决这个问题?

假如我们有一台ESC服务器,ESC服务器跟RDS在同一个内网之中,只需要将ECS内网IP添加到RDS白名单,然后我们通过SSH进行端口转发,就可以通过内网形式访问数据库了。这样做更安全,由于IP是固定的,效率也更高。但是访问速度就取决于当前ESC的带宽了,不过这对于我们开发来说往往是足够的了。

二、SSH穿透配置
在这里我推荐使用MobaXterm这个SSH连接工具,当然其他的各种SSH工具都可以,之所以推荐MobaXterm,是因为免费、启动速度快、界面好看、还集成了文件管理器。

关于SSH穿透RDS配置,我就直接上图。

打开MobaXterm在菜单找到Tunneling,用鼠标使劲戳它。

在弹出界面的左下角点 New SSH tunnel,然后进行如下配置:

第1步,就是你内外的RDS地址,第2步就是RDS端口。

第3、4、5步就是你ESC的公网IP、用户、端口,这台ECS的内网IP需要提前添加到RDS的白名单中。

第6步就是在你本地开放一个端口,用来映射第2步指定的端口。到时你在代码里通过127.0.0.1:3306访问的实际就是第1、2步所对应的地址和端口。

配置完成后记得点Save按钮进行保存,保存完后会进入列表界面,但对应的启动按钮就可以了。现在就可以在代码里愉快的访问RDS了。

SSH穿透不止于RDS穿透这个功能,其他服务器、端口也可以按此配置进行穿透。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表