[Date Prev][Date Next]
[Chronological]
[Thread]
[Top]
Re: passwd fails
On Thursday, 2 December 2010 15:26:47 Holger Schier wrote:
> Hi guys,
>
> my ldapserver works fine now, but the first users are arriving.
Can you provide some configuration details? E.g., /etc/pam.d/passwd and any
other pam files it includes or stacks.
> The normal user should change their own password. So, everyone thinks of
> passwd in the shell.
>
> But:
> LDAP password information update failed: Insufficient access
> Must supply old password to be changed as well as new one
>
> Here is my ACL:
>
> olcAccess: {0} to
> attrs=pwdChangedTime,pwdAccountLockedTime,pwdFailureTime,pwdH
> istory,pwdGraceUseTime,pwdReset
> by * none
>
> olcAccess: {1}to attrs=userPassword
> by self write
> by * auth
>
> olcAccess: {2}to attrs=shadowLastChange
> by self write
> by dn.base="cn=BINDUSER,dc=MY,dc=DC" read
> by users read
> by * auth
>
> olcAccess: {3}to attrs=userPKCS12
> by self read
> by * none
>
> olcAccess: {4}to *
> by dn.base="cn=BINDUSER,dc=MY,dc=DC" read
> by * none
>
> I tried the same with
> olcAccess: {4}to *
> by * read
>
> and allowing anonymous binds, but same error.
> passwd seems to try to bind with the binduser and then to read and to
> write the userPassword, but only has auth access.
Are you using pam_ldap with rootbinddn? pam_ldap makes some stupid assumptions
if you use rootbinddn. rootbinddn is used for two different reasons:
-allow you to hide the password (in /etc/ldap.secret, which doesn't need to be
world readable)
-allow the root user to change the password of LDAP users without knowing
their LDAP password
IMHO, these should be two separate concepts. I would like to be able to secure
to some degree the host's access to the DSA (even in environments without
GSSAPI available), but I also don't want to give the host elevated privileges
in the DIT ...
See function _update_authtok around line 2967 of pam_ldap.c
Regards,
Buchan
- References:
- passwd fails
- From: Holger Schier <hschier@mathematik.uni-mainz.de>