search
LoginSignup
109
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

posted at

updated at

GithubのSSH通信設定

GithubでSSHキー登録とうまくいかなかった時の対処メモです.

SSH登録の設定

キーの作成

まずクライアント(Mac)に公開鍵と秘密鍵を作成します

$ cd ~/.ssh/
$ ssh-keygen -t rsa -C "メールアドレス"
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/ユーザー名/.ssh/id_rsa): github_id_rsa
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in github_id_rsa.
Your public key has been saved in github_id_rsa.pub.
~以下略~

鍵を確認します.
github_id_rsa(秘密鍵)とgithub_id_rsa.pub(公開鍵)のファイルが確認できれば成功です.
github_id_rsa.pub をGitHubへ登録します.

クライアント側(Mac)へのSSHキーの設定

公開鍵をGitHubに登録します.
以下のコマンドで、公開鍵をクリップボードにコピーにします.

$ pbcopy < ~/.ssh/github_id_rsa.pub

画面右上にある[Add SSH Key]をクリックします.
git_ssh_set.png

[Title] の項目に公開鍵の名前(任意の名前)と[Key]の項目に先ほどコピーした公開鍵の内容を貼付けます.
最後に[Add Key]をクリックしましょう.
git_add_ssh.png

sshコマンドのオプションを省略する設定

以下の設定でssh -l git -i ~/.ssh/github_id_rsa github.comを省略します.

$ vi ~/.ssh/config

Host github.com
 HostName      github.com
 IdentityFile  ~/.ssh/github_id_rsa
 User          git

SSHの接続テスト

ターミナルのsshコマンドで接続確認を行います.

$ ssh -T git@github.com

これが出れば成功です.

Hi {account-name}! You've successfully authenticated,
but GitHub does not provide shell access.

うまくいかなかった場合

以下のメッセージが出てしまいました.

Warning: Permanently added the RSA host key for IP address '204.232.175.90' to the list of known hosts.
Permission denied (publickey).

対処1.

.sshの中にknown_hostsが自動的に作成されていますが、「github.com, ~」から始まる一行を削除します。「known_hosts」とは、SSH公開鍵のキャッシュで、初めての通信を行う際に追記登録されます.

$ vi ~/.ssh/known_hosts
~~~~ ファイルの中身 ~~~~
github.com,204.232.175.90 ssh-rsa AAA... 

対処2.

ssh-add -lして確認して、秘密鍵のパスが出てこなければssh秘密鍵を登録しましょう.

eval `ssh-agent`
$ ssh-add github_id_rsa(秘密鍵名)

接続テスト

再度、sshコマンドで接続確認を行います.

$ ssh git@github.com

これが出れば成功です.

Hi {account-name}! You've successfully authenticated, 
but GitHub does not provide shell access.

エラーの場合

これでエラーの場合は

$ ssh -vT git@github.com

で出てきたエラーコードをGoogle先生に聞いてみてください.

参考

Githubのドキュメントを参考にしてみましょう.
- GitHub Help

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
109
Help us understand the problem. What are the problem?