AWS EC2 SSH隧道堡垒服务器

时间:2020-02-20 08:08:59

标签: mongodb amazon-web-services ssh ssh-tunnel

试图了解其工作原理,文档不是很清楚。使用AWS quickstart-mongo,我使用堡垒服务器为3个Mongo节点创建了VPN。我可以通过SSH和密钥登录到堡垒服务器。然后,我可以将密钥复制到堡垒服务器,然后将SSH复制到主副本节点。该节点正在运行mongo,并通过rs.status()显示所有3个节点都在正确运行。

登录到堡垒服务器后,我尝试执行<body class="page cut-corner"> ... </body> ,但似乎挂起了。

本地计算机->堡垒服务器->副本节点1/2/3

我想我知道我需要以某种方式连接到堡垒服务器,然后将ssh转发设置为primary-mongo-node-ip:27017,sec1-mongo-node-ip:27017,sec2-mongo-node-ip :27017,这样我的mongo URI连接看起来像这样:

SSH进入bastion-dns mongodb:// user:pass @ localhost:1000,localhost:1001,localhost:1002 /数据库

在没有SSH的情况下无法事件连接到堡垒服务器上的服务器时,该怎么办?

1 个答案:

答案 0 :(得分:0)

假设Mongo实例允许来自堡垒主机(在安全组中)的必需端口的通信,则可以使用SSH隧道机制从本地主机访问群集/实例:

ssh -N -L <local_port_x>:<mongoDB instance ip>:<mongo_port_y> <ssh_username>@<bastion_host_ip> -i <ssh_key_path>

Local_Port_X:您要访问远程Mongo实例的本地计算机上的端口

MongoDB Instance IP:托管MongoDB的ec2实例的IP地址

Mongo_Port_Y:MongoDB正在侦听的端口(您的问题似乎是27017-请确保您可以从此端口上的堡垒主机内与Mongo Instance通讯)

Bastion_Host_Ip:堡垒主机上的IP地址,应该可以从本地计算机直接访问

相关问题