CentOS 6 で KVM 環境を構築し、自宅で「ドメスティッククラウド」とでも表現するような環境を使っています。

当然、仮想サーバーも自由に作ったり壊したり・・・なんですが、最近になって「CentOS 6 への SSH 接続にやけに時間がかかる」のが気になってました。

症状としては、「SSH で接続しに行くと、パスワードを聞かれるプロンプトが表示されるまでにやけに時間がかかる」というものです。パスワード入力画面がなかなか出ないので先に進めず、体感的に1~2分程度してから表示されて、そこでようやくログインできる、というものです。
2015010600


実際には結構待つことになり、かといってパスワードプロンプトが表示されるまで放っておこうとすると、今度は表示されたことに気付かずに更にしばらく時間が経過してしまい、パスワードを入力してもタイムアウトでログインできない、なんてことも起こってしまいます。


これ、原因は1つではないのですが、自分の場合はどこかのタイミングで SSH の GSSAPI 認証が有効になってしまっていて、それが原因で余計な処理がサーバー側で動いてしまい、 パスワードプロンプトが表示されるまでに時間がかかっていたようでした。

これを回避するにはそのサーバーに root 権限でアクセスして、/etc/ssh/sshd_config ファイルを開いて、GSSAPIAuthentication を off に設定し、最後に sshd を再起動します。これで解決:
# vi /etc/ssh/sshd_config

  :
  :
GSSAPIAuthentication no (yesになっていたらnoに変更して保存する)
  :
  :

# /etc/init.d/sshd restart