Сервер Ubuntu EC2 не принимает ключ после обновления OpenSSH

Я только что обновил OpenSSH на экземпляре EC2 Ubuntu.

sshd -V теперь выдает: OpenSSH_6.6p1

ранее показывал: OpenSSH_5.9p1 Debian-5ubuntu1.3

Однако я больше не могу войти в систему с помощью файла.pem из Amazon.

Он запрашивает пароль, и auth.log показывает мне следующее:

Sep  9 16:27:54 ip------0 sshd[31498]: rexec line 89: Unsupported option UsePAM
Sep  9 16:27:55 ip------0 sshd[31498]: User ubuntu not allowed because account is locked
Sep  9 16:27:55 ip------0 sshd[31498]: input_userauth_request: invalid user ubuntu [preauth]

2 ответа

Решение

Это довольно ясно:

User ubuntu not allowed because account is locked

SSH не позволяет войти в заблокированную учетную запись, будь то с ключами или паролем. Разблокировать пользователя 'Ubuntu':

passwd -u ubuntu

Если вы никогда ранее не устанавливали пароль для пользователя и не собираетесь его использовать, все равно не оставляйте его пустым. Установите случайный пароль и забудьте его:

passwd    ubuntu

Попробуйте посмотреть файл /etc/shadow. Я уверен, что вы увидите ! в столбце зашифрованного пароля (2-й). Я смог решить эту проблему, вынув ! из столбца пароля. Кстати, логи авторизации жалуются на заблокированную учетную запись. (а также ! обычно используется для блокировки учетной записи пользователя)

/ и т.д. / тень

ubuntu:!$6$HmV2ibLf$s25xgRnrD6pbOVAcpzl45PPYhWKlyy.OauX2xadGrWWANGDZ66WpeglPryd14kX.IbKiKvFB2OA/CZY6ZG4U0/:15859:0:99999:7:::

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

Вы можете выполнить все описанные выше шаги, отсоединив корневой том текущего экземпляра и подключив его к другому тестовому экземпляру. Смонтируйте том как дополнительный диск, а затем отредактируйте файл MOUNT/etc/shadow.

Другие вопросы по тегам