Назад | Перейти на главную страницу

Утерян пароль на экземпляре EC2 SELinux

Как сказано в названии, у меня есть экземпляр SELinux на EC2, который я некоторое время не использовал. Я не смог получить к нему доступ через ssh с тех пор, как запустил его резервную копию. Раньше я получал доступ к нему с этого компьютера, и группа безопасности на AWS настроена так, чтобы разрешить доступ по ssh.

Я вообще не могу войти в систему, поэтому все мои исправления были ограничены тем, что я могу сделать, установив корневой том в новый экземпляр EC2 и сделав то, что я могу таким образом.

Вот что я пробовал до сих пор:

1) Пытался скопировать мой ключ ssh в файл authorized_keys пользователя ssh. Запрос пароля все еще отображается, когда я пытаюсь подключиться к SSH.

2) Проверено, что sshd_config имеет пароль для аутентификации нет

3) Использовал chroot для установки смонтированного тома как root, а затем сбросил пароль пользователя, под которым я пытаюсь войти. Здесь нет ошибки, но новый пароль не работает при запросе по ssh.

4) Для используемого мной ключа ssh нет пароля, так что меня спрашивают не об этом.

5) Снова используя chroot, я попытался использовать команду «restorecon» в папке .ssh для данного пользователя.

6) Убедитесь, что для каталога .ssh пользователя установлены разрешения 700, а для файла .ssh / authorized_keys они установлены на 600

Пока все еще без радости. Что еще можно попробовать?

Одна ошибка с sshd не позволит кому-либо войти через authorized_keys, если и authorized_keys, и каталог .ssh не имеют правильных разрешений:

chmod 700 /home/username/.ssh
chmod 600 /home/username/.ssh/authorized_keys

(Замените имя пользователя именем пользователя SSH)

Кроме того, ошибки входа в систему ssh регистрируются в / var / log / secure (возможно, в другом файле, если вы используете что-то помимо клона RedHat), поэтому поиск в файле ошибок входа в систему ssh поможет устранить неполадки и решить эту проблему.

Оказывается, атрибуты SELinux были плохими. Мне пришлось подключить диск к другому экземпляру, изменить enforcing = 0 в /etc/selinux/config а затем перемонтировать и загрузить без SELinux, затем мне пришлось перемаркировать всю файловую систему (по крайней мере, я решил сделать это после перемаркировки группы вручную и поиска еще большего количества), выполнив touch /.autorelabel а потом еще одна перезагрузка.