Создание и настройка SSH ключей на Windows для подключения к серверу Ubuntu / Debian
Устал постоянно вводить пароль от сервера в Терминале и решил создать ssh ключ, для авторизации без пароля, одной командой:
ssh root@80.20.117.218
Создаем папку на вашем ПК в директории C:\Users\Пользователь\.ssh, там будем хранить ключи.
Открываем терминал Windows PowerShell и вбиваем туда следующую команду:
mkdir ~/.ssh
#Это создаст ту самую папку для ключей ssh
Далее нам нужно сгенерировать ssh ключ:
ssh-keygen -t rsa -b 4096 -f "C:\Users\Пользователь\.ssh\id_rsa" -C "main_key" -N '""'
#Создаем ключ без пароля в папке ssh
(Если на этом этапе система предложит ввести пароль, то жмём Enter, не вводя пароль)
Но должно просто выскачить что то типа такого:
Generating public/private rsa key pair.
Your identification has been saved in C:\Users\Пользователь\.ssh\id_rsa
Your public key has been saved in C:\Users\Пользователь\.ssh\id_rsa.pub
The key fingerprint is:
SHA256:9B72vTxC4yTAelcgF7kj5rfxVVYwIlELn1xRSwTXTZw main_key
The key's randomart image is:
+---[RSA 4096]----+
| o ++=o*=Bo ..|
| . +.. * * ooEo|
| .. . o.. * .. o |
| .o.oo + .o .|
| o . .S Bo. |
| .. o *.+ . |
| . +. + .+ + |
| . . . . |
| |
+----[SHA256]-----+
PS C:\Users\Пользователь>
На этом этапе, на вашем пк, в папке C:\Users\Пользователь\.ssh\ появится файлик id_rsa.pub (Пс: Еще там появится id_rsa - приватный ключ, никому не отдавай!).
Далее смотрим сгенерированный публичный код и копируем его содержимое, это можно сделать как открыв его в обычном текстовом редакторе, так и выполнив команду в терминале:
cat "C:\Users\Пользователь\.ssh\id_rsa.pub"
Копируем именно вот эту часть, начиная с ssh-rsa и заканчивая main_key:
ssh-rsa AAAAB3Nz... /* Тут очень много различных букв */...uRmQ+oimKw== main_key
Далее нам нужно добавить скопированный ключ на сервер.
Авторизовываймся на сервере под рутом, в том же Windows PowerShell.
ssh root@80.20.117.218
#Password: Вводим пароль (Не отображается)
Создаем папку ssh
mkdir -p ~/.ssh
Создаём файл authorized_keys и редактируем его:
nano ~/.ssh/authorized_keys
Вставляем ранее скопированный ключ, нажатием правой кнопки мыши. В итоге у вас должно получиться вот так:
ssh-rsa AAAAB3NzaC1yc2AAAADAQABAAACAQDgZjasjF/gHiGjy9tIKNCclqfSusgR1ssKf1FoDf8RMBBuXc8eFib5rml0I39kvQuhopwM4XsBwv/CsaU3g234Z6oL6GZeovccOoGwTSmCHI0zZQcFIxKTFmh82dxNIxNoCXWPimixtoqpUKWHDjMs4i0bgdji5VxrPCAnkvmkMc1elWeOqX37gjCU+3R+I8Q6xusAb3V8EnZ7my7ax1IIgFsiGGatPobBX9pTT6g4NrCHZLuN0BYqnaS65IftnMgu7rHfw3SdrDTZBcYb/xe5/J8DJ1ctptxRvKSqKfWVKK4W7FPJclgaG3gq3Aotb3R6X6Huy//ScTrzklGmtIERnsKVd51daXC3kNMSfUoZWfnfFlNKktbR4wgJ52uiKyOdD9tHPQ8FDfhQuXdvBZLLE5VDTUodcbiVpGdPiJax5mnj+BPMFPqykAG0rrBBVeDHPmNX+ew5XGGQeePamE7FN0cBa70RU4bgZwxYNaisYOoMkmBojSmBYhGRSgfBjHdU6GOOdJpDF50Z8o7rPp0MYEu9nvOYQ01Dxo2VC4wBIxz7rL7qo1JRl94XrvIpl46ybGGP07/ZZK7dZ+rJK8yAyCgqvbBZAZlay5i13KurOGEigjuRsvRvQ/TZ5a4JZUqjWTvpn9yr/eOT+q7yykjaB4SLezc6RxSqlzrF9UuRmQ+oimKw== main_key
Сохраняем нажатием: Ctr+X, Y, Enter.
На всякий случай настраиваем права:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
Выходим
exit
Пробуем авторизоваться без ввода пароля
ssh root@80.20.117.218
Либо если не хотите разрывать соединение с сервером, просто пишем
whoami
И получаем:
root
Это значит все ОК, теперь можно авторизовываться по ключу, не вводя пароль.
Комментариев 0