RedHat Enterprise Linuxでパスワードを複数回間違えたらロックをかける、ということをさせる場合、RHEL5,RHEL6の情報だとpam_tally2を使う、というのが出てくる。
RHEL7だとpam_faillockを使う、という話も出てくる。
サポートサイト情報「How to lock out a user to login a system after a set number of failed attempts in Red Hat Enterprise Linux using pam_tally/pam_tally2」
RHEL7の関連ドキュメント「第4章 ツールとサービスを使用したシステム強化」
でも、RHEL7にはpam_tally2も入っていて使えそうな感じがする・・・
使えるのかなぁ?と思って試したところ、とりあえずつかえはしました。
ただ・・・こういう動作は普通なんだろうか?という動きをしているところが・・・
・pam_tally2のFailuresカウントはpam_tally2 -rでリセットするか、該当ユーザがログインに成功するかでカウントが0になる
・unlock_timeを過ぎてもpam_tally2のFailuresカウントは自動リセットされず継続する
・「passwd -S ユーザ」でロックされているかの確認ができない。pam_faillockを使った場合でもpasswd -Sは使えない
・pam_tally2でロックされている場合は /var/log/secure に下記のような出力がある
Nov 22 18:35:21 linuxtest <authpriv.notice> login:pam_tally2(login:auth): user root (0) tally 7, deny 5
・コンソールログイン時、pam_tally2によりロックされている場合、下記のような表示となる
ホスト名 login: <ユーザ名> Account locked due to <カウント> failed logins Password:
ここで、さらに間違うとカウントは増加していく。
unlock_timeが設定されている場合、時間経過後、1回目の試行で成功すれば問題ない。
しかし、そこでさらにパスワードを間違うと、前回のFailuresカウントがリセットされず、カウントが継続して増えてしまう。