RHEL7でpam_tally2が使えるのか?


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 ユーザ」でロックされているかの確認ができない

なお、「passwd -S ユーザ」によるロック状態のチェックは、pam_faillockを使った場合でも使えません。

実際の動作について

とりあえず、pam_tally2設定を行い、パスワード入力を規定回数以上間違えます。

このようなpam_tally2によりロックされている場合、コンソールログインをしようとすると下記のような表示となります。

ホスト名 login: <ユーザ名>
Account locked due to <カウント> failed logins
Password:

システムのログとしては /var/log/secure に対して下記のような出力があります。

Nov 22 18:35:21 linuxtest <authpriv.notice> login:pam_tally2(login:auth): user <ユーザ名>(<UID>) tally 7, deny 5

ここで、さらに間違うとカウントは増加していきます。

unlock_timeが設定されている場合、 unlock_timeの時間が経過した後、1回目の試行でログインに成功すると、カウントが0に戻ります。

しかし、ここでさらにパスワードを間違えてしまうと、 前回のFailuresカウントがリセットされず、カウントが継続して増えていきます。
そして、失敗回数超過がすぐに適用されてしまうため、再度ロックされてしまいます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください