4

У меня есть пара ключей RSA, настроенная для аутентификации на моем SSH-сервере. Сервер является сервером Ubuntu, и я пытаюсь войти в систему, используя Putty в Windows. Я загружаю свой закрытый ключ в Pageant (агент аутентификации Putty) и пытаюсь войти в систему. Сервер запрашивает мое имя пользователя, которое я ввожу. Затем я получаю сообщение об ошибке: «Отключено: нет поддерживаемых методов проверки подлинности».

Затем я попытался сесть за сервер и войти в систему, используя свое имя пользователя и пароль. Затем, по-прежнему входя в систему на главном компьютере, я пытаюсь подключиться к серверу SSH с удаленного компьютера, снова используя ключ RSA. В этом случае процесс входа в систему работает.

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

2 ответа2

4

Я видел, как это происходит, когда домашний каталог пользователя не локальный, а в сети при автоматическом монтировании NFS. Если ваш домашний каталог еще не смонтирован, когда sshd отправляется на поиск ваших ~/.ssh/authorized_keys ключей, он не сможет получить к нему доступ вовремя, поэтому аутентификация на основе открытого ключа не удастся.

1

Не могу так комментировать ...

Если вы остановите службу sshd (service sshd stop) на своем сервере, вы можете запустить ее в интерактивном режиме, чтобы получить отладочную информацию (sudo sshd -D). Это может быть связано с защитой файлов в ~/.ssh и ~/.ssh/authorized_keys .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .