githubで複数アカウントをsshキー認証する

githubで既にアカウントをもっていて、それとは別に新たなアカウントを用意する場合。
ぞれにsshキー認証するための方法。

問題は、github上ではアカウントとsshキーは一対一になっている点です。

既存アカウントAで、キーXを使っていたら、そのキーは他のアカウントでは使えません。
別アカウントでキーを登録しようとしたら、既に利用されている、という旨のメッセージが表示されてエラーになります。


対策。

新アカウント用に、新しくキーペアを作ります。
既存のアカウントには既存のキーペア、新アカウントには新キーペアを使うことにします。


既存キーは、
~/.ssh
に格納されているでしょう。

新キーは、
~/.ssh/hoge
に格納することにします。


キーペアを使い分けるために、ssh設定を編集します。
~/.ssh/config
Host github-hoge
HostName github.com
IdentityFile ~/.ssh/hoge/id_rsa

configファイルのパーミッションは600で。


githubの新アカウントで新キーペアの公開キーを登録しておきます。
これで、ホストをgithub-hogeとして、新キーペアを利用してアクセスできます。

ssh -T git@github-hoge
> Hi hoge! You've successfully authenticated, but GitHub does not provide shell access.

従来のアカウントには従来通りにアクセスできます。

ssh -T git@github.com
> Hi xxx! You've successfully authenticated, but GitHub does not provide shell access.

pushするときには、メールアドレスでgithubアカウントが特定されます。
新アカウントでpushする場合は、ローカルリポジトリのメールアドレスを新アカウントのものに設定します。

git config --add user.email hoge@hogehoge.com

これで新アカウントでpushすることができます。


ただし。

ひとりで複数のフリーアカウントを利用するのはgithubの規約に違反します。
https://help.github.com/terms-of-service/

ひとつのアカウントで複数メアドを利用する方法があるので、通常はそれで事足りるでしょう。
http://qa.atmarkit.co.jp/q/15

2012年11月

        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

アーカイブ