SSH キー パスフレーズについて
SSH (Secure Shell プロトコル) を使用して、 のリポジトリ内のデータにアクセスして書き込むことができます。 SSH 経由で接続する� �合は、ローカル コンピューター上の秘密キー ファイルを使用して認証します。詳しくは、「SSH について」を参照してく� さい。
SSH キーを生成するときに、パスフレーズを追� してキーをさらにセキュリティで保護できます。 キーを使用するときは、必ずパスフレーズを入力する必要があります。 キーにパスフレーズがあり、キーを使用するたびにパスフレーズを入力したくない� �合は、SSH エージェントにキーを追� できます。 SSH エージェントでは SSH キーを管理し、パスフレーズを記憶します。
SSH キーがま� ない� �合は、認証に使う新しい SSH キーを生成する必要があります。 SSH キーが既にあるかどうかがわからない� �合は、既存のキーを確認できます。 詳しくは、「既存の SSH キーの確認」をご覧く� さい。
ハードウェア セキュリティ キーを使って GitHub Enterprise Server の認証を行う� �合は、ハードウェア セキュリティ キー用に新しい SSH キーを生成する必要があります。 キー ペアで認証を行うときに、ハードウェア セキュリティ キーをコンピューターに接続する必要があります。 詳しくは、OpenSSH 8.2 のリリース ノートをご覧く� さい。
新しい SSH キーを生成する
ローカル コンピューターで新しい SSH キーを生成できます。 キーを生成した後、your GitHub Enterprise Server instance 上のアカウントにキーを追� して、SSH 経由の Git 操作の認証を有効にすることができます。
your GitHub Enterprise Server instance のサイト管理者である� �合は、同じキーを使用して、インスタンスへの管理 SSH アクセスを自分に許可できます。 詳細については、「管理シェル (SSH) にアクセスする」を参照してく� さい。
-
[ターミナル] を開きます。
-
以下のテキストを貼り付けます。メールアドレスは自分の GitHub Enterprise Server メールアドレスに置き換えてく� さい。
$ ssh-keygen -t ed25519 -C "your_email@example.com"
注: Ed25519 アルゴリズ� をサポートしていないレガシ システ� を使っている� �合は、以下を使います。
$ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
これにより、指定したメールアドレスをラベルとして使って新しい SSH キーが作成されます。
> Generating public/private ALGORITHM key pair.
"キーを保存するファイルを入力してく� さい" というメッセージが表示されたら、Enter キーを押して既定のファイルの� �所をそのまま使うことができます。 以前に SSH キーを作成した� �合、ssh-keygen から別のキーの書き換えを求められる� �合があることに注意してく� さい。その� �合は、カスタ� 名の SSH キーを作成することをお勧めします。 これを行うには、既定のファイルの� �所を入力し、id_ssh_keyname をカスタ� キー名に置き換えます。
> Enter a file in which to save the key (/home/YOU/.ssh/ALGORITHM):[Press enter]
-
プロンプトが表示されたら、セキュアなパスフレーズを入力します。 詳しくは、「SSH キーのパスフレーズを使う」をご覧く� さい。
> Enter passphrase (empty for no passphrase): [Type a passphrase] > Enter same passphrase again: [Type passphrase again]
SSH キーを ssh-agent に追� する
ssh-agent に新しい SSH キーを追� してキーを管理する前に、既存の SSH キーを確認し、新しい SSH キーを生成しておく必要があります。
-
バックグラウンドでssh-agentを開始します。
$ eval "$(ssh-agent -s)" > Agent pid 59566
環境によっては、異なるコマンドを使う必要があるかもしれません。 たとえば、ssh-agent を開始する前に
sudo -s -H
を実行してルート アクセスを使用したり、exec ssh-agent bash
やexec ssh-agent zsh
を使用して ssh-agent を実行したりする必要がある� �合があります。 -
SSH プライベートキーを ssh-agent に追� します。 キーを別の名前で作成した� �合、または別の名前の既存のキーを追� する� �合は、コマンドの id_ed25519 を秘密キー ファイルの名前に置き換えます。
$ ssh-add ~/.ssh/id_ed25519
-
GitHub Enterprise Server で自分のアカウントに SSH キーを追� します。 詳しくは、「GitHub アカウントへの新しい SSH キーの追� 」をご覧く� さい。
ハードウェア セキュリティ キー用の新しい SSH キーを生成する
macOS または Linux を使っている� �合は、新しい SSH キーを生成する前に、SSH クライアントの更新または新しい SSH クライアントのインストールが必要になる� �合があります。 詳しくは、「エラー: 不明なキーの種類」をご覧く� さい。
-
ハードウェア セキュリティ キーをコンピューターに挿入します。
-
[ターミナル] を開きます。
-
次のテキストを貼り付けて、GitHub Enterprise Server での自分のアカウントのメール アドレスに置き換えます。
$ ssh-keygen -t ed25519-sk -C "YOUR_EMAIL"
注: コマンドが失敗し、エラー
invalid format
またはfeature not supported,
を受け取る� �合は、Ed25519 アルゴリズ� をサポートしていないハードウェア セキュリティ キーを使っている可能性があります。 代わりに、次のコマンドを入力します。$ ssh-keygen -t ecdsa-sk -C "your_email@example.com"
-
メッセージが表示されたら、ハードウェア セキュリティ キーのボタンにタッチします。
-
"キーを保存するファイルを入力してく� さい" というメッセージが表示されたら、Enter キーを押して既定のファイルの� �所をそのまま使います。
> Enter a file in which to save the key (/home/YOU/.ssh/id_ed25519_sk):[Press enter]
-
パスフレーズの入力を求められたら、Enter キーを押します。
> Enter passphrase (empty for no passphrase): [Type a passphrase] > Enter same passphrase again: [Type passphrase again]
-
GitHub で自分のアカウントに SSH キーを追� します。 詳しくは、「GitHub アカウントへの新しい SSH キーの追� 」をご覧く� さい。