centos中同时设置两个pam密码模块的问题

centos中同时设置两个pam密码模块的问题

我想防止使用最后的密码并保持密码复杂性。

但如果我同时使用pam_pwquality.so和pam_pwhistory.so,它就无法正常工作。

例如,我将最小长度设置为 8,并禁用 system-auth 文件中的最后两个密码。

password    requisite     pam_pwquality.so local_users_only retry=3 minlen=8
password    requisite     pam_pwhistory.so remember=2 retry=3

如果我输入最后一个符合复杂性的密码,pwhistory 会阻止我,但在此之后,可以在不复杂的情况下更改密码。 -> 如果检查传递到第二个模块,第一个模块是否会失效?

当 pwquality 和 pwhistory 颠倒时,情况类似。

password    requisite     pam_pwhistory.so remember=2 retry=3
password    requisite     pam_pwquality.so local_users_only retry=3 minlen=8

其工作原理如下。

$passwd

Enter the last password -> failed by pwhistory module

Enter short password -> failed by pwquality module

Enter the last password -> success regardless of pwhistory module

我不能同时检查复杂性和最后的密码条件吗?

答案1

我认为在与其他密码更改模块use_authtok堆叠时需要使用该参数(例如,它更改原始选择的密码):pwhistorypwquality

password    requisite     pam_pwquality.so local_users_only retry=3 minlen=8
password    requisite     pam_pwhistory.so remember=2 retry=3 use_authtok

pwhistory您可以使用以下命令查看该模块的手册页

man pam_pwhistory

手册页摘录:

使用_authtok

当密码更改时,强制模块使用先前堆叠的密码模块提供的新密码(这在下面记录的 pam_cracklib 模块的堆叠示例中使用)。

相关内容