Как устранить ошибку SSH Permission Denied (publickey)

How Resolve Ssh Permission Denied Error



Ключи SSH - отличный метод аутентификации сеансов SSH без необходимости вводить пароль при каждом входе в систему. Однако, как и все технологии, ключи SSH не идеальны, и вы можете столкнуться с ошибками при их использовании. Одной из наиболее частых ошибок при работе с ключами SSH является ошибка разрешения (публичного ключа).

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







Ошибка 1: авторизованные ключи и разрешения для каталога

Одной из причин этой ошибки могут быть разрешения и права собственности, настроенные для каталога .ssh и файла authorized_keys.



Чтобы решить эту проблему, установите права доступа к каталогу .ssh равным 700, а разрешения authorized_keys равным 6oo.



судо chmod 700~/.sshсудо chmod 600авторизованные_ключи

Ошибка 2: неверные конфигурации SSH

Другой частой причиной ошибки publickey является неправильная конфигурация в файле sshd_config. Чтобы решить эту проблему, отредактируйте файл / etc / ssh / sshd_config и измените следующие записи.

#PermitRootLogin запретить-пароль
#PasswordAuthentication да

Вышеуказанные записи должны быть такими, как показано ниже:

PermitRootLoginда

ПарольАутентификацияда

Сохраните конфигурацию и перезапустите службу:

судоsystemctl перезапустить sshd.service

Ошибка 3: Отсутствуют ключи

Другой возможной причиной ошибки отказа в разрешении открытого ключа может быть отсутствие ключей на вашем локальном компьютере. Если у вас есть ключи, добавленные в файл authorized_keys сервера, но отсутствуют соответствующие закрытые ключи, это может вызвать ошибку.

Чтобы решить эту проблему, отредактируйте файл конфигурации ssh, отключите аутентификацию с открытым ключом и включите вход по паролю следующим образом:

PubkeyАутентификацияда

#PasswordAuthentication да

Измените на следующие записи:

#PubkeyAuthentication да
ПарольАутентификацияда

После редактирования конфигурации сохраните файл и перезапустите службу SSH:

судоsystemctl перезапустить sshd.service

Если вы уверены, что ваши ключи были скомпрометированы, вы можете удалить их из authorized_keys или добавить определенный ключ в список отозванных в SSH.

Заключение

В этом кратком руководстве показано, как решать различные проблемы, которые могут вызвать ошибку разрешения (публичный ключ) в SSH. Если проблема не исчезнет, ​​рассмотрите другие методы устранения неполадок.