Соединение SSH просит пароль, хотя ключ принят

Или попробуйте следующее.<deny users="*,?"/>

12
задан 21 July 2013 в 05:51
7 ответов

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

Вы проверили журнал аутентификации на сервере, к которому вы подключаетесь? (например, /var/log/auth.log). Если ваша установка на удаленном конце неверна, например неправильные разрешения, то ssh -v (или -vv или -vvv) не сообщит вам об этом, но это будет зарегистрировано sshd.

7
ответ дан 2 December 2019 в 21:32

Your private key was most certainly not accepted, it was only attempted. There are a number of ways SSH key based authentication can fail, and the logging is not really that great so debugging this particular problem is one of my personal pet peeves. I've found that the error is usually a result of one of the following situations.

  • Your ~/.ssh/authorized_keys file is too open. For your own protection sshd attempts to protect you from yourself. If the permissions on your authorized keys file then it will fail the authentication. Run chmod -R go-rwx ~/.ssh.
  • Your public key in ~/.ssh/authorized_keys is malformed. This could be a result of any number of problems, but the most common is a copy paste issue. Some terminals, when copy/pasting across screens, will interpret a line wrap as a new line. Each entry in the authorized_keys file must be a single line. You can check this by changing the size of your terminal emulator and seeing if there's a break, comparing the output of wc -l ~/.ssh/authorized_keys against the number of keys that should be in there, or whatever works best for you. Just make sure each key is one line and you should be fine.
11
ответ дан 2 December 2019 в 21:32

Если у вас есть доступ к серверу (напрямую или через другой логин), проверьте логи сервера (скажем) / var / log / sshd или / var / log / secure в зависимости от вашей системы

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

2
ответ дан 2 December 2019 в 21:32

В моем случае файл /var/log/authlog показал:

[ID 800047 auth.info] Authentication refused: bad ownership or modes for directory 

Я проверил правильность владения/разрешений в .ssh, но $HOME имел 777 разрешений. Установка 755 разрешений на $HOME позволила sftp работать. Еще раз спасибо.

5
ответ дан 2 December 2019 в 21:32

Попробуйте

/sbin/restorecon -r /root/.ssh

Возможная проблема с настройкой разрешений.

0
ответ дан 2 December 2019 в 21:32

Разрешения ~/. ssh/authorized_keys на удаленном компьютере важен (600 для моих систем RHEL и Solaris)

Разрешения вашего домашнего каталога на удаленном компьютере важны (700 на моих системах)

В конце концов, запуск sshd на удаленной машине в режиме отладки на другом порту может быть полезен:

sudo /usr/sbin/sshd -p 5555 -dd

5555 примерный порт, его можно изменить. Дополнительную информацию по этому поводу вы можете посмотреть: http://ubuntuforums.org/archive/index.php/t-2219973.html

1
ответ дан 2 December 2019 в 21:32

Я обнаружил, что есть проблема, если я использую службу sshd. Чтобы избежать этой проблемы, остановите службу sshd с помощью sshd-стопа , а затем запустите демон sshd из командной строки с помощью sudo /usr/sbin/sshd.

.
0
ответ дан 2 December 2019 в 21:32

Теги

Похожие вопросы