В проверке реестра:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
(DWORD) LMcompatibility, чтобы быть 1 (перезагрузка после модификации).
---Update1:
Может это эти ссылки быть полезным?
~ / .ssh
должен быть chmod 700
и ~ / .ssh / authorized_keys
должен быть chmod 600
. Оба должны принадлежать вам.
SSH будет автоматически возвращаться к входу по паролю, если эти файлы / каталоги более разрешены, хотя по памяти он регистрирует что-то о «плохом режиме».
Также проверьте, что ~ / .ssh / authorized_keys
на самом деле что-то содержит. У меня такое ощущение, что команда могла создать пустой файл. Я думаю, вам нужен следующий:
cat ~/.ssh/id_rsa.pub | ssh root@remotehost.com -p 1234 "cat - > ~/.ssh/authorized_keys"
Как заметил Лададада, у вас есть:
cat ~ / .ssh / id_rsa | ssh root@remotehost.com -p 1234 "кошка> ~ / .ssh / authorized_keys "
Это копирование вашей пары закрытого / открытого ключей в файл authorized_keys. Ваш файл authorized_keys на сервере не должен иметь закрытого ключа. Я бы предложил следующее:
cat ~ / .ssh / id_rsa.pub | ssh root@remotehost.com -p 1234 " кошка -> ~ / .ssh / authorized_keys "
Примечание: это должно записать ваш открытый ключ в файл authorized_keys. Дважды проверьте, чтобы ваша локальная копия id_rsa.pub соответствовала ключу в файле authorized_keys.
Содержимое вашего Ключ id_rsa.pub будет выглядеть примерно так (вырезана часть для краткости):
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLrS9t0lEdxk52v8Jt / EJMNm9 :::: обрезано ::::: wu1WzNCvrkUDnqS / aQZJ4rR4J + GoMLxP2NT you @ somehostname
Этот ключ, id_rsa.pub, должен соответствовать ключу ssh в файле known_hosts.
отредактировано: исправлена ошибка в имени файла. Я поддержал ответ Ладададады, потому что он уловил проблему, но я не думаю, что она была подхвачена OP
Судя по выводам, я думаю, вам нужно проверить формат вашего ключа. Если вы не уверены, посетите эти сайты:
http://the.earth.li/~sgtatham/putty/0.60/htmldoc/Chapter8.html
TL; DR
На стороне клиента:
/ etc / ssh / ssh_config
; PreferredAuthentication
; пароль
идет после publickey
а не наоборот В моем случае пароль
был написан до publickey
, поэтому ssh запрашивал пароль, даже если я скопировал свой pub_key на сервер.
Эту проблему легко решить, используя подробное описание:
ssh -v compute @ compute1
...
...
debug1: аутентификация, которая может продолжаться: открытый ключ, пароль
debug1: Следующий метод аутентификации: пароль
Как видите пароль
выбран перед попыткой использования открытого ключа.
Отредактируйте / etc / ssh / ssh_config
, переместив пароль
после publickey
PreferredAuthentication интерактивная клавиатура, открытый ключ, пароль
, на основе хоста, gssapi-with-mi
Теперь вы можете войти в систему без запроса pwd.