RHEL 5 - User can't change password for OpenLDAP account
Linux - ServerThis forum is for the discussion of Linux Software used in a server related context.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
RHEL 5 - User can't change password for OpenLDAP account
Hi All,
I setup Openldap server on RHEL5, import info from /etc/password into LDAP database. Now I can log on using Openldap accounts (user1), but I don't know how to change password. Could you show me how to do that ? Command "passwd" only works with local accounts.
Thank you and best regards.
-------------------------------
Last login: Tue Nov 24 23:15:48 2009
Could not chdir to home directory /home/user1: No such file or directory
-bash-3.2$ passwd
Changing password for user user1.
passwd: Authentication token manipulation error
-bash-3.2$
I tried using the PAM settings from the mandriva article, but no luck.
I still get:
LDAP password information update failed: Insufficient access.
(The problem seems to have been around for almost 10 years (doing a google search), but just can't find a solution. I've modified the slapd.conf to allow self access to userpassword, which seems to be what everyone recommends, but still no luck).
Hmmm. Can't quite recall, but I believe there is something about how LDAP is setup on the client, whether the client has root/admin access for such things. Unfortunately, OpenLDAP is a much modified beast, so you may need more expert assistance than I can offer you.
A suggestion: Try setting up a test client, maybe a vm, and configure it for LDAP access to your server, and note all the steps you need to get it working. The client may be the problem...
Also, just to check, what type of clients are bound to the server? Linux-distro, Windows?
I found my problem. When changing the ACL, I had originally copied the default line from the main section of the file into my dabatase section. That line included a space as the begining. I also included a space at the start my access line as well (since the stuff that was already there had it).
I needed to delete the space before the 'access' directive, once I did this for both entries, the problem went away, and user accounts are able to change passwords:
Code:
access to attrs=userPassword,shadowLastChange
by self write
by anonymous auth
by * none
access to *
by self write
by * read
(The space means that it is a continuation of the previous line, so for 'by' lines it is appropriate).
I found my problem. When changing the ACL, I had originally copied the default line from the main section of the file into my dabatase section. That line included a space as the begining. I also included a space at the start my access line as well (since the stuff that was already there had it).
I needed to delete the space before the 'access' directive, once I did this for both entries, the problem went away, and user accounts are able to change passwords:
Code:
access to attrs=userPassword,shadowLastChange
by self write
by anonymous auth
by * none
access to *
by self write
by * read
(The space means that it is a continuation of the previous line, so for 'by' lines it is appropriate).
thanks,
James
palladin68
thanks a lot
your code
Code:
access to attrs=userPassword,shadowLastChange
by self write
by anonymous auth
by * none
access to *
by self write
by * read
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.