В этой статье мы объясним, как настроить SSH без паролей в операционной системе Linux. Для этого мы будем использовать приложение командной строки Terminal. Чтобы открыть Терминал командной строки, используйте
Мы объяснили процедуру, упомянутую в этой статье, на Ubuntu 20.04 система. Более или менее такая же процедура может выполняться в Debian и предыдущих версиях Ubuntu.
Следуйте инструкциям ниже, чтобы настроить SSH без паролей в вашей системе Linux.
Создать новую пару ключей SSH на локальном компьютере
Первым шагом будет создание нового ключа SSH в вашей локальной системе. Для этого введите в Терминале следующую команду:
$ ssh-keygen -t rsaНажмите Enter, чтобы принять все поля как значения по умолчанию.
Приведенная выше команда создаст пару ключей, i.е., открытый ключ и закрытый ключ. Закрытый ключ хранится в системе, а открытый ключ является общим. Эти ключи хранятся в .папка ssh.
Вы можете просмотреть созданную пару ключей, введя следующую команду:
$ ls -l .ssh
Копировать открытый ключ на удаленную машину
На следующем шаге скопируйте открытый ключ в удаленную систему, к которой вы хотите получить доступ из своей локальной системы без паролей. Мы будем использовать команду ssh-copy-id, которая по умолчанию доступна в большинстве дистрибутивов Linux. Эта команда скопирует публичный ключ id_rsa.паб в .ssh / authorized_keys файл в удаленной системе.
Синтаксис ssh-copy-id следующий:
$ ssh-copy-id удаленный_пользователь @ удаленный_IPВ нашем примере команда будет выглядеть так:
$ ssh-copy-id жесть @ 192.168.72.136
В удаленной системе вы можете проверить передачу открытого ключа, просмотрев файл authorized_keys.
$ cat .ssh / authorized_keysУстановите разрешение для файла authorized_keys в удаленной системе на 600. Для этого используйте следующую команду:
$ chmod 600 .ssh / authorized_keysУстановите разрешение на .ssh в удаленной системе на 700. Для этого используйте следующую команду:
$ chmod 700 .sshДобавить закрытый ключ в агент аутентификации SSH на локальном сервере
На нашем локальном компьютере мы добавим закрытый ключ к агенту аутентификации SSH. Это позволит нам войти на удаленный сервер без необходимости каждый раз вводить пароль.
Вот как это сделать:
$ ssh-add
Вход на удаленный сервер с помощью ключей SSH
После выполнения вышеуказанных шагов попробуйте войти на удаленный сервер. На этот раз вы сможете войти на свой удаленный сервер без ввода пароля.
Это все, что вам нужно для настройки входа по SSH без паролей в Ubuntu 20.04 система. Помните, что вы можете поделиться открытым ключом с кем угодно, но никогда не делитесь своим закрытым ключом. Любой, у кого есть закрытый ключ, сможет войти в любую систему, имеющую соответствующий открытый ключ.