Автор: Рубрики: Инструкции Просмотрено: 501
Генерация и добавления SSH ключа для подключения к удаленному репозиторию GitHub
16Июл2019

При  работе с Git самый используемый сетевой  протокол для передачи данных – это SSH. Причин для этого много:

  1. возможность SSH  подключения присутствует на большинстве серверах;
  2. с SSH легко работать и  настроить;
  3. дает возможность и на запись и на чтение;
  4. не нужно постоянно при запросах к центральному серверу вводить логин и пароль
  5. безопасное соединение по 22 порту предотвращает возможность включение в сессию и перехвата данных;
  6. данные передаются в зашифрованном виде;
  7. делает файлы более компактными (сжимает ) перед передачей.

К cлову, хостинг-провайдер HyperHost предоставляет SSH на  VPS/VDS серверах и по запросу на тарифах виртуального хостинга.

Первым шагом,  нужно сгенерировать пару ключей. Это можно сделать  командой:

ssh-keygen -t rsa -b 4096 -C “[email protected]

где [email protected] – Ваша электронная почта, обязательно нужно задать ту почту, которую Вы указывали при регистрации на GitHub.

generate

После введения команды можно выбрать путь сохранения ключа или же просто нажать Enter, если хотите чтобы ключ сохранился в месте указанном по умолчанию:

verify

Также для большей надежности можно ввести ключевую фразу. В первом поле вводим пароль, втором повторяем ту же фразу для ее верификации:

verification

Следующим шагом нужно добавить сгенерированы ключи в  SSH-агент. Для этого нужно сначала запустить SSH-агент командой:

eval “$(ssh-agent -s)”

sshagent

После введение команды, в терминале на выводе  будет показан id запущенного процесса.

Далее, как запустился агент, нужно добавить в него сгенерированные ключи командой:

ssh-add ~/.ssh/id_rsa

addsshinagent

Как видим по скрину, ключи успешно добавились.

Ключи добавились, следующим шагом нужно их скопировать и добавить в удаленный репозиторий. Ключ можно найти по пути который указан на первом скриншоте:

rsa.pub

keyrsa.pub

Или же ввести команду в терминале и скопировать ключ в буфер обмена:

clip < ~/.ssh/id_rsa.pub

copyssh

После чего заходим в свой аккаунт на GitHub и выполняем следующие действия, чтобы добавить ключ:

addsshitgithub

В графе Title вводим название для ключа (указываете какое хотите). И в графе Key добавляем сам публичный ключ и жмем Add SSH key.

sshkey

Если все эти шаги сделаны успешно, ключ должен появиться на репозитории в графе с SSH key  и как идентификатор корректного ввода ключа, иконка ключа должна светится зеленым цветом.

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

clonewithssh

 

И стандартно вводим команду git clone и добавляем после нее скопированное содержимое с поля:

gitclone

   Команда ГиперХост советует использовать протокол  SSH для надежности и удобности в работе над Вашими проектами. 

P.S. Здесь Вы можете ознакомится с статьей о настройке Git, а здесь о командах и о работе с Git.

502 раз(а) 1 Сегодня просмотрено раз(а)
  • Семён Семёныч

    Только по вашим инструкциям и учусь. Всегда интересно попробовать что-то новое, даже когда оно немного не из сферы твоей работы. Так сказать для развития мозгов.))

    • а я всегда путаюсь, потому что только пару раз в жизни такое делал. И делал я не по этой инструкции, а по более простой интсрукции https://www.shellhacks.com/ru/ssh-login-without-password/

      • Семён Семёныч

        Там действительно намного меньше действий. Нет ни пароля, ни ключевой фразы. Надо обязательно будет попробовать, может даже в голове отложится.))

        • маша 11

          На самом деле инструкции почти идентичны (есть и ключевая фраза), единственное что в нашей инструкции мы добавляли сгенерированный ключ на GitHub, а не просто на удаленный сервер.

        • Маша

          На самом деле инструкции почти идентичны (есть и ключевая фраза), единственное что в нашей инструкции мы добавляли сгенерированный ключ на GitHub, а не просто на удаленный сервер.