ずいぶん更新が滞ってしまいました。。今回はIDのロックに関するTipsです。
目次
PAM認証を使っているか確認
PAM(Pluggable Authentication Modules)認証を利用している場合、パスワード相違でログイン失敗した場合にもpasswdコマンドで見てもロック状態になっていません。PAM認証とは、各サービス(sshやftpなど)でログイン認証機能を用意すると大変なので、共通で使える認証機能のようなものと思ってください。PAMについて説明すると長くなるので割愛します。
SSHでのログインでPAM認証を実施しているか確認する方法
sshdの設定(/etc/ssh/sshd_config)でUsePAMディレクティブを確認すれば分かります。以下の例ではyesなのでPAM認証を使っていることが分かります。
$ sudo grep UsePAM /etc/ssh/sshd_config
# WARNING: 'UsePAM no' is not supported in Red Hat Enterprise Linux and may cause several
UsePAM yes
IDのロック状態確認
以下2つを確認してください。
PAM認証でのログイン失敗回数の確認
以下例の0のところが失敗回数です。コマンドは pam_tally2 -u [ユーザID] です。
$ sudo pam_tally2 -u hogehoge
Login Failures Latest failure From
hogehoge 0
この数字がPAMのdeny設定回数以上だった場合、ロックしていることになります。PAMのdeny回数の設定は/etc/pam.dディレクトリ配下の設定を確認してください。
passwdコマンドでロック状態を確認
passwdコマンドでロック状態を確認します。以下例のように2カラム目がPSの場合はロック状態ではありません。
# passwd -S hogehoge
hogehoge PS 2023-06-12 0 99999 7 -1 (パスワード設定済み、SHA512 暗号化。)
ロック状態の場合、このようになります。また、ロック状態かどうかは/etc/shadowを確認することでも分かります。shadowの2カラム目が”!!“で始まっている場合、ロックがかかっていることを意味しています。
# passwd -S hogehoge
hogehoge LK 2023-06-12 0 99999 7 -1 (パスワードはロック済み。)
# grep hogehoge /etc/shadow
hogehoge:!!$6$nc.kfyMr$OVkelvej71XI9mNxuybN9jz3MHnAkv/EqzRIZMKONW1chDLdgLFO2gb49hLay31GM/OdRZz5WIbqoZmG0VivW1:19520:0:99999:7:::
IDのロック解除
ロック解除は以下のように実施します。
PAMのログイン失敗回数をクリア
失敗回数を–resetオプションでクリアするだけです。コマンドは以下。
$ sudo pam_tally2 -u hogehoge --reset
LK状態の解除
passwd -SでLK状態になっているIDは以下の-uオプションで解除します。
$ sudo passwd -S hogehoge
hogehoge LK 2023-06-12 0 99999 7 -1 (パスワードはロック済み。)
$ sudo passwd -u hogehoge
ユーザー hogehoge 用のパスワードをロック解除。
passwd: 成功
$ sudo passwd -S hogehoge
hogehoge PS 2023-06-12 0 99999 7 -1 (パスワード設定済み、SHA512 暗号化。)
補足
PAM認証でログイン失敗回数が超過してロックしている場合、passwd -Sコマンドで確認しても状態はLKになっていません。なので、両方で確認しておくことが望ましいですね。(運用上IDをロックかけている場合、LKになっていることもあるので)
コメント