У меня есть следующий сценарий: у меня есть один экземпляр EC2 в частной подсети и один экземпляр EC2 в общедоступной подсети. Как я могу подключиться к частному экземпляру подсети EC2 через общедоступный экземпляр подсети EC2, который также называется Bastion host (Jump box) с моего клиентского компьютера с ОС Windows?
Как подключиться к экземпляру EC2, который находится в частной подсети, с моего клиентского компьютера с ОС Windows через хост Bastion?
Ответы (2)
Вам необходимо подключиться к хосту Bastion и использовать это соединение для открытия туннеля от вашего компьютера к целевой машине в частной подсети. Это позволяет вам открыть второе соединение с целевой машиной, используя туннель.
Вот руководство о том, как это сделать с помощью Putty: AWS Setup Bastion Host SSH Tunnel (они также открывают второй туннель к серверу Windows, вы можете игнорировать эту часть).
Самый простой способ - in the bastion(public instance)
, сделать копию .pem
файла, который вы назначили the private instance
при его запуске.
example.pem
Затем вам нужно сделать его доступным для чтения только вам (иначе вы не сможете установить соединение).
chmod 400 example.pem
Наконец, запустите эту команду ниже, чтобы подключиться к частному экземпляру из бастиона. (Используйте private ip
из private instance
после @
в команде ниже)
ssh -i "example.pem" [email protected]
Вот и все!!
В дополнение к этому, имя файла .pem
не обязательно должно совпадать с именем, которое вы присвоили the private instance
. Но содержание, которое является RSA PRIVATE KEY
, должно быть таким же, как то, которое вы назначили the private instance
.