ocreditにマイナスつけ忘れてた!
/etc/pam.d/system-authと/etc/pam.d/password-authの違い
/etc/pam.d/system-authは、パスワード変更を行う際の認証
/etc/pam.d/password-authはsshなどのミドルウェアのユーザ認証と思われる。
#変更 vi /etc/pam.d/system-auth
①11-14行目のハイライト行を追記する。
パスワードを3回誤った場合、10分間ロックアウトする意味の記述。
コンソールからのログインに使用したい場合は/etc/pam.d/system-authにも記載するが、AWSでは不要(/etc/pam.d/password-authだけで良い)な気もする。
②23行目のハイライト行を変更する。
「password requisite」を「try_first_pass local_users_only retry=3 minlen=8 dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 enforce_for_root」という記述に変更する。
それぞれの意味は以下の通り。
項目 | 説明 |
---|---|
try_first_pass | あるサービスに対するPAM認証が2行存在する場合にtry_first_passを用いれば、PAMが処理してくれるおかげで入力は1回で済む。 |
local_users_only | /etc/passwdに含まれるユーザーのみ対象とする。 |
retry | パスワード変更時の試行回数を指定 |
minlen | パスワード全体でN文字以上でなければならない |
dcredit | パスワードに数字が最低含まれていなければならない数を指定。 minlenと併用の場合は-をつける |
ucredit | パスワードに大文字の英字が最低含まれていなければならない数を指定。 minlenと併用の場合は-をつける |
lcredit | パスワードに小文字の英字が最低含まれていなければならない数を指定。 minlenと併用の場合は-をつける |
ocredit | パスワードに記号が最低含まれていなければならない数を指定。 minlenと併用の場合は-をつける |
enforce_for_root | rootでパスワード変更する場合も上記の条件を満たさないと変更できないようにする。 |
③24行目のハイライト行を変更する。
「remember=5」を追加している。
過去5回分に使用したパスワードの再使用を禁止するといった意味の記述。
# Generated by authselect on Sat Oct 31 05:07:48 2020 # Do not modify this file manually. auth required pam_env.so auth required pam_faildelay.so delay=2000000 auth [default=1 ignore=ignore success=ok] pam_usertype.so isregular auth [default=1 ignore=ignore success=ok] pam_localuser.so auth sufficient pam_unix.so nullok try_first_pass auth [default=1 ignore=ignore success=ok] pam_usertype.so isregular auth sufficient pam_sss.so forward_pass auth required pam_faillock.so preauth silent audit deny=3 unlock_time=600 auth [success=1 default=bad] pam_unix.so auth [default=die] pam_faillock.so authfail audit deny=3 unlock_time=600 auth sufficient pam_faillock.so authsucc audit deny=3 unlock_time=600 auth required pam_deny.so account required pam_unix.so account sufficient pam_localuser.so account sufficient pam_usertype.so issystem account [default=bad success=ok user_unknown=ignore] pam_sss.so account required pam_permit.so password requisite pam_pwquality.so try_first_pass local_users_only retry=3 minlen=8 dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 enforce_for_root password sufficient pam_unix.so sha512 shadow nullok remember=5 try_first_pass use_authtok password sufficient pam_sss.so use_authtok password required pam_deny.so session optional pam_keyinit.so revoke session required pam_limits.so -session optional pam_systemd.so session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid session required pam_unix.so session optional pam_sss.so
# Generated by authselect on Sat Oct 31 05:07:48 2020 # Do not modify this file manually. auth required pam_env.so auth required pam_faildelay.so delay=2000000 auth [default=1 ignore=ignore success=ok] pam_usertype.so isregular auth [default=1 ignore=ignore success=ok] pam_localuser.so auth sufficient pam_unix.so nullok try_first_pass auth [default=1 ignore=ignore success=ok] pam_usertype.so isregular auth sufficient pam_sss.so forward_pass auth required pam_deny.so account required pam_unix.so account sufficient pam_localuser.so account sufficient pam_usertype.so issystem account [default=bad success=ok user_unknown=ignore] pam_sss.so account required pam_permit.so password requisite pam_pwquality.so try_first_pass local_users_only password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok password sufficient pam_sss.so use_authtok password required pam_deny.so session optional pam_keyinit.so revoke session required pam_limits.so -session optional pam_systemd.so session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid session required pam_unix.so session optional pam_sss.so