Githubへの認証で「Permission denied」を対応した方法

Githubを使い始めるときに、

認証方法として、

認証を行おうとして、

その時の対応方法については、

上記の記事を参照してください。

今回は、

これらの設定を進める上で、

「Permission denied」

が発生したので、

その際の調査と対応をメモしておきます。

Githubへの認証時のエラー

Githubへの鍵情報の設定などは、

上記で共有した記事を参照して頂いて、

その設定をした上で、

git clone git@github.com:hogehoge/hogehoge.git

というコマンドで、

ローカルリポジトリにファイルを取得しようとしていました。

しかし、

実際に実行してみると、

$ git clone git@github.com:hogehoge/hogehoge.git
Cloning into 'hogehoge'...
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

このように、

git@github.com: Permission denied (publickey).

というエラーが発生しました。

GithubへのSSHアクセスの確認

ターミナルから、

コマンドでアクセス確認するコマンドが用意されています。

確認コマンド(簡易)

ssh -T git@github.com
確認コマンド(詳細ログあり)
ssh -vT git@github.com

上記のコマンドで、

アクセスした時に、

正常系の終了であれば、

Hi hogehoge! 
You've successfully authenticated, 
but GitHub does not provide shell access.

このように表示されます。

認証自体はうまく成功した旨と、

GithubはSSHアクセス自体はできないよということが、

レスポンスのメッセージで返答されていますね。

本来は、この状態であれば、

うまくいっているのですが、

この確認コマンドを試してみても、

git@github.com: Permission denied (publickey).

となるので、

うまく認証が通っていません。

先ほどの、

ssh -vT git@github.com

でログを確認すると、

自分が認証したい鍵情報が使われていない

という状況でした。

鍵情報を指定してあげることで対応

実際に先ほどの確認コマンドで、

オプションで鍵情報も指定することができます。

確認コマンド

ssh -T -i ~/.ssh/hogehoge git@github.com

最初の、

ssh -T git@github.com

という確認コマンドに、

自分が使いたい鍵情報を、

-i ~/.ssh/hogehoge

という形で、

「-i」オプションで指定できるので、

ご自身の環境に合わせて鍵情報を指定してあげてください。

自分の環境だと、

ssh -T -i ~/.ssh/hogehoge git@github.com

で鍵情報を指定してあげると、

Hi hogehoge! 
You've successfully authenticated, 
but GitHub does not provide shell access.

と返答が返ってきたので、

うまく認証が通るようになりました。

これで、

今回の事象が、

鍵情報が指定できていないことが、

原因と考えられますね。

Gitへの認証時の鍵情報を指定する

今回の事象の対応として、

指定の鍵情報を認証時に使うように、

設定を変更していきます。

調整ファイル

~/.ssh/config

調整内容

Host github.com
  Hostname github.com
  IdentityFile ~/.ssh/id_rsa_hogehoge
  TCPKeepAlive yes
  IdentitiesOnly yes

こちらを調整することで、

githubにアクセス時に、

指定の鍵情報を使ってくれるようになります。

変更後に、

再度、アクセスを試してみると、

git clone git@github.com:hogehoge/hogehoge.git

でうまく自分のリポジトリにアクセスできました。

ピックアップ

こちらもおすすめ

初心者向けの色々な情報はあるけれど、

  • 無料でお試しができるスクール
  • ホームページなど簡単に作成できる
  • 組織で使いたいサービス

について、

少しでも試して良いものがあると、

それを活用することで学習や業務などが効率化できるので、

おすすめのサイトなどをいくつか紹介しておきます

おすすめ書籍

広告

おすすめ記事