/etc/pam.d/common-password ファイルには次の設定があります。
password requisite pam_cracklib.so retry=3 lcredit=-1 ucredit=-1 dcredit=-1
password [success=1 default=ignore] pam_unix.so obscure use_authtok try_first_pass sha512
password requisite pam_deny.so
password required pam_permit.so
password optional pam_ecryptfs.so
ルートが他のユーザーに対して脆弱なパスワードを設定できるのはなぜですか?
root@kali:~# LANG=C passwd kali
New password:
BAD PASSWORD: it is WAY too short
BAD PASSWORD: is a palindrome
Retype new password:
passwd: password updated successfully
私はこれを可能にするpamの規則を見ませんでした。私は何を逃したことがありませんか?
ベストアンサー1
PAMの最新バージョン(およびRHEL 6にバックポートされている)では、pam_cracklib
オプションを追加できますenforce_for_root
。この機能はデフォルトでオフになっています。行に追加するだけです。
もちろん、SELinuxのような他の多くの制限なしに、ルートは常にPAMをバイパスし、パスワードを別の方法(例えば適切なファイルに直接書き込む)で設定することができます。確かな限界。
スタックがこの種のことを処理すると期待するのではなく、なぜこのように動作しますか?ただ柔軟性の問題だと思います。特に、PAM制御値が単に必須/必須/十分/選択の場合 - 上記のpam_rootok
制御値を設定する必要があります。sufficient
みんなルートが無視されるかどうかを確認しますが、それらだけを無視します。ルートとして成功するオプションが組み込まれているので、pam_cracklib
これは必要ありません(ルートがスキャンをスキップすることを許可する必要があると仮定すると、これはあなたの場合ではありませんが明らかにそうです)。