Я создал ключ RSA, но SSH продолжает спрашивать пароль
На моем Mac я создал ключ RSA с ssh-keygen -t rsa и сохранил как .ssh/authorized_keys на целевом сервере (Ubuntu).
Я положил это в сервер /etc/ssh/sshd_config:
PubkeyAuthentication yes
RSAAuthentication yes
и перезапустил SSH. Тем не менее, он игнорирует ключ. В чем дело?
3 ответа
Ваш ключ должен идти к .ssh/id_rsa на Mac, и id_rsa.pub от Mac должен быть добавлен к .ssh/authorized_keys файл на сервере.
Вы, вероятно, также должны chmod -R go-wr ~/.ssh на сервере.
В руководстве OpenSSH объясняется, как решить эту проблему.
Скорее всего, ваш
/home/<user>или же~/.ssh/authorized_keysразрешения слишком открыты по стандартам OpenSSH. Вы можете избавиться от этой проблемы, выполнив следующие команды:chmod go-w ~/ chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys
Вы хотите подключиться к серверу Ubuntu без ввода пароля?
Когда вы генерируете новую пару ключей rsa на своем Mac, вы получаете закрытый ключ (id_rsa) и открытый ключ (id_rsa.pub). Вы найдете их в ~/.ssh/ по умолчанию.
Войдите в свой сервер Ubuntu и вставьте содержимое id_rsa.pub в ~/.ssh/authorized_keys, После этого вы сможете подключиться без пароля. В стандартной системе Ubuntu вам не нужно трогать sshd_config совсем.