Agent admitted failure to sign using the key の原因と対処

  • URLをコピーしました!
目次

1. エラー概要

SSH 接続時に以下のようなエラーが出ることがあります。

Agent admitted failure to sign using the key

これは、SSH クライアントが ssh-agent に登録した秘密鍵を使おうとした際に、
署名処理ができずに失敗したことを意味します。

2. 主な原因

2-1. ssh-agent が動作していない/プロセスが壊れている

  • ssh-agent プロセスが起動していない、または一時的に異常終了している。

2-2. 鍵が ssh-agent に登録されていない

  • 新しいターミナルを開いた場合や、再起動後に ssh-add を実行していない。

2-3. 秘密鍵のパーミッションが不適切

  • id_rsa などの秘密鍵ファイルの権限が緩すぎると認識されない。

3. 解決方法

3-1. ssh-agent を再起動する

  1. 現在の ssh-agent を確認 ps aux | grep ssh-agent 不要なプロセスが複数ある場合は一度 kill して整理します。
  2. 再起動する eval "$(ssh-agent -s)" 実行後、以下のように PID が表示されれば成功です。 Agent pid 12345

3-2. 鍵を再登録する

  1. 鍵を登録 ssh-add ~/.ssh/id_rsa
    • パスフレーズを求められる場合は入力します。
    • Identity added と出れば成功。
  2. 登録済みの鍵を確認 ssh-add -l 出力例: 2048 SHA256:xxxxxxxxxxxxxxxx user@host (RSA)

3-3. 鍵ファイルのパーミッションを修正する

秘密鍵の権限が広すぎると ssh が使用を拒否します。

chmod 600 ~/.ssh/id_rsa
chmod 700 ~/.ssh

3-4. サーバ側の authorized_keys を確認する

サーバに登録されている公開鍵が間違っていないか確認します。

cat ~/.ssh/authorized_keys

もし鍵を再発行した場合は、正しい公開鍵を追記してください。

4. まとめ

  • ssh-agent を再起動し、ssh-add で鍵を再登録するのが基本対処。
  • 鍵のパーミッションを見直すことで解決することも多い。
  • サーバ側の公開鍵設定が正しいかも合わせて確認。

このエラーは、ほとんどの場合 ssh-agent のリセット+鍵再登録で解決できます。

よくあるエラーと解決方法まとめ
目次