AWS EC2 S SH Туннельный бастионный сервер - PullRequest
0 голосов
/ 20 февраля 2020

Пытаясь понять, как это работает, документация не очень понятна. Используя AWS quickstart-mon go, я делаю VPN для 3 Mon go узлов с бастионным сервером. Я могу войти в свой бастионный сервер через S SH и мой ключ. Затем я могу скопировать ключ на бастионный сервер и S SH в основной узел реплики. Этот узел работает mon go и через rs.status () показывает, что все 3 узла работают правильно.

После входа на бастионный сервер я пытаюсь сделать curl primary-mongo-node-ip:27017, и кажется, что он зависает.

Локальный компьютер -> Bastion Server -> Узел реплики 1/2/3

Мне кажется, я понимаю, что мне нужно каким-то образом подключиться к серверу Bastion, а затем настроить sh для переадресации на основной -mon go -node-ip: 27017, sec1-mon go -node-ip: 27017, sec2-mon go -node-ip: 27017, так что мое URI-соединение mon go выглядит следующим образом :

S SH в bastion-dns mongodb: // user:pass@localhost: 1000, localhost: 1001, localhost: 1002 / database

Как мне это сделать, когда я не могу подключиться к событию серверу на бастионных серверах без S SH?

1 Ответ

0 голосов
/ 21 февраля 2020

Предполагая, что экземпляры Mon go разрешают трафик c от Bastion Host (в группах безопасности) для требуемых портов, вы можете использовать механизм туннелирования S SH для доступа к кластеру / экземпляру с локального хоста:

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

Local_Port_X: порт на локальном компьютере, к которому вы хотите получить доступ к удаленному экземпляру Mon go

MongoDB Instance IP: IP-адрес для экземпляра ec2, на котором размещается MongoDB

Mongo_Port_Y: порт, который прослушивает MongoDB (кажется, 27017 из вашего вопроса - пожалуйста, убедитесь, что вы можете общаться с Mon go Экземпляр изнутри хоста Bastion на этом порту)

Bastion_Host_Ip: IP-адрес на бастионном хосте, который должен быть напрямую доступен с вашего локального компьютера

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...