「ひとかじりのりんご」

へっぽこエンジニアの備忘録。こちらは旧ブログ。新しい方はこちら→「http://sbkro.github.io」

GithubでSSH通信した時に「Permission denied (publickey).」が発生した時の対処方法。

Githubで、SSHキーを登録しても、上手くSSH通信出来なかったので、メモ書き。

まず、前提

SSHキーの作成、Githubへの公開鍵登録は、下記サイトが参考になりました。

問題が...

上記サイトの通りに作業を行い、通信確認を行いましたが、下記のメッセージが出てしまいました。

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

対処方法

1. known_hostsの整理

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

$ vi ~/.ssh/known_hosts

 **** ファイルの中身サンプル。 ****
github.com,204.232.175.90 ssh-rsa AAA... 

2. SSH秘密鍵を登録する。

ssh-addコマンドを使って、秘密鍵を登録します。パスワードが聞かれますが、SSH鍵生成時のパスワードを指定します。

$ssh-add <秘密鍵名>
Enter passphrase for <秘密鍵名>:   <= パスワードを入力
Identity added: <秘密鍵名> (<秘密鍵名>) 

上記、2種類の対処で、以下のように通信ができました。

$ssh  git@github.com
PTY allocation request failed on channel 0
Hi sbkro! You've successfully authenticated, but GitHub does not provide shell access.
Connection to github.com closed.