DEV Community 👩‍💻👨‍💻

Cover image for Как сделать авторизацию по ключу на удаленном сервере для Git на Windows?
Pavel Khoroshkov
Pavel Khoroshkov

Posted on • Updated on

Как сделать авторизацию по ключу на удаленном сервере для Git на Windows?

1) Устанавливаем Git, если не установлен и запускаем Git Bash
2) Создаем ключ

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
# Enter file in which to save the key ({путь по умолчанию}):
# можно ничего не вводить останется путь по умолчанию, жмем Enter
# Enter passphrase (empty for no passphrase):
# ничего не вводим, жмем Enter
Enter fullscreen mode Exit fullscreen mode

В зависимости от выбранного алгоритма шифрования (в нашем случае rsa) будет меняться имя файлов ключей, путь по умолчанию формируется например так:
закрытый ключ: /c/Users/{username}/.ssh/id_{алгоритм}
открытый ключ: /c/Users/{username}/.ssh/id_{алгоритм}.pub
но лучше использовать указатель на домашнюю папку пользователя:
закрытый ключ: ~/.ssh/id_{алгоритм}
открытый ключ: ~/.ssh/id_{алгоритм}.pub
Конечно, вы можете задать собственное имя файлов, но это надо будет учитывать в дальнейших командах
3) Запускаем ssh-agent в фоне

eval "$(ssh-agent -s)"
Enter fullscreen mode Exit fullscreen mode

4) Добавляем сгенерированный закрытый ключ в ssh-agent

ssh-add ~/.ssh/id_rsa
Enter fullscreen mode Exit fullscreen mode

5) Копируем открытый ключ на сервер

ssh-copy-id -p 22 -i ~/.ssh/id_rsa.pub username@host-name.ru
Enter fullscreen mode Exit fullscreen mode

Замените username на имя пользователя, под которым вы подключаетесь по SSH к серверу, а host-name.ru на имя хоста сервера. Указание порта -p 22 можно опустить, если используется стандартный 22-й порт.
Готово, теперь гит будет успешно подключаться к вашему удаленному репозитарию, например в папке /var/www, по URL ssh://host-name.ru/var/www, без пароля.

Buy Me A Coffee

Top comments (0)

DEV

Thank you.

 
Thanks for visiting DEV, we’ve worked really hard to cultivate this great community and would love to have you join us. If you’d like to create an account, you can sign up here.