Сведения о добавлении ключей SSH в учетную запись
Доступ к данным и запись в репозиториях можно получить в GitHub с помощью SSH (протокол Secure Shell). При подключении через SSH проверка подлинности выполняется с помощью файла закрытого ключа на локальном компьютере. Дополнительные сведения см. в разделе Сведения о протоколе SSH.
Вы также можете использовать SSH для подписывания фиксаций и тегов. Дополнительные сведения о подписи фиксации см. в разделе Сведения о проверке подписи фиксации.
После создания пары ключей SSH необходимо добавить открытый ключ в GitHub.com для включения доступа SSH для учетной записи.
Необходимые компоненты
Перед добавлением нового ключа SSH в учетную запись на GitHub.comвыполните следующие действия.
- Проверьте существующие ключи SSH. Дополнительные сведения см. в разделе Проверка наличия существующих ключей SSH.
- Создайте новый ключ SSH и добавьте его в агент SSH вашего компьютера. Дополнительные сведения см. в разделе Создание нового ключа SSH и его добавление в ssh-agent.
Добавление нового ключа SSH в вашу учетную запись
Вы можете добавить ключ SSH и использовать его для проверки подлинности или фиксации подписи или обоих. Если вы хотите использовать один и тот же ключ SSH для проверки подлинности и подписывания, необходимо отправить его дважды.
После добавления нового ключа проверки подлинности SSH в учетную запись на GitHub.comможно перенастроить любые локальные репозитории для использования SSH. Дополнительные сведения см. в разделе Управление удаленными репозиториями.
Примечание.
GitHub улучшил безопасность, убрав старые небезопасные типы ключей 15 марта 2022 года.
По состоянию на эту дату ключи DSA (ssh-dss) больше не поддерживаются. Невозможно добавить новые ключи DSA в личная учетная запись на GitHub.
Ключи RSA (ssh-rsa) с valid_after до 2 ноября 2021 г. могут продолжать использовать любой алгоритм подписи. Ключи RSA, созданные после этой даты, должны использовать алгоритм подписи SHA-2. Для использования сигнатур SHA-2 может потребоваться обновить некоторые старые клиенты.
-
Скопируйте открытый ключ 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 Terminal, или в любом другом месте, где используется командная строка PowerShell, может
ParseErrorпоявиться сообщение о том, чтоThe '<' 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 папку, открыть файл в избранном текстовом редакторе и скопировать его в буфер обмена.
-
В правом верхнем углу любой страницы на GitHubщелкните рисунок профиля, а затем выберите октикона "шестеренка" aria-hidden="true" aria-label="gear" %} Settings.
-
В разделе "Access" боковой панели щелкните SSH и ключи GPG.
-
Щелкните Создать ключ SSH или Добавить ключ SSH.
-
В поле "Название" добавьте описательную метку для нового ключа. Например, если вы используете личный ноутбук, можно назвать этот ключ "Личный ноутбук".
-
Выберите тип ключа: ключ проверки подлинности или ключ подписывания. Дополнительные сведения о подписи фиксации см. в разделе Сведения о проверке подписи фиксации.
-
В поле "Ключ" вставьте открытый ключ.
-
Нажмите кнопку Добавить ключ SSH.
-
При появлении запроса подтвердите доступ к вашей учетной записи на 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, следуя инструкциям в Создание нового ключа SSH и его добавление в ssh-agent, вы можете добавить ключ в учетную запись с помощью этой команды.
gh ssh-key add ~/.ssh/id_ed25519.pub --type signing
Дополнительные материалы
-
[АВТОЗАГОЛОВОК](/authentication/authenticating-with-saml-single-sign-on/authorizing-an-ssh-key-for-use-with-saml-single-sign-on)