Потрібно ssh з одного сервера Amazon EC2 на інший


12

В основному мені потрібно мати можливість підключення від одного екземпляра EC2 до іншого за допомогою SSH. Я запускаю команду ssh -i path-to-pem-file ec2-user@dns-address-of-ec2-instance, і вона закінчується.

Я встановив свою групу безпеки, щоб дозволити вхід SSH з публічної IP-адреси мого другого екземпляра EC2, але він все ще не працює. Я знаю, що все повинно бути нормально, оскільки коли я встановив вхідний трафік SSH на "дозволяти з будь-якого місця", я можу з'єднатися без проблем. Також я можу підключитися до екземпляра EC2 з домашньої машини (я додав свою IP-адресу до групи безпеки) без проблем.

Очевидно, я не можу залишити вхідний трафік відкритим, щоб "дозволити з будь-якого місця", але я не можу підключитися, коли обмежую його лише IP-адресою другого екземпляра EC2. Можливо, загальнодоступна IP-адреса - це не те, що я повинен вносити до групи безпеки?


Я не можу, здається, також це пінг; це просто раз. Ось результатssh -vv -i path-to-pem-file ec2-user@dns-address-of-ec2-instance

OpenSSH_6.2p2, OpenSSL 1.0.1h-fips 5 Jun 2014
debug1: Reading configuration data /home/ec2-user/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 50: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to dns-address [IP Address different from public ip] port 22.
debug1: connect to address [IP Address different from public ip] port 22: Connection timed out
ssh: connect to host dns-address port 22: Connection timed out

Відповіді:


13

Екземпляри EC2 використовують внутрішню 10.X.X.Xадресу (або іншу адресу, якщо ви використовуєте VPC), а трафік на їх "загальнодоступну" IP-адресу просто перенаправляється на внутрішню IP-адресу. Екземпляри EC2 також використовують інший сервер DNS, який не є загальнодоступним. Коли ви вирішите ім'я хоста іншого екземпляра EC2, оскільки ви знаходитесь у мережі AWS , він надає вам адресу екземпляра 10.X.X.Xзамість загальнодоступної IP-адреси. Це не дозволяє трафіку виходити в Інтернет та назад, що робить його швидшим.

Навіть якщо ви можете додати білий список за IP-адресою, це не є хорошою ідеєю, оскільки в класичному режимі EC2 можна змінити і внутрішню, і загальнодоступну адресу. Правильне рішення - це білий список групи безпеки. Ви в основному додаєте правило до цільової групи безпеки, кажучи, щоб дозволити порт 22 з певної групи безпеки походження.

Якщо обидва екземпляри знаходяться в одному обліковому записі, ви просто дозволите sg-1234abcd(де sg-1234abcdгрупа безпеки, до якої належить екземпляр origin). Якщо вони знаходяться на різних рахунках, включіть номер рахунку, наприклад 111122223333/sg-1234abcd. Додаткову інформацію
див. У документації .


Ідеально, саме це я шукав! Працює без сучка!
Помпей

Говорячи про групи безпеки різних облікових записів, вам потрібно зробити VPC пирінгу, щоб ви могли посилатися на них. Дивіться тут: docs.aws.amazon.com/AmazonVPC/latest/PeeringGuide/…
Борис Страндєв

На завершення я хотів додати, що AWS стягує плату за вхідний трафік до VPC з Інтернету, але трафік всередині VPC є безкоштовним, тому проходження через Інтернет не тільки швидше, але й дешевше.
Blueriver
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.