Как настроить аутентификацию с открытым ключом для SSH?
Как настроить аутентификацию с открытым ключом?
Ответ 1
Если у вас установлен SSH, вы сможете запустить.
ssh-keygen
Затем выполните шаги, у вас будет два файла: id_rsa и id_rsa.pub (первый - это ваш закрытый ключ, второй - ваш открытый ключ - тот, который вы копируете на удаленные компьютеры)
Затем подключитесь к удаленному компьютеру, к которому вы хотите войти, в файл ~/.ssh/authorized_keys добавьте содержимое вашего файла id_rsa.pub.
Oh и chmod 600 все файлы id_rsa* (как локальные, так и удаленные), поэтому другие пользователи не могут их прочитать:
chmod 600 ~/.ssh/id_rsa*
Аналогично, убедитесь, что удаленный файл ~/.ssh/authorized_keys имеет значение chmod 600:
chmod 600 ~/.ssh/authorized_keys
Затем, когда вы выполняете ssh remote.machine, он должен запросить у вас пароль ключа, а не удаленный компьютер.
Чтобы сделать его более удобным, вы можете использовать ssh-agent для хранения расшифрованных ключей в памяти - это означает, что вам не нужно вводить пароль на клавиатуру каждый раз. Чтобы запустить агент, вы запускаете (включая цитаты с обратным тиком, которые определяют результат команды ssh-agent)
`ssh-agent`
В некоторых дистрибутивах ssh-agent запускается автоматически. Если вы запустите echo $SSH_AUTH_SOCK, и он показывает путь (возможно, в /tmp/ ), который он уже настроил, поэтому вы можете пропустить предыдущую команду.
Затем, чтобы добавить свой ключ, вы делаете
ssh-add ~/.ssh/id_rsa
и введите свою кодовую фразу. Он сохраняется до его удаления (с помощью команды ssh-add -D, которая удаляет все ключи из агента)
Ответ 2
Для окон это является хорошим введением и руководством
Вот некоторые хорошие ssh-агенты для систем, отличных от linux.
- Windows - конкурс
- OS X - SSHKeychain
