Я хочу настроить SSH для использования его без потребности записи пароля. Я использую Ubuntu 18.04 LTS в Windows 10. Мне нужен он для выполнения Hadoop 3.1.1 (https://hadoop.apache.org/docs/r3.1.1/hadoop-project-dist/hadoop-common/SingleCluster.html#Standalone_Operation) использование псевдораспределенного режима.
Я попробовал много различных решений, но без любого результата. Я получил это в первый раз, когда я использовал команду ssh localhost, я не должен писать пароль, но когда я пишу снова, что я должен записать пароль.
Я объясняю различные шаги, которые я использовал:
В этой точке все право, но, когда я выполняюсь снова ssh localhost, затем, я должен записать пароль. Эти шаги хорошо работали в Ubuntu AWS 3 года назад.
Я попробовал в точке 3 этих других метода: https://www.ssh.com/ssh/copy-id
Все возможные решения, которые я нашел, сказали то же, что я попробовал в точке 3, или я думаю это. Я попытался изменить полномочия authorized_keys и .ssh, когда я нашел в других решениях также, но без успеха.
Необходимо смотреть на этот ответ, который описывает конфигурирование ssh
для Вашего пользователя (редактирование ~/.ssh/config
) и другие детали.
Шаги:
ssh
ключ.~/.ssh/config
файл..pub
) ключ к удаленному пользователю ~/.ssh/authorized_keys
ssh-copy-id
команда.ssh
очень следит за полномочиями ~/.ssh/
и файлы, найденные в. ssh-copy-id
дескрипторы все для Вас.ssh host
ssh host -vvv # Verbose output for troubleshooting
Вы пытаетесь использовать ssh-agent
потому что Ваши ключи защищены паролем? Я рекомендовал бы продолжить работать, вручную соединившись без ssh-agent
и получение той работы. После того, как у Вас будет своя ключевая работа, можно работать над решением любого из ssh-agent
- конкретные вопросы.
Диагностировать, убеждаться использовать ssh
в подробном режиме, и также контролируют (tail -f
) удаленный сервер /var/log/auth.log
файл. В более новых системах Вам, вероятно, придется использовать journalctl
(journalctl -u sshd | tail -f
).
После того как Вы получили ключевую работу в целом, можно изучить ssh-agent
документация, такая как этот набор инструкций по установке. Обычно шаги следующие:
ssh-agent
eval ssh-agent
ssh-agent
: ssh-add ~/.ssh/private_key
Обязательно изучите другой ssh-agent
параметры конфигурации, такие как продолжительность Ваши ключи останутся разблокированными.
Излагая его кратко немного, Вашей проблемой является наиболее вероятный из них:
ssh-agent
запуск, и добавление Вашего id_rsa
ключ (в прошлом), но теперь, когда Вы генерировали новый ключ, тот ключ, должен будет также быть ssh-add
'd. ssh-agent
на самом деле работает на Вашей системе, если у Вас есть проблемы после добавления ключа.ps aux | ssh-agent
$HOME
каталог для корректного пользователя.ssh-agent
просто настраивается для блокировки ключа в более короткий период времени, чем Вы протестировали.~/.ssh/authorized_keys
файл (>>
), Вы первоначально создали файл, и это будет с неправильными полномочиями. ~/.ssh/
каталог и использование ssh-copy-id
правильно включать Вашего пользователя на удаленном хосте.auth.log
и укажите, что полномочия файла являются неправильными.ssh-copy-id
для создания каталога и файлов отправьте полномочия ~/.ssh
и Ваши сгенерированные файлы ключей.ssh
в удаленный хост Вы проигрываете ssh-agent
, если Вы не настроили ssh-agent
, и ssh
через ~/.ssh/config
кому: ForwardAgent yes
. Если Вы хотите передать ssh-agent
, необходимо будет настроить его, чтобы признать, что, и понимают последствия безопасности с тем решением. Это должно также быть отмечено это ForwardAgent
может быть разработан для работы различных машин, и не может быть возможно получить передачу, работающую локально из-за сложностей с ssh-agent
уже выполнение.