Amazon web services 在端口转发不工作的情况下通过堡垒主机访问RDS

Amazon web services 在端口转发不工作的情况下通过堡垒主机访问RDS,amazon-web-services,portforwarding,Amazon Web Services,Portforwarding,我正在尝试使用以下命令,通过公用子网中的堡垒主机建立一个端口转发到专用子网中的RDS: ssh -A -NL 3007:mydb3.co2qgzotzkku.eu-west-1.rds.amazonaws.com:3306 ubuntu@ec2-562243-250-177.eu-west-1.compute.amazonaws.com 但无法连接到rds实例 Bastion主机的安全组只允许从my IP在端口22上使用SSH RDS的安全组允许来自bastion hosts安全组的流量和

我正在尝试使用以下命令,通过公用子网中的堡垒主机建立一个端口转发到专用子网中的RDS:

ssh -A  -NL 3007:mydb3.co2qgzotzkku.eu-west-1.rds.amazonaws.com:3306 ubuntu@ec2-562243-250-177.eu-west-1.compute.amazonaws.com
但无法连接到rds实例

Bastion主机的安全组只允许从my IP在端口22上使用SSH

RDS的安全组允许来自bastion hosts安全组的流量和来自my iP的SSH流量

此外,子网的ACL对TCP的所有流量开放

有人知道隧道运行缺少什么吗


谢谢

我想你错过了端口
3306
3307
。在两个安全组中都允许该端口,它将工作

正如您所说,您正在通过密钥对访问堡垒,您的新命令必须是:

ssh-N-l3007:mydb3.co2qgzotzkku.eu-west-1.rds.amazonaws.com:3306ubuntu@ec2-562243-250-177.eu-west-1.compute.amazonaws.com-i/path/to/key.pem

我建议从命令中删除
A
,因为它可以转发身份验证代理连接。这也可以在配置文件中按主机指定


应谨慎地启用代理转发。能够绕过远程主机上的文件权限(用于代理的UNIX域套接字)的用户可以通过转发连接访问本地代理。攻击者无法从代理获取密钥材料,但他们可以对密钥执行操作,使他们能够使用加载到代理中的标识进行身份验证。

实际上,来自堡垒主机的所有流量都允许进入包含它的RDS SG;但是我在两个安全组中都添加了端口3306和3307,比如:RDS SG->inbound-3306/3307 from SG of bastion host bastion host SG->inbound-3306/3307 from my IP仍未工作…从bastion host运行此命令:
telnet mydb3.co2qgzotzkku.eu-west-1.RDS.amazonaws.com 3306
。另外,你能告诉我你在哪里运行这个命令吗?该IP是否添加到端口22的安全组中,您是否使用密钥访问Bastion服务器?这是我通过telnet连接时得到的:`ubuntu@ip-172-16-47-75:~$telnet mydb3.co2qgzotzkku.eu-west-1.rds.amazonaws.com 3306正在尝试172.16.67.158…已连接到mydb3.co2qgzotzkku.eu-west-1.rds.amazonaws.com。转义字符为“^]”5.5.5-10.2.12-MariaDB-logLgL%q,%q/���5X?r@&>E}iw;mysql\本地\密码连接被外部主机关闭ubuntu@ip-172-16-47-75:~$