ドキュメントには頻繁に更新が加えられ、その都度公開されています。本ページの翻訳はまだ未完成な部分があることをご了承ください。最新の情報については、英語のドキュメンテーションをご参照ください。本ページの翻訳に問題がある場合はこちらまでご連絡ください。
記事のバージョン: Enterprise Server 2.15

このバージョンの GitHub Enterprise はこの日付をもって終了となります: このバージョンの GitHub Enterprise はこの日付をもって終了となりました: 2019-10-16. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 For better performance, improved security, and new features, upgrade to the latest version of GitHub Enterprise. For help with the upgrade, contact GitHub Enterprise support.

SSH キーパスフレーズを使う

SSH キーを使用するたびにパスフレーズを再入力する必要がないように、SSH キーを保護し、認証エージェントを設定できます。

SSH キーにより、誰かがあなたのコンピュータにアクセスすると、そのキーを使用するすべてのシステムにもアクセスすることになります。 セキュリティをさらに強化するには、SSH キーにパスフレーズを追加します。 パスフレーズを安全に保存するために ssh-agent を使用すると、パスフレーズを再入力する必要がありません。

パスフレーズを追加または変更する

次のコマンドを入力して、鍵ペアを再生成せずに既存の秘密鍵のパスフレーズを変更できます:

$ ssh-keygen -p
# SSH キー作成プロセスを開始します
> Enter file in which the key is (/Users/you/.ssh/id_rsa): [Hit enter]> Key has comment '/Users/you/.ssh/id_rsa'
> Enter new passphrase (empty for no passphrase): [Type new passphrase]> Enter same passphrase again: [One more time for luck]> Your identification has been saved with the new passphrase.

鍵にすでにパスフレーズがある場合は、新しいパスフレーズに変更する前にそれを入力するように求められます。

Git for Windows で ssh-agent を自動的に起動する

GitHub Desktop とともにインストールされた Git Shell を使用している場合は、次の手順に従う必要はありません。 GitHub Desktop は自動的に ssh-agent を起動します。

それ以外の場合は、bash または Git シェルを開くとき、ssh-agent を自動的に実行するために次の手順に従ってください。 以下の行をコピーして Git シェルの ~/.profile または ~/.bashrc ファイルに貼り付けます:

env=~/.ssh/agent.env

agent_load_env () { test -f "$env" && . "$env" >| /dev/null ; }

agent_start () {
    (umask 077; ssh-agent >| "$env")
    . "$env" >| /dev/null ; }

agent_load_env

# agent_run_state: 0=agent running w/ key; 1=agent w/o key; 2= agent not running
agent_run_state=$(ssh-add -l >| /dev/null 2>&1; echo $?)

if [ ! "$SSH_AUTH_SOCK" ] || [ $agent_run_state = 2 ]; then
    agent_start
    ssh-add
elif [ "$SSH_AUTH_SOCK" ] && [ $agent_run_state = 1 ]; then
    ssh-add
fi

秘密鍵がデフォルトの場所 (~/.ssh/id_rsa or ~/.ssh/id_dsa) に保存されていない場合は、SSH 認証エージェントにそれがどこにあるかを指定する必要があります。 キーを ssh-agent に追加するには、ssh-add ~/path/to/my_key と入力します。 詳細は「新しい SSH キーを生成して ssh-agent に追加する」を参照してください。

参考: しばらくしてから、ssh-agent からキーを消去する場合、ssh-add -t<seconds> を実行して、キーを設定することができます。

最初に Git Bash を実行するとき、パスフレーズを求められます:

> Initializing new SSH agent...
> succeeded
> Enter passphrase for /c/Users/you/.ssh/id_rsa:
> Identity added: /c/Users/you/.ssh/id_rsa (/c/Users/you/.ssh/id_rsa)
> Welcome to Git (version 1.6.0.2-preview20080923)
>
> Run 'git help git' to display the help index.
> 「git help 」を実行して、特定のコマンドのヘルプを表示します。

ssh-agent プロセスは、ログアウトするか、コンピュータをシャットダウンするか、プロセスを強制終了するまで実行され続けます。

パスフレーズをキーチェーンに保存する

OS X El Capitan を介する OS X Leopard では、これらのデフォルトの秘密鍵ファイルは自動的に処理されます:

  • .ssh/id_rsa
  • .ssh/id_dsa
  • .ssh/identity

初めてキーを使用するときは、パスフレーズを入力するよう求められます。 キーチェーンと一緒にパスフレーズを保存することを選択した場合は、もう一度入力する必要はありません。

それ以外の場合は、鍵を ssh-agent に追加するときに、パスフレーズをキーチェーンに格納できます。 詳細は「SSH キーを ssh-agent に追加する」を参照してください。

参考リンク

担当者にお尋ねください

探しているものが見つからなかったでしょうか?

弊社にお問い合わせください