Я установил наложение, настроил политику по умолчанию, я вижу в syslog
то, что на политику ссылаются, но это, кажется, не осуществляется.
А именно, я проверял pwdMinLength
из 10. Однако я могу изменить пароль на что-либо 6 символов или дольше. Я смешал с slapd
конфигурация, pam
, ldap.conf
... Я просто не могу понять это.
Вот мой /etc/pam.d/common-passwd
:
password [success=2 default=ignore] pam_unix.so obscure sha512
password [success=1 user_unknown=ignore default=die] pam_ldap.so
password requisite pam_deny.so
password required pam_permit.so
Вот мое наложение:
root@ldap:/etc/ldap/slapd.d/cn=config/olcDatabase={1}hdb# cat olcOverlay\=\{0\}ppolicy.ldif
# AUTO-GENERATED FILE - DO NOT EDIT!! Use ldapmodify.
# CRC32 e13ac822
dn: olcOverlay={0}ppolicy
objectClass: olcOverlayConfig
objectClass: olcPPolicyConfig
olcOverlay: {0}ppolicy
olcPPolicyDefault: cn=default,ou=policies,dc=mydomain,dc=local
olcPPolicyUseLockout: FALSE
olcPPolicyForwardUpdates: FALSE
structuralObjectClass: olcPPolicyConfig
entryUUID: 73ace97c-bd97-1033-89a7-83eeab8cfd47
creatorsName: cn=config
createTimestamp: 20140821155626Z
olcPPolicyHashCleartext: TRUE
entryCSN: 20140822194949.226250Z#000000#000#000000
modifiersName: cn=admin,cn=config
modifyTimestamp: 20140822194949Z
root@ldap:/etc/ldap/slapd.d/cn=config# grep -r pol *
cn=module{0}.ldif:olcModuleLoad: {1}ppolicy
cn=schema/cn={4}ppolicy.ldif:dn: cn={4}ppolicy
cn=schema/cn={4}ppolicy.ldif:cn: {4}ppolicy
cn=schema.ldif: w policy state updates to be forwarded via updateref' SYNTAX OMsBoolean SINGL
olcDatabase={1}hdb/olcOverlay={0}ppolicy.ldif:dn: olcOverlay={0}ppolicy
olcDatabase={1}hdb/olcOverlay={0}ppolicy.ldif:olcOverlay: {0}ppolicy
olcDatabase={1}hdb/olcOverlay={0}ppolicy.ldif:olcPPolicyDefault: cn=default,ou=policies,dc=mydomain,dc=local
Here is the policy:
dn: ou=policies,dc=mydomain,dc=local
objectClass: organizationalUnit
objectClass: top
ou: policies
structuralObjectClass: organizationalUnit
entryUUID: 02bd96f4-b6ac-1033-8430-5db15c0b2efc
creatorsName: cn=admin,dc=mydomain,dc=local
createTimestamp: 20140812203558Z
entryCSN: 20140812203558.385280Z#000000#000#000000
modifiersName: cn=admin,dc=mydomain,dc=local
modifyTimestamp: 20140812203558Z
dn: cn=default,ou=policies,dc=mydomain,dc=local
objectClass: pwdPolicy
objectClass: device
objectClass: top
pwdAttribute: userPassword
pwdMaxAge: 3024000
pwdExpireWarning: 1814400
pwdInHistory: 3
pwdMaxFailure: 3
pwdLockout: TRUE
pwdLockoutDuration: 600
pwdGraceAuthNLimit: 0
pwdFailureCountInterval: 0
pwdMustChange: TRUE
pwdAllowUserChange: TRUE
structuralObjectClass: device
entryUUID: 29977c86-b74c-1033-8432-5db15c0b2efc
creatorsName: cn=admin,dc=mydomain,dc=local
createTimestamp: 20140813154223Z
pwdMinLength: 10
cn: default
pwdCheckQuality: 2
pwdSafeModify: TRUE
entryCSN: 20140822193458.399642Z#000000#000#000000
modifiersName: cn=admin,dc=mydomain,dc=local
modifyTimestamp: 20140822193458Z
Я был вокруг и вокруг на этом. Любая справка ценилась бы
Моя установка политики подобна Вашей конфигурации, и это работает на меня. Я думаю, что все это зависит от того, как Вы тестируете свою политику паролей.
я протестировал его при помощи:
(пароль user11 изменяется):
ldappasswd-x-h человечность-vostro-D "cn=user11, ou=Users, dc=yourdomain, dc=net"-W-S "cn=user11, ou=Users, dc=yourdomain, dc=net" (отмечают-D "cn=user11...")
phpLdapAdmin, вошел в систему как user11, очищенный кэш, измененный самосервисный пароль пароля
(сценарий PHP, который работает на apache2 сервере), вошел в систему как user11. Удостоверьтесь, что в config.inc.php у Вас есть $who_change_password = "пользователь"; (не "менеджер").
похоже, что rootdn (менеджер/администратор) обходит все политики паролей поэтому при использовании rootdn (%ADMIN, %) составляют пароль пользователя, изменяющий Вас, не будет видеть Вашу pwdMinLength осуществленную политику.
можно включить контроль openLDAP и выполнить эту команду, чтобы удостовериться, что наложение политики правильно загружается: ldapsearch-x-D dc=yourdomain, dc=net-w-b 'cn=Overlays, cn=Monitor'-s базируются' (objectClass = )'' ' '+