如何借助堡垒机通过MySQL Workbench连接私有子网中的RDS实例
通过本地MySQL Workbench连接私有子网RDS的方案(基于现有堡垒机+私有EC2架构)
因为你不想让RDS直接与堡垒机连通(符合最小权限架构原则),可以利用现有堡垒机→私有EC2的SSH代理链,建立端口转发实现本地到RDS的访问,流量路径为:本地PC → 堡垒机 → 私有EC2 → RDS,全程RDS仅与私有子网内的EC2交互。
步骤1:修改私有EC2的Putty会话配置
你已经有通过堡垒机连接私有EC2的Putty会话,直接在该会话中添加端口转发规则:
- 打开Putty,加载你连接私有EC2的会话
- 切换到「SSH → 隧道」选项卡
- 添加本地端口转发规则:
- 源端口:输入本地未被占用的端口(例如
33060) - 目标:填写RDS实例的内网IP:3306(私有EC2与RDS同子网,可直接访问内网IP)
- 选择「本地」「自动」,点击「添加」
- 源端口:输入本地未被占用的端口(例如
- 回到「会话」选项卡,保存配置,避免重复设置
步骤2:启动Putty会话并保持连接
启动修改后的私有EC2连接会话,确保成功登录私有EC2。此时本地的33060端口已被转发至RDS的3306端口,流量会自动通过堡垒机和私有EC2跳转。
步骤3:配置MySQL Workbench连接
- 打开MySQL Workbench,点击「+」新建连接
- 连接类型选择「Standard (TCP/IP)」
- 填写连接参数:
- 连接名称:自定义(例如「RDS via Bastion & Private EC2」)
- 主机名:
127.0.0.1(本地转发端口的绑定地址) - 端口:
33060(步骤1中设置的本地源端口) - 用户名:RDS实例的数据库账号
- 密码:点击「Store in Vault...」保存对应密码
- 点击「Test Connection」测试连通性,验证通过后保存连接即可使用
关键注意事项
- 确保私有EC2安全组允许堡垒机的SSH(22端口)访问(你已实现连通,此条件已满足)
- 确保RDS安全组允许私有EC2内网IP的MySQL(3306端口)访问(你已确认连通,此条件已满足)
- 本地PC防火墙需允许MySQL Workbench访问本地
33060端口 - Pageant需加载对应密钥对,确保Putty可免密跳转堡垒机与私有EC2
内容的提问来源于stack exchange,提问作者hitaton
相关产品推荐
相关产品推荐

