SSH 接続時に Too many authentication failures と表示される。
SSH
Mac OS X のターミナルを使って Linux Fedora へ SSH 接続しようとしたところ Too many authentication failures というメッセージが表示され、接続できなくなってしまいました。
今回はその対応方法を紹介します。
公開鍵認証を使って SSH 接続する設定をしていたときのことでした。
いくつかのサーバー用の鍵を作成して~/.ssh/config
に登録し、実際にそれを使って SSH 接続していたんですが、あるとき、サーバーへ SSH 接続しようとすると、次のようなエラーメッセージが表示されて、接続先のサーバーから強制切断されてしまうようになりました。
Received disconnect from 192.168.72.106: 2: Too many authentication failures for tomohiro
最初はサーバーの不調なのかと思ったのですが、どうやれこれは、接続元のコンピューターに鍵ファイルがたくさんあるときに、それら全てを使って接続を試みようとするために発生するエラーの様子でした。
接続設定で identitiesonly を指定する
この問題は、~/.ssh/config
で接続に使う秘密鍵をidentityfile
で指定するときに、合わせてidentitiesonly yes
を指定することで回避できるようです。
host gitlab.local
identityfile ~/.ssh/id_gitlab
identitiesonly yes
このようにすることで、接続の際にはidentityfile
で指定した鍵だけで接続が試みられるようになり、その結果、エラーが発生しなくなりました。