Как настроить вход по SSH без пароля

Как настроить вход по SSH без пароля

Командная строка Linux — отличное решение для автоматизации задач. Кроме автоматизации локальных задач, вы можете автоматизировать и удаленные задачи, используя SSH. При этом ввод пароля удаленной машины будет помехой.

Сегодня мы расскажем, как настроить подключение к удаленной машине по SSH без пароля. Определим, что подключаться будем с компьютера A под пользователем usera к удаленному компьютеру B под пользователем userb.

Сначала нужно подключиться к компьютеру A под пользователем usera и сформировать пару ключей аутентификации.

usera@machine-a:~$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/usera/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/usera/.ssh/id_rsa.
Your public key has been saved in /home/usera/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:J+R7BEW/KY7jxPkZ+vYLbiKFYVjEGb//Lm39esaZBaE usera@machine-a
The key's randomart image is:
+---[RSA 2048]----+
| ooo .o |
| +. . . . |
| o + .. . |
| . oo o Eo. |
| . oS + o . |
| ...X . .|
| .B *. . .+|
| .o.+=o .o+|
| .o====..=.|
+----[SHA256]-----+

Теперь удаленно создадим папку ~/.ssh как пользователь userb на машине B. (Если такая папка уже есть — не беда):

usera@machine-a:~$ ssh userb@machine-b mkdir -p .ssh 
userb@machine-b's password:

Теперь нужно добавить созданный публичный ключ в файл .ssh/authorized_keys на удаленной машине и ввести пароль пользователя userb в последний раз:

usera@machine-a:~$ cat .ssh/id_rsa.pub | ssh userb@machine-b 'cat >> .ssh/authorized_keys' 
userb@machine-b's password:

Теперь вы можете подключаться к машине B с машины A без пароля:

usera@machine-a:~$ ssh userb@machine-b

В зависимости от используемой версии SSH, может потребоваться внесение следующих изменений:

  • Поместите публичный ключ в файл .ssh/authorized_keys2
  • Измените права на папку .ssh на 700
  • Измените права на файл .ssh/authorized_keys2 на 640

Читайте также: 3 способа оставить команду работать после выхода из сеанса SSH

Добавить комментарий

Ваш адрес email не будет опубликован.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.