Как сгенерировать SSH ключ

Создаём публичный SSH ключ.

Ошибки при отсутствии SSH ключа

При отсутсвии публичного ключа для доступа к GIT репозиторию возникнет ошибка:

git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.

А если это связано со скриптом, который запускается при инициализации GIT репозитория и в котором указаны дальнейшие инструкции, то могут посыпаться и другие ошибки:

ERROR:
        Can't find a suitable configuration file in this directory or any
        parent. Are you in the right directory?
На русском:
Не удается найти подходящий файл конфигурации в этом каталоге или любом родителе. Вы в правильном каталоге?

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

Для исправления ошибки Permission denied (publickey) необходимо занести публичный ssh ключ, который сгенерирован для компьютера, с которого осуществляется доступ на сайт github.com.

I. Создание ключа ssh

Открываем терминал и переходим в папку с ключами:

cd ~/.ssh

Смотрим какие файлы там существуют:

ls

Обычно что-то вроде:

id_rsa
id_rsa.pub
known_hosts

где файлы:
id_rsa – содержит секретный ключ;
id_rsa.pub — публичный ключ.

Если файлов id_rsa и id_rsa.pub нет или чтобы их пересоздать, вводим команду:

ssh-keygen

или

ssh-keygen -t rsa

На вопрос перезапустить:

Overwrite (y/n)?

Отвечаем утвердительно.

II. Смотрим свой публичный ключ

Вводим команду:

cat ~/.ssh/id_rsa.pub

Внутри будет содержаться сгенерированный ключ, что-то вроде этого:

ssh-rsa AAtVB4puoWb3TQmkRDAtVhbLt3nWACq5r1Z/wMDcmh/8D0+MSSAsGLsW/ZOztIKn4uv6ojl5jBeM6UMoAmT23G5xVWHpW4YoeoNikAAB3B4puoWb3TQmkAABRDAV5sCnhbLt3nWACq5r1Z/wMDcmh/8D0+MSSAsGLsW/ZOztIKn4uv6ojl5jBeM6UMoAmT23G5xVWHpW4YoeoNikV5sCnyc2EAAIzaC1dwjKIB user@ploshadka-net-computer

Этот ключ копируем и вставляем на страницу:
https://github.com/settings/keys

Там создаём ключ, нажимая на New SSH key

Вводим название ключа, например, название операционной системы (к примеру – Mac OS). А в поле Key, вставляем содержимое которое было скопировано из терминала.

Теперь не должно быть проблем при соединении этого компьютера с сервисами сайта github.com

Метки:

Привет. Ты находишься на моём сайте. Я разработчик. Здесь я делюсь своими наработками и знаниями. Спрашивай в комментариях, если тебе что-то не понятно или пиши, если есть что добавить.

Если вам пригодилась информация, вы можете поблагодарить автора сайта символическим пожертвованием:

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

Напишите свой комментарий, если вам есть что добавить/поправить/спросить по теме текущей статьи: "Как сгенерировать SSH ключ".

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Если вам нужно добавить участок кода ставьте его между тегами <code></code>