为什么openldap密码策略pwdMinLength在Ubuntu 14.04上不起作用?

我已经定义了openldap密码策略覆盖pwdMinLength: 9不起作用,我仍然能够创build密码less于9个字符的用户,在Ubuntu 14.04上的OpenLDAP密码密码策略覆盖

  dn: cn=MyOrgPPolicy,ou=Policies,dc=zarigatongy,dc=youtube.com cn: MyOrgPPolicy objectClass: pwdPolicy objectClass: device objectClass: top pwdAttribute: userPassword pwdMaxAge: 3024000 pwdExpireWarning: 1814400 pwdInHistory: 4 pwdCheckQuality: 1 pwdMinLength: 9 pwdMaxFailure: 4 pwdLockout: TRUE pwdLockoutDuration: 600 pwdGraceAuthNLimit: 0 pwdFailureCountInterval: 0 pwdMustChange: TRUE pwdAllowUserChange: TRUE pwdSafeModify: FALSE 

其他pilicies工作正常,例如失败的尝试用户由于pwdMaxFailure: 4被lockingpwdMaxFailure: 4

创builduser.ldif文件来创build用户

 dn: uid=test123,ou=Users,dc=zarigatongy,dc=youtube.com cn: test123 mail: [email protected] objectclass: inetOrgPerson objectclass: top sn: test123 title: Demo User uid: test123 userpassword: test1 

您提供pwdCheckQuality = 1,如果由于某种原因无法检查密码,将接受该密码。 pwdMinLength只有在密码未被散列的情况下才有效。 所以如果无法检查MingLength,密码将被接受。

在创build密码时,最有可能传递给服务器一个哈希密码。 http://linux.die.net/man/5/slapo-ppolicy应该有所帮助,特别是ppolicy_hash_cleartext