Я могу подключиться к серверу с root
пользователем через ssh, но не могу войти с новым пользователем, которого я создал с именем server
. Что я могу сделать, так это войти в root
, а затем выполнить su server
команду.
В чем разница между этими двумя вариантами? Почему один вариант работает, а другой нет?
Вот ошибка, которую я получаю при попытке входа на сервер:
Отключено: поддерживаемая аутентификация недоступна. (сервер отправил: открытый ключ)
Я добавил AllowUsers server
строку, /etc/ssh/sshd_config
но она все равно не работает.
решение1
Сервер ожидает ключ SSH для этого пользователя, но его не существует.
Когда вы входите в систему как пользователь root, вы, скорее всего, вводите имя пользователя и пароль с клавиатуры, для чего не требуется закрытый ключ на сервере.
Однако для вашего нового пользователя, похоже, вы настроили Putty на вход только с использованием ключа/сертификата SSH, но не создали соответствующий закрытый ключ в домашнем каталоге пользователя «server».
Эти ссылки должны помочь вам разобраться:
https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys--2
http://www.tecmint.com/ssh-passwordless-login-using-ssh-keygen-in-5-easy-steps/
Убедитесь, что вы также правильно установили имя пользователя auto в
"подключение->данные"
в настройках putty для вашего сеанса.
Также имейте в виду, что если вы создаете сертификат в Windows с помощью инструментов Putty, вам необходимо преобразовать сертификат, прежде чем вы сможете использовать его в Linux. Это также верно и в обратном направлении: если вы создаете сертификат в Linux, а затем копируете его в Windows для использования в Putty, вам необходимо преобразовать его другим способом.
По этой ссылке объясняется процесс их конвертации: