我目前正在尝试 PAM,特别是 pam_cracklib。我在设置最小密码长度和特定字符类型的信用时遇到了一些问题。我passwd
当前读取的配置文件
password required pam_cracklib.so minlen=3 lcredit=3
最初我有
password required pam_cracklib.so minlen=3
两者都不允许我输入任何类型的三个(或四个或五个或六个)字符密码(更不用说所有小写字符)并允许告诉我密码太短。
BAD PASSWORD: it is WAY too short
我尚未在其他地方/文档中找到答案。这是怎么回事?
更新: 我运行的是 Ubuntu 18.04
pam.d
上面几行是for中配置文件中的所有内容passwd
我在不同的机器上尝试过,结果相同。两者都运行 18.04,但我不认为它特定于任何特定配置。
答案1
我没有足够仔细地阅读文档。
新密码可接受的最小大小(如果未禁用积分,则加一,这是默认值)。除了新密码中的字符数之外,还为每种不同类型的字符(其他、大写、小写和数字)给出信用(长度+1)。此参数的默认值是 9,这对于所有相同类型字符的旧式 UNIX 密码来说非常有用,但可能太低而无法利用 md5 系统的附加安全性。请注意,Cracklib 本身有一对长度限制,一个是硬编码的“太短”限制 4,另一个是定义的限制 (6),将在不参考 minlen 的情况下进行检查。如果您希望密码长度短至 5 个字符,则不应使用此模块。
我试图绕过硬编码限制。