Skip to main content

Добавление нового ключа SSH в учетную запись GitHub

Чтобы настроить учетную запись на GitHub.com для использования нового (или существующего) ключа SSH, вам также потребуется добавить ключ в свою учетную запись.

Platform navigation

Tool navigation

Сведения о добавлении ключей SSH в учетную запись

Доступ к данным и запись в репозиториях можно получить в GitHub.com с помощью SSH (протокол Secure Shell). При подключении через SSH проверка подлинности выполняется с помощью файла закрытого ключа на локальном компьютере. Дополнительные сведения см. в разделе "Сведения о протоколе SSH".

Вы также можете использовать SSH для подписывания фиксаций и тегов. Дополнительные сведения о подписи фиксации см. в разделе "Сведения о проверке подписи фиксации".

После создания пары ключей SSH необходимо добавить открытый ключ в GitHub.com для включения доступа SSH для учетной записи.

Необходимые компоненты

Перед добавлением нового ключа SSH в учетную запись на GitHub.comвыполните следующие действия.

  1. Проверьте существующие ключи SSH. Дополнительные сведения см. в разделе Проверка наличия существующих ключей SSH.
  2. Создайте новый ключ SSH и добавьте его в агент SSH вашего компьютера. Дополнительные сведения см. в разделе Создание нового ключа SSH и его добавление в ssh-agent.

Добавление нового ключа SSH в вашу учетную запись

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

После добавления нового ключа проверки подлинности SSH в учетную запись на GitHub.comможно перенастроить любые локальные репозитории для использования SSH. Дополнительные сведения см. в разделе Управление удаленными репозиториями.

Примечание. GitHub улучшили безопасность за счет удаления старых небезопасных типов ключей 15 марта 2022 г.

По состоянию на эту дату ключи DSA (ssh-dss) больше не поддерживаются. Невозможно добавить новые ключи DSA в личная учетная запись на GitHub.com.

Ключи RSA (ssh-rsa) с valid_after до 2 ноября 2021 г. могут продолжать использовать любой алгоритм подписи. Ключи RSA, созданные после этой даты, должны использовать алгоритм подписи SHA-2. Для использования сигнатур SHA-2 может потребоваться обновить некоторые старые клиенты.

  1. Скопируйте открытый ключ SSH в буфер обмена.

    Если файл открытого ключа SSH имеет другое имя или путь, отличный от примера кода, измените имя файла или путь в соответствии с текущей настройкой. При копировании ключа не добавляйте символы перевода строки и пробелы.

    $ pbcopy < ~/.ssh/id_ed25519.pub
    # Copies the contents of the id_ed25519.pub file to your clipboard
    

    Совет. Если pbcopy не работает, можно найти скрытую папку .ssh, открыть файл в любом текстовом редакторе и скопировать ключ в буфер обмена.

$ clip < ~/.ssh/id_ed25519.pub
# Copies the contents of the id_ed25519.pub file to your clipboard

Примечания:

  • С помощью подсистема Windows для Linux (WSL) можно использоватьclip.exe. В противном случае, если clip он не работает, можно найти скрытую .ssh папку, открыть файл в избранном текстовом редакторе и скопировать его в буфер обмена.
  • В более новых версиях Windows, использующих Терминал Windows или в любом другом месте, где используется командная строка PowerShell, может ParseError появиться сообщение о том, что The '&lt;' operator is reserved for future use. в этом случае следует использовать следующую альтернативную clip команду:
$ cat ~/.ssh/id_ed25519.pub | clip
# Copies the contents of the id_ed25519.pub file to your clipboard
$ cat ~/.ssh/id_ed25519.pub
# Then select and copy the contents of the id_ed25519.pub file
# displayed in the terminal to your clipboard

Совет. Кроме того, можно найти скрытую папку .ssh, открыть файл в любом текстовом редакторе и скопировать ключ в буфер обмена.

  1. В правом верхнем углу любой страницы щелкните фотографию профиля, а затем выберите Параметры.

    Screenshot of a user's account menu on GitHub. The menu item "Settings" is outlined in dark orange.

  2. В разделе "Access" боковой панели щелкните SSH и ключи GPG.

  3. Щелкните Создать ключ SSH или Добавить ключ SSH.

  4. В поле "Название" добавьте описательную метку для нового ключа. Например, если вы используете личный ноутбук, можно назвать этот ключ "Личный ноутбук".

  5. Выберите тип ключа: ключ проверки подлинности или ключ подписывания. Дополнительные сведения о подписи фиксации см. в разделе "Сведения о проверке подписи фиксации".

  6. В поле "Ключ" вставьте открытый ключ.

  7. Нажмите кнопку Добавить ключ SSH.

  8. При появлении запроса подтвердите доступ к GitHub. Дополнительные сведения см. в разделе Режим sudo.

Дополнительные сведения о GitHub CLIсм. в разделе "Сведения о GitHub CLI".

Прежде чем использовать GitHub CLI для добавления ключа SSH в учетную запись, необходимо пройти проверку подлинности в GitHub CLI. Дополнительные сведения см. в разделе gh auth login в документации по GitHub CLI.

Чтобы добавить ключ SSH в учетную запись GitHub, используйте подкоманду ssh-key add, указав открытый ключ. Если вам будет предложено запросить дополнительные область ключей проверки подлинности, следуйте инструкциям в командной строке.

gh ssh-key add KEY-FILE --type {authentication|signing}

Чтобы указать заголовок для нового ключа, используйте флаг -t или --title.

gh ssh-key add KEY-FILE --title "personal laptop"

Если вы создали ключ SSH, следуя инструкциям в autoTITLE, вы можете добавить ключ в учетную запись с помощью этой команды.

gh ssh-key add ~/.ssh/id_ed25519.pub --type signing

Дополнительные материалы