ssh-agent
unix bashローカルマシン → サーバーA → サーバーB という風にsshでログインしたいとする。もしくは、サーバーAからgithub.comにssh接続でgit cloneしたいとか。 普通に考えれば、サーバーA上に、サーバーBに接続するための秘密鍵を置くことになる。
ssh-agentという仕組みを使うとローカルにある秘密鍵を使ってサーバーAから他のサーバーにssh接続できるようになる。
手順
ローカルのssh-agentに、鍵を登録
ssh-add -K 秘密鍵のパス
これを、
- ローカル→サーバーA
- サーバーA→サーバーB
の両方に対して行う。
-K
は、MacのKeychainに登録するためのオプション。
サーバーの.ssh/configを調整
~/.ssh/configに、ForwardAgent yes
という項目が必要。githubにつなぐなら、
Host github.com
HostName github.com
User git
ForwardAgent yes
と書いておくと良い