AWS EC2 не может подключиться к SSH с помощью пары ключей - PullRequest
0 голосов
/ 11 сентября 2018

У меня возникли некоторые проблемы с использованием SSH для запуска моего экземпляра AWS EC2. В соответствии с инструкциями, мне нужно создать пару ключей, которая загружает файл закрытого ключа .pem, который я назвал QARTH.pem. Из каталога, в котором был сохранен этот файл, я должен выполнить команду:

ssh -i "QARTH.pem" ubuntu@ec2-XX-XX-XX-XXX.us-west-2.compute.amazon.com

Однако я получаю сообщение об ошибке:

Permission denied (publickey).

Я использую автоматически сгенерированную группу безопасности launch-wizard, которая разрешает входящий доступ через порт 22 ко всем IP-адресам.

Я также использовал пример процедуры для преобразования файла .pem в файл .ppk закрытого ключа PuTTy и использовал клиент PuTTy. Я получаю ту же ошибку.

Это кажется довольно простой процедурой, поэтому я не знаю, что могу делать неправильно. Если у вас есть идеи, я бы хотел их услышать. Тем не менее, я не силен в сетевой безопасности, поэтому, пожалуйста, сделайте ответы дружелюбными.

Ответы [ 3 ]

0 голосов
/ 11 сентября 2018

Чтобы убедиться, что при подключении нет ошибок:

Перейдите на EC2-> Instances

Выберите свой экземпляр

И нажмите Connect

Вы должны получить инструкции из Connect Popup.

Также, если вы подключаетесь из корпоративной сети, попробуйте подключиться из другой сети.Это может быть проблема с брандмауэром.

Последнее, но не менее важное: убедитесь, что вы используете ssh внутри пути .ssh или предоставили правильный путь pem

0 голосов
/ 13 августа 2019

TL; DR Попробуйте использовать сгенерированную вручную пару ключей SSH через Консоль AWS

Что ж, коллеги, у меня точно есть НЕТ ИДЕИ, ПОЧЕМУ (без понятия ДА), но когда я генерирую ключи с помощью команды CLI, подключение по SSH НЕ РАБОТАЕТ :

aws --region us-east-1 ec2 create-key-pair --key-name "KeyPair"

НО, когда я создаю pai ключа SSH вручную с помощью Консоли AWS , он прекрасно работает:

1. Go to AWS Console
2. EC2 :: Network & Security (in left menu) :: Key Pairs :: Create Key Pair
3. <As soon as I am specifying the name of a key pair Amazon downloads the keys into a default download directory>
4. chmod 400 KeyPair.pem
5. ssh -i ./SSHKeys.pem ec2-user@ec2-54-162-166-40.compute-1.amazonaws.com
6. ENJOY!

P.S. Я почти уверен, что что-то напутал во время копирования-вставки ответа из CLI ¯ \ _ (ツ) _ / ¯

0 голосов
/ 11 сентября 2018

Вы используете неверную пару ключей (QARTH.pem), неверное имя пользователя, подключаетесь к неверной системе, или QARTH.pem не настроен только для чтения.

ШАГ 1: Добавьте параметры отладки в ssh, чтобы определить, что не так:

ssh -v -i QARTH.pem ubuntu@ec2-XX-XX-XX-XXX.us-west-2.compute.amazon.com

ШАГ 2. Убедитесь, что файл пары ключей доступен только для чтения.

LINUX: Чтобы сделать файл пары ключей доступным только для чтения, выполните эту команду: chmod 400 QARTH.pem, находясь в том же каталоге, что и файл.

WINDOWS: Команды для запуска в системе Windows (как администратор), чтобы сделать пару ключей доступной только для чтения и удовлетворить ssh:

Замените% USERNAME% на ваше имя пользователя.

REM Disable inheritance on QARTH.pem
icacls QARTH.pem /inheritance:d

REM Delete "NT AUTHORITY\Authenticated Users" from having any rights
icacls QARTH.pem /remove "NT AUTHORITY\Authenticated Users"

REM Delete "BUILTIN\Users" from having any rights
icacls QARTH.pem /remove "BUILTIN\Users"

REM Grant Read-Only rights to me
icacls QARTH.pem /GRANT:R "%USERNAME%:(R)"

ШАГ 3: Убедитесь, что вы используете правильное имя пользователя для ECI AMI:

Имена пользователей популярных AMI EC2:

  • Для Amazon Linux 2 или Amazon Linux AMI имя пользователя - ec2-user.
  • Для Centos AMI имя пользователя - centos.
  • Для Debian AMI имя пользователя - admin или root.
  • Для Fedora AMI имя пользователя - ec2-user или fedora.
  • Для RHEL AMI имя пользователя - ec2-user или root.
  • Для SUSE AMI имя пользователя - ec2-user или root.
  • Для Ubuntu AMI имя пользователя - Ubuntu.
  • В противном случае, если ec2-пользователь и root не работают, обратитесь к провайдеру AMI.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...