Проблема с добавлением SSH-ключа в GitHub

У меня проблема, связанная с форматом SSH-ключа, используемого GitHub. Я использовал Git Bash для создания нового ключа SSH:

$ ssh-keygen -t rsa -C "[email protected]"

Затем я скопировал ключ в раздел SSH в настройках страницы моей учетной записи GitHub. Однако оно сопровождалось следующим уведомлением о проблеме:

Key is invalid. It must begin with 'ssh-ed25519', 'ssh-rsa', 'ssh-dss', 'ecdsa-sha2-nistp256', 'ecdsa-sha2-nistp384', or 'ecdsa-sha2-nistp521'. Check that you're copying the public half of the key

После этого я отредактировал свой SSH-ключ, начиная с ssh-rsa, и свой адрес электронной почты в конце. Однако проблема все еще существует.

Как решить эту проблему?


person Yu Xiong    schedule 24.02.2016    source источник
comment
Похоже, это случилось с вами, потому что вы пытались добавить свой закрытый ключ вместо открытого.   -  person user1016265    schedule 07.10.2017
comment
убедитесь, что это id_rsa.pub   -  person densityx    schedule 08.09.2018
comment
stackoverflow.com/a/68192584/7942242   -  person crg    schedule 28.07.2021


Ответы (7)


Просто выполните следующие действия, и вы в кратчайшие сроки настроите свой SSH-ключ:

  • Создайте новый ключ ssh (или пропустите этот шаг, если ключ у вас уже есть) ssh-keygen -t rsa -C "your@email"

  • После того, как вы установили свой ключ в home/.ssh каталог (или Users/<your user>.ssh под окнами), откройте его и скопируйте содержимое.


Как добавить SSH-ключ в учетную запись GitHub?

  • Войдите в учетную запись GitHub

  • Нажмите на владельца ранчо в правом верхнем углу (Настройки).

    Настройки учетной записи GitHub

  • Нажмите SSH-ключи

    Раздел ключей SSH

  • Нажмите Добавить ключ SSH

    Добавить ключ SSH

  • Вставьте свой ключ и сохраните

И все готово :-)

person CodeWizard    schedule 24.02.2016
comment
Простой способ получить этот ключ для копирования / вставки в GitHub - это использовать предложенную ими команду: clip < ~/.ssh/id_rsa.pub - person MattMakes; 18.02.2018
comment
Тем из нас, кто делает вещи сложнее, чем они должны быть, также убедитесь, что вы используете текст из файла .pub. - person JDennis; 15.07.2018
comment
help.github.com/en/enterprise/2.15/user/articles/ - person Andrew Bringaze; 13.01.2020

ssh-keygen сгенерирует вам пару ключей, частный и открытый. Похоже, вы загрузили не тот файл. GitHub хочет получить открытый ключ, обычно здесь: ~/.ssh/id_rsa.pub.

person Kevin Burdett    schedule 24.02.2016
comment
Спасибо! Да, я только что нашел один, заканчивающийся на .pub, так что он правильный и работает правильно! - person Yu Xiong; 24.02.2016
comment
Вот это да. Это тоже была моя проблема. Я чувствую себя ослом. Спасибо - person Amc_rtty; 01.04.2018

Если вы используете Mac и набираете инструкции GitHub (например, Создание нового ключа SSH и добавление его в ssh-agent , вы, вероятно, набираете только табуляцию (например, автозаполнение), чтобы:

$ pbcopy ‹~ / .ssh / id_rsa

и не

$ pbcopy ‹~ / .ssh / id_rsa.pub

В первом случае вы фактически копируете и пытаетесь вставить свой закрытый ключ.

Надеюсь, это сэкономит вам время.

person bgerd    schedule 27.02.2016
comment
иногда чувствую себя психом. иногда нет. - person Lonoshea; 17.01.2017

Другой способ скопировать открытый ключ в буфер обмена:

clip < ~/.ssh/id_rsa.pub
person Tin Torres    schedule 10.06.2018
comment
Какая платформа? Ubuntu? clip установлен по умолчанию? - person Peter Mortensen; 19.08.2020

Я столкнулся с той же проблемой, и оказалось, что это было из-за того, что в комментарии был -. GitHub явно не любит -, но _ в порядке.

person sent-hil    schedule 05.06.2017

Откройте файл ~/.ssh/id_rsa.pub. Затем откройте его в редакторе и скопируйте открытый ключ в свою учетную запись GitHub.

person shawlang    schedule 01.11.2016

Добавить SSH-ключ в Github

Проверить, есть ли у тебя ключ?

ssh-add -l

Если не? затем выполните шаги, чтобы сгенерировать ключ

ssh-keygen -t rsa -b 4096 -C your__gmail

Теперь для копирования ключа используйте инструмент xclip или просто перейдите в файл и скопируйте

sudo apt install xclip
xclip -sel clip < ~/.ssh/id_rsa.pub
  • Теперь перейдите к github.com и перейдите к настройкам
  • выберите ключи SSH и GPG
  • Новый ключ SSH
  • Введите ваше__choice__name в поле заголовка ...
  • Вставьте свой открытый ключ в поле Ключ
  • Нажмите Добавить ключ SSH.
person Paramjeet Dhiman    schedule 07.09.2020