Difok 在 PWQuality 中强制执行密码规则的 root 例外

问题描述 投票:0回答:1

我有一项任务需要强制执行强密码策略。我必须执行的规则如下 /etc/pam.d/common-password 中。 系统详细信息如下 Linux LVMGroup 5.10.0-21-amd64 #1 SMP Debian 5.10.162-1 (2023-01-21) x86_64 GNU/Linux

Here are the exact requirements:
• Your password must be at least 10 characters long. It must contain an uppercase
letter, a lowercase letter, and a number. Also, it must not contain more than 3
consecutive identical characters.
•The password must not include the name of the user.
**• The following rule does not apply to the root password: The password must have
at least 7 characters that are not part of the former password.**
• Of course, your root password has to comply with this policy.

这就是我想出来的

password requisite pam_pwquality.so retry=3 minlen=10 ucredit=-1 dcredit=-1 lcredit=-1 maxrepeat=3 reject_username difok=7 enforce_for_root

从描述中可以看出,任务的要求之一是添加例外,因此除 difok=7 之外的所有规则都适用于 root。

如何免除difok对root用户的适用?

这是配置文件

#
# /etc/pam.d/common-password - password-related modules common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of modules that define the services to be
# used to change user passwords.  The default is pam_unix.

# Explanation of pam_unix options:
# The "yescrypt" option enables
#hashed passwords using the yescrypt algorithm, introduced in Debian
#11.  Without this option, the default is Unix crypt.  Prior releases
#used the option "sha512"; if a shadow password hash will be shared
#between Debian 11 and older releases replace "yescrypt" with "sha512"
#for compatibility .  The "obscure" option replaces the old
#`OBSCURE_CHECKS_ENAB' option in login.defs.  See the pam_unix manpage
#for other options.

# As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
# To take advantage of this, it is recommended that you configure any
# local modules either before or after the default block, and use
# pam-auth-update to manage selection of other modules.  See
# pam-auth-update(8) for details.

# here are the per-package modules (the "Primary" block)
password    requisite           pam_pwquality.so retry=3 minlen=10 ucredit=-1 dcredit=-1 maxrepeat=3 reject_username difok=7 enforce_for_root
password    [success=1 default=ignore]  pam_unix.so obscure use_authtok try_first_pass yescrypt
# here's the fallback if no module succeeds
password    requisite           pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
password    required            pam_permit.so
# and here are more per-package modules (the "Additional" block)
# end of pam-auth-update config

我已经尝试过enforce_for_root=non_root 像这样但没有成功......

password requisite pam_pwquality.so retry=3 minlen=10 ucredit=-1 dcredit=-1 lcredit=-1 maxrepeat=3 reject_username difok=7 enforce_for_root=non_root

我在手册中找不到如何实现这一点。 有什么建议么? 谢谢

bash terminal passwords debian pam
1个回答
0
投票

那么,解决方案是什么?你是如何想出不同的 root 规则的?

© www.soinside.com 2019 - 2024. All rights reserved.