Skip to main content

このバージョンの GitHub Enterprise サーバーはこの日付をもって終了となりました: 2024-03-26. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの向上、新機能の向上を図るために、最新バージョンの GitHub Enterprise サーバーにアップグレードしてください。 アップグレードに関するヘルプについては、GitHub Enterprise サポートにお問い合わせください

GitHub アカウントへの新しい SSH キーの追加

新しい (または既存の) SSH キーを使用するように お使いの GitHub Enterprise Server インスタンス でアカウントを構成するには、そのキーをアカウントに追加する必要もあります。

Platform navigation

Tool navigation

アカウントへの SSH キーの追加について

SSH (Secure Shell プロトコル) を使用して、お使いの GitHub Enterprise Server インスタンス 上のリポジトリ内のデータにアクセスし、書き込みを行うことができます。 SSH 経由で接続する場合は、ローカル コンピューター上の秘密キー ファイルを使用して認証します。 詳しくは、「SSH について」を参照してください。

SSH を使ってコミットとタグに署名することもできます。 コミット署名の詳細については、「コミット署名の検証について」を参照してください。

SSH キー ペアを生成した後、公開キーを お使いの GitHub Enterprise Server インスタンス に追加して、アカウントの SSH アクセスを有効にする必要があります。

前提条件

お使いの GitHub Enterprise Server インスタンス のアカウントに新しい SSH キーを追加する前に、次の手順を実行します。

  1. 既存の SSH キーを確認する。 詳しくは、「既存の SSH キーの確認」を参照してください。
  2. 新しい SSH キーを生成し、マシンの SSH エージェントに追加する。 詳しくは、「新しい SSH キーを生成して ssh-agent に追加する」を参照してください。

アカウントへの新しい SSH キーの追加

SSH キーを追加し、認証またはコミット署名、またはその両方に使用できます。 認証と署名の両方に同じ SSH キーを使用する場合は、2 回アップロードする必要があります。

新しい SSH 認証キーを お使いの GitHub Enterprise Server インスタンス のアカウントに追加した後、SSH を使用するようにローカル リポジトリを再構成できます。 詳しくは、「リモートリポジトリを管理する」を参照してください。

: 既定では、GitHub Enterprise Server 3.6 以降では、2022 年 8 月 1 日午前 0 時 (UTC) の期限の時点で、次の 両方 の条件を満たす SSH 接続は失敗します。


  • RSA キーは、2022 年 8 月 1 日午前 0 時 (UTC) の期日後に、お使いの GitHub Enterprise Server インスタンス のユーザー アカウントに追加されました。
  • SSH クライアントでは、SHA-1 ハッシュ関数を使用して接続試行に署名します。

GitHub Enterprise Server 3.6 以降では、DSA、HMAC-SHA-1、または CBC 暗号を使用する SSH 接続もサポートされていません。 期限より前にアップロードされた RSA SSH キーは、キーが有効である限り、SHA-1 ハッシュ関数を使用して認証を続けることができます。 使用する GitHub Enterprise Server のバージョンを見つける方法の詳細については、「GitHub Docs のバージョンについて」を参照してください。

サイト管理者は RSA-SHA-1 を使って接続の期限を調整でき、RSA-SHA-1 を使用するすべての接続をブロックできます。 詳細については、サイト管理者に問い合わせるか、「インスタンスへの SSH 接続の構成」を参照してください。

  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

注:

  • Linux 用 Windows サブシステム (WSL) では、clip.exe を使うことができます。 clip が機能しない場合は、非表示の .ssh フォルダーを探し、お気に入りのテキスト エディターでファイルを開き、クリップボードにコピーできます。
  • Windows ターミナルを使用する新しいバージョンの Windows、または PowerShell コマンド ラインを使用する場合は、The '&lt;' operator is reserved for future use.次の代替 clip コマンドを使用する必要があることを示す ParseError が表示されることがあります。
$ 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. サイドバーの [アクセス] セクションで、 [ SSH キーと GPG キー] をクリックします。

  3. [New SSH key](新しい SSH キー) または [Add SSH key](SSH キーの追加) をクリックします。

  4. [Title] フィールドで、新しいキーを説明するラベルを追加します。 たとえば、個人のラップトップを使っている場合、このキーに「個人用ラップトップ」といった名前を付けます。

  5. キーの種類として、認証または署名のいずれかを選びます。 コミット署名の詳細については、「コミット署名の検証について」を参照してください。

  6. [キー] フィールドに公開キーを貼り付けます。

  7. [Add SSH key](SSH キーの追加) をクリックします。

  8. ダイアログが表示されたら GitHub Enterprise Server のアカウントへのアクセスを確認します。 詳しくは、「Sudo モード」を参照してください。

GitHub CLI の詳細については、「GitHub CLI について」を参照してください。

GitHub CLI を使用してアカウントに SSH キーを追加する前に、GitHub CLI に対して認証を行う必要があります。 詳細については、GitHub CLI ドキュメントの「gh auth login」を参照してください。

GitHub アカウントに SSH キーを追加するには、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-agent に追加する」の手順に従って SSH キーを生成した場合は、このコマンドを使用してアカウントにキーを追加できます。

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