RedHat Linux で過去に使われたパスワードの使用制限




RedHat Linux で過去に使われたパスワードの使用を制限する方法は次の通り。

/etc/pam.d/system-auth でパスワードについての設定行を以下のように変更する。

過去 2 回の内に使用したパスワードを使えないように設定するために、
remenber=2 を追記する。

○変更前

password    sufficient    pam_unix.so md5 shadow nullok try_first_pass use_authtok

○変更後

password    sufficient    pam_unix.so md5 shadow nullok try_first_pass use_authtok remember=2

これにより、以下のような動作となる。

ある一般ユーザが過去に次の順番でパスワードを使用したとする。

パスワードA
パスワードB
パスワードC
パスワードD

現在はパスワードDを使用中。

この状態で passwd コマンドで次の順番でパスワード変更を試して、
過去何回分のパスワードが禁止されるかを確認する。

パスワードC ×
パスワードB ×
パスワードA ○

remember=2 と指定したので、過去 2 回分のパスワードの使用が
禁止されていることが確認できた。

ちなみに、禁止範囲のパスワードに変更しようとした際のエラーメッセージは
以下の通り。

BAD PASSWORD: has been already used

過去のパスワードは /etc/security/opasswd に保管される。
もちろん暗号化されている。

過去のパスワード履歴を初期化したい場合は、
/etc/security/opasswd に /dev/null を書き込んで空にすれば良い。

# cat /dev/null > /etc/security/opasswd