Github のリポジトリにアクセスするためには、あらかじめこちらの SSH 公開鍵を登録しておかなければならない。公開鍵は ssh-keygen
コマンドで作れば良い。ウチの環境では、LAN 内の他の Mac へのリモート接続等に公開鍵を使っているため、今回 Github へ登録するものは、それとは別に作ることにした。そのための手順は以下のようになる。
- 公開鍵生成時に鍵ファイルの名前を指定する。
- Github への SSH 接続では標準とは異なる鍵ファイルを使うように設定する。
SSH 公開鍵の生成
以下が実際の公開鍵生成の実行結果。参考にしたのは help.github にある「Generating SSH keys (OSX)」。また、鍵のファイル名を変更する方法については「Macにgitをインストールしてそのままgithubにも登録」にならった。
[imac] mnbi% ssh-keygen -C "mnbi@foo.bar.baz"
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/mnbi/.ssh/id_rsa): github_id_rsa
[...snip...]
SSH の設定
「Troubleshooting SSH issues」の "SSH config" にしたがい、~/.ssh/config
に以下の記述を追加する。
Host github.com
User git
Hostname github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa
Github への接続テスト
生成した公開鍵(↑の実行例では github_id_rsa.pub
)の内容を Github に登録した後、「Generating SSH keys (OSX)」にしたがい、接続テストを行う。以下はその実行結果。
[imac] mnbi% ssh git@github.com The authenticity of host 'github.com (207.97.227.239)' can't be established. RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'github.com,207.97.227.239' (RSA) to the list of known hosts. Identity added: /Users/mnbi/.ssh/github_id_rsa (/Users/mnbi/.ssh/github_id_rsa) PTY allocation request failed on channel 0 ERROR: Hi mnbi! You've successfully authenticated, but GitHub does not provide shell access Connection to github.com closed.
Github はシェルアクセスを認めていないため接続は切られる。肝心なのは「You've successfully authenticated」の部分。これにより、認証は成功したことがわかる。
追記@2010-11-17
実際のプロジェクトの登録については、「既存のプロジェクトを github に公開する」を参照。
関連リンク
- Macにgitをインストールしてそのままgithubにも登録 (kishi-r.com)
- Generating SSH keys (OSX) (help.github)
- Troubleshooting SSH issues (help.github; 認証情報のファイルを標準とは別の名前にする場合の SSH config の設定方法が載っている)
0 件のコメント:
コメントを投稿