突然gitosisからリポジトリがcloneできなくなった!(公開鍵認証編)

Pocket

いつものようにGitHubからcloneする感覚でgitosisからcloneしてみたらエラーになりました。

$ git clone git@example.com:path/to/repo.git
Initialized empty Git repository in /home/wnoguchi/path/to/repo/.git/
Permission denied (publickey,gssapi-with-mic).
fatal: The remote end hung up unexpectedly

これだけのキーワードで探してみてもバリエーションがあって、なかなか答えにたどり着きませんでした。

  • パーミッションはOK
  • ファイル名はOK
  • hosts.{deny|allow}はOK

何が違うんだろう?
前に出力した秘密鍵や公開鍵の形式が違っててログインできない初歩的な間違いを
おかしたので今回もそのあたりだろうと思って再生成してみて試してみたのですが、
だめでした。

しかたがないので、ssh -vvvオプションをつけてトレースメッセージを追ってみました。

$ ssh -vvv git@example.com
...

古いid_rsa.pubが.sshの下に存在していたのが原因でした。

トレースメッセージには直接的な原因は書いてありませんでした。
完全なエスパーです。
id_rsa.pubを先に見つけてそれを送信してレスポンスを見ているんでしょうか。
id_rsaが完全にスルーされてます。
id_rsa.pub.bakとかにリネームしてもう一度ssh -vvvやってみたらパスフレーズ聞いてくれるようになったので、git cloneしてみたらできました。
盲点でした。

参考

ssh の Permission denied (publickey,gssapi-with-mic). – お笑いプログラマの技術メモ

投稿者紹介

株式会社ユニキャスト
私たちは、テクノロジに魅せられた個性あふれるメンバーによって構成された茨城県日立市に本社を構えるベンチャー企業です。
”テクノロジを通して「驚き」と「感動」を創造し、人々の「夢」と「笑顔」を支えます。” の経営理念をモットーに明るい未来を描き、ワクワクする企画提案を続けて参ります。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください