背景・目的
複数のSSHキーを管理する機会があったので、メモします
【GitHub】複数GitHubアカウントのSSHキーを管理する。を参考に試してみます。助かります。ありがとうございます。
実践
鍵の作成
-
1つ目の鍵を作成します
ssh-keygen -t rsa -b 4096 -C "mailadress" -f "id_rsa_abc"
-
2つ目の鍵を作成します
ssh-keygen -t rsa -b 4096 -C "mailadress" -f "id_rsa_xyz"
ssh configの修正
- ~/.ssh/configを修正します
Host github.com.abc HostName github.com User git Port 22 IdentityFile ~/.ssh/id_rsa_abc #1つ目のssh鍵を指定 TCPKeepAlive yes IdentitiesOnly yes Host github.com.xyz HostName github.com User git Port 22 IdentityFile ~/.ssh/id_rsa_github_xyz # #2つ目のssh鍵を指定 TCPKeepAlive yes IdentitiesOnly yes
公開鍵の設定
- 接続先であるリモート側の鍵をコピーして設定します。 pbcopyによりクリップボードにコピーできます
pbcopy < ~/.ssh/id_rsa_abc.pub
疎通
-
1つ目の確認
ssh -T git@github.com.abc Hi XXXXX! You've successfully authenticated, but GitHub does not provide shell access.
-
2つ目の確認
ssh -T git@github.com.xyz Hi XXXXX! You've successfully authenticated, but GitHub does not provide shell access.
git cloneする場合
- 下記の{}内をConfig内で設定した内容に書き換えます
git clone git@github.com.{abc}:username/repository-name.git
参考
今回、複数のSSH鍵を管理する方法をまとめてみました。