Как получить пароль ssh с рабочим ключом ssh
Я всегда вхожу на сервер с помощью ssh-ключа, поэтому я больше не уверен, какой у меня был настоящий пароль. Мне нужно было бы угадать пару раз. Однако на сервере есть fail2ban, и я не хочу вызывать это.
Есть ли способ проверить, какой из моих паролей соответствует ключу ssh, принятому сервером?
Могу ли я проверить свой пароль после входа в систему с помощью ssh-ключа без запуска fail2ban?
Ответы
Нет, нет никакой связи между паролем учетной записи и ключом ssh.
Вы можете войти в учетную запись с помощью ssh с ключом, даже если у нее нет пароля.
Для обновленного вопроса, да, введите:
su YOURUSERNAME
тогда попробуйте, если вы помните свой пароль
Ключ SSH полностью не зависит от пароля. Знание ключа не поможет найти пароль.
Если вы являетесь пользователем root на сервере, вы можете получить хэш пароля. Это возможно, /etc/shadowесли это локальная учетная запись или она может быть получена из сетевой базы данных, такой как LDAP. В Linux попробуйте sudo getent shadow $USER. Получив хеш-пароль, вы можете попробовать его в автономном режиме. Если у вас есть только несколько кандидатов на пароли, вы можете использовать этот однострочник, где второе разделенное поле в :$6$stuff$more.stuff:/etc/shadow
perl -l -pe '$_ = crypt $_, q:$6$stuff$more.stuff:'
Если вам нужен более мощный перебор, поищите программное обеспечение для управляемой атаки паролей. Я недостаточно знаком, чтобы давать рекомендации.
Конечно, если вы являетесь пользователем root на сервере, вы также можете изменить пароль.