本来なら SSH での root でログインを禁止したいところですが、ServersMan@VPSでは SSH 以外でのログイン手段が無いので、root ユーザのみ公開鍵認証だけは通して、パスワード認証は無効にする設定を行うことにしました。
一般ユーザはパスワード認証を許可します。
参考にしたのは以下のページ。
sshd_config の PermitRootLogin に without-password を設定するとパスワード認証以外でのみログインできるようになるらしいです。
/etc/ssh/sshd_config の以下の項目を変更しました。
PermitRootLogin without-password PubkeyAuthentication yes
以下の設定はデフォルトで有効なので設定ファイルを変更していなければそのままで OK でした。
PasswordAuthentication yes UsePAM yes
設定を変更したら sshd を再起動
# service sshd restart
別のターミナルから root でパスワード認証の場合はログインできないことを確認します。
ここで注意。確認は別のターミナルで行ってください。最悪 root だけでなく他のユーザでもログインできなくなる可能性もあるので、確認が取れるまではログインしているセッションを 1 つは残しておいたほうが安全です。
ちなみに、ajaxterm も ssh 経由で接続しているため、この設定を行うと ajaxterm 経由での root ログインも不可になります。