さくらのレンタルサーバでSSH接続時にエラー

■エラーの内容
こんなのが出ました。
$ ssh <ユーザー名>@<ユーザー名>.sakura.ne.jp

Received disconnect from <IPアドレス>: 2: Too many authentication failures for <ユーザー名>
なんじゃらほいと思って、違うIPアドレスのクライアントから接続したらうまくいった。
これは、何度もエラーしていると、IPアドレスで弾いちゃうソフトが入っているのかな?と問い合わせてみたら、IPで弾いてないんですけどとの返答。

さて、困った。
多分、僕の設定が悪い。

んで、いろいろ試しているうちになんとなくわかった!

■調査の流れ
接続に失敗するクライアントのユーザーのsshのconfigファイルが以下の様になってた。
# ~/.ssh/config

IdentityFile ~/.ssh/id_rsa.hogehoge1
IdentityFile ~/.ssh/id_rsa.hogehoge2
IdentityFile ~/.ssh/id_rsa.hogehoge3
IdentityFile ~/.ssh/id_rsa.hogehoge4
IdentityFile ~/.ssh/id_rsa.hogehoge5
IdentityFile ~/.ssh/id_rsa.hogehoge6
IdentityFile ~/.ssh/id_rsa.hogehoge7
id_rsa.hogehoge7だけが上手くいかないわけ。
んで、もしかしたらと思って、id_rsa.hogehoge7を一番上に持ってきて、再度チャレンジ。
# ~/.ssh/config

IdentityFile ~/.ssh/id_rsa.hogehoge7
IdentityFile ~/.ssh/id_rsa.hogehoge1
IdentityFile ~/.ssh/id_rsa.hogehoge2
IdentityFile ~/.ssh/id_rsa.hogehoge3
IdentityFile ~/.ssh/id_rsa.hogehoge4
IdentityFile ~/.ssh/id_rsa.hogehoge5
IdentityFile ~/.ssh/id_rsa.hogehoge6
これで、ちゃんと接続できた!
変わりに、id_rsa.hogehoge6が接続出来なくなったのだった。
これで謎が解けた!

■今回のエラーの全貌
・このようなconfigファイルの書き方だと、sshコマンドさんは上から何度もアクセスして試してみる

・リモート側が6回までは失敗してもOKだけど、7回目からは無視

・失敗し過ぎで切断エラー

■対策
# ~/.ssh/config

Host hogehoge1.sakura.ne.jp
    IdentityFile ~/.ssh/id_rsa.hogehoge1

Host hogehoge2.sakura.ne.jp
    IdentityFile ~/.ssh/id_rsa.hogehoge2

Host hogehoge3.sakura.ne.jp
    IdentityFile ~/.ssh/id_rsa.hogehoge3

Host hogehoge4.sakura.ne.jp
    IdentityFile ~/.ssh/id_rsa.hogehoge4

Host hogehoge5.sakura.ne.jp
    IdentityFile ~/.ssh/id_rsa.hogehoge5

Host hogehoge6.sakura.ne.jp
    IdentityFile ~/.ssh/id_rsa.hogehoge6

Host hogehoge7.sakura.ne.jp
    IdentityFile ~/.ssh/id_rsa.hogehoge7

まあ、ちゃんとホスト名と認証ファイルを紐付けしてやれってことね。
あんまりさくらとは関係ないけど、さくらだと6回までは我慢してくれるってことだな。

コメント

アーカイブ

2012

  • 01
  • 02
  • 03
  • 04
  • 05
  • 06
  • 07
  • 08
  • 09
  • 10
  • 11
  • 12

2011

2010

2009

2008

2007

コンタクト

longkey1[at]gmail[dot]com