Kev*_*wen 20
密码复杂性由pam_cracklib模块强制执行。
为了修改本地机器的密码策略,您需要修改您的/etc/pam.d/common-password文件。
从一个终端窗口(Ctrl+ Alt+ T),输入以下命令:
sudo -i gedit /etc/pam.d/common-password
Run Code Online (Sandbox Code Playgroud)
pam_unix.so将以下行添加到文件中(之前或主要用于身份验证的 PAM 模块,如手册页中的示例所示)并保存文件:
password requisite pam_cracklib.so ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
Run Code Online (Sandbox Code Playgroud)
该语句实现了以下密码要求:
dcredit == 数字 ucredit == 大写字符 lcredit ==小写字符 ocredit== 其他字符(特殊字符,包括! , @ # $ %)这应该满足您的要求。
您还可以使用变量minlength并retries进一步限制密码要求。
这是以这种方式修改密码策略的另一个很好的例子是在/etc/pam.d/common-password文件中放置以下行:
password requisite pam_cracklib.so retry=3 minlen=10 difok=3 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
Run Code Online (Sandbox Code Playgroud)
此条目将设置最多 3 次尝试以获取最小长度为 10 个字符的可接受密码。
这为用户设置了与上一个密码不同的至少三个字符的要求。
这也满足了密码中至少包含数字、小写字符和大写字符各一个的要求。
另请参阅有关在 linux 中设置更强密码策略规则的文章。