(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

【Linux】SSHログイン失敗でrootユーザがロックされた際の挙動

スポンサーリンク

はじめに

Red Hat Enterprise Linux Serverにてrootユーザのパスワードを連続で間違えたことによるロックが起こりました。
せっかくなのでその際の挙動をメモしておきます。

コマンド実行環境
  • Red Hat Enterprise Linux Server 7.5 (Maipo)

前提

アカウントのロックが起きるためには/etc/pam.d配下にあるpassword-authsystem-auth

auth required pam_faillock.so preauth silent audit even_deny_root deny=5 unlock_time=3600
...
auth [default=die] pam_faillock.so authfail audit even_deny_root deny=5 unlock_time=3600
...
account required pam_faillock.so

という文言があるはずです。

数値の意味は記載の通りで、rootユーザでさえ5回パスワードに間違うと3600秒(=1時間)ロックがかかります。

実際にロックがかかった場合

パスワードが間違えば/var/log/secureのファイルに以下のログが書き込まれます。

... Failed password for root from 10.10.10.10 port 57158 ssh2

そしてロックがかかると以下メッセージが同ログに書き込まれます。

... pam_faillock(sshd:auth): Consecutive login failures for user root account temporarily locked
... Failed password for root from 10.10.10.10 port 57158 ssh2
... error: maximum authentication attempts exceeded for root from 10.10.10.10 port 57158 ssh2

そのような場合に一般ユーザからrootにスイッチしようとすると以下のエラーとなります。

su : Authentication failure

ちなみにロックされていない場合はパスワードミスをすると以下のエラーとなります。

su Permission denied

この標準出力の違いで、現在ロックされているか否かが確認できました。

終わりに

rootパスワードの設定を忘れた場合は最終的な手段として以下のような強制変更も可能ですがパスワードによるログインが求められる場合は本設定に抵触する可能性がありますのでご注意ください。

password-authファイルは読み取り権限であれば全ユーザに付与されているので、パスワードでログインする前にrootに対してロックがかかる設定かどうかを確認してみることをおススメします。

以上、ご参考になれば幸いです。