Pavel Khoroshkov
pgood dev notes

pgood dev notes

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

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

Pavel Khoroshkov's photo
Pavel Khoroshkov
·Dec 30, 2021·

1 min read

  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
    
    В зависимости от выбранного алгоритма шифрования (в нашем случае rsa) будет меняться имя файлов ключей, путь по умолчанию формируется например так: закрытый ключ: /c/Users/{username}/.ssh/id_{алгоритм} открытый ключ: /c/Users/{username}/.ssh/id_{алгоритм}.pub но лучше использовать указатель на домашнюю папку пользователя: закрытый ключ: ~/.ssh/id_{алгоритм} открытый ключ: ~/.ssh/id_{алгоритм}.pub Конечно, вы можете задать собственное имя файлов, но это надо будет учитывать в дальнейших командах
  3. Запускаем ssh-agent в фоне
    eval "$(ssh-agent -s)"
    
  4. Добавляем сгенерированный закрытый ключ в ssh-agent
    ssh-add ~/.ssh/id_rsa
    
  5. Копируем открытый ключ на сервер
    ssh-copy-id -p 22 -i ~/.ssh/id_rsa.pub username@host-name.ru
    
    Замените username на имя пользователя, под которым вы подключаетесь по SSH к серверу, а host-name.ru на имя хоста сервера. Указание порта -p 22 можно опустить, если используется стандартный 22-й порт. Готово, теперь гит будет успешно подключаться к вашему удаленному репозитарию, например в папке /var/www, по URL ssh://host-name.ru/var/www, без пароля.
 
Share this