|
View:
New views
9 Messages
—
Rating Filter:
Alert me
|
|
|
SLES9 and pam_ldap (LDAP bind instead of search request)How can one authenticate on Suse Linux 9.3 using LDAP bind instead of search requests?
The following post in 2004: http://www.derkeiler.com/Newsgroups/comp.os.linux.security/2004-06/0258.html was never replied to online and wondered if anyone has the answer. I am challenged with this task as well. Thank you for any feedback, BJP |
|
|
Re: SLES9 and pam_ldap (LDAP bind instead of search request)On Donnerstag, 29. November 2007, BJP wrote:
> How can one authenticate on Suse Linux 9.3 using LDAP bind instead of > search requests? > > The following post in 2004: > > http://www.derkeiler.com/Newsgroups/comp.os.linux.security/2004-06/0258.htm >l > > was never replied to online and wondered if anyone has the answer. I am > challenged with this task as well. always do authentication by a LDAP Bind. It does never read the "userPassword" from the LDAP server for authentication. The problem described in the above post might happen, because nss_ldap (!) is able to read the "userPassword" hash from the server and the pam_unix or pam_unix2 (!) takes that hash to verify it against the password typed in by the user. If you have such a problem you can easily verify it by doing a "getent passwd <ldapuser>" on your system. If that returns the password hash amongst its output you should adjust your LDAP server's access controls. -- Ralf |
|
|
Re: SLES9 and pam_ldap (LDAP bind instead of search request)I am VERY new to LDAP on SLES9, with little to no training, so can someone help with which configuration files need to be configured and daemons (re)started? Basically, a step-by-step procedure to connect to a Solaris LDAP server from my SLES9 SP3 server using "bind" instead of "search" request?
Will going into YaST2, then go into Network Services, then LDAP Client Configuration be a quick and easy answer? I actually prefer to know what configuration files are being configured and daemons restarted, so would appreciate the details. Thank you very much, BJP |
|
|
Re: SLES9 and pam_ldap (LDAP bind instead of search request)On Montag, 3. Dezember 2007, BJP wrote:
> I am VERY new to LDAP on SLES9, with little to no training, so can someone > help with which configuration files need to be configured and daemons > (re)started? Basically, a step-by-step procedure to connect to a Solaris > LDAP server from my SLES9 SP3 server using "bind" instead of "search" > request? How do you come to the conclusion that your current setup doesn't use bind? > Will going into YaST2, then go into Network Services, then LDAP Client > Configuration be a quick and easy answer? Yes. That should work. > I actually prefer to know what configuration files are being configured and > daemons restarted, so would appreciate the details. Configfiles: /etc/nsswitch.conf /etc/ldap.conf /etc/pam.d/* or /etc/security/pam_unix2.conf Daemons to restart: at least nscd, probably others that need to be made aware of the changed pam configuration (e.g. sshd, xdm). -- Ralf |
|
|
Re: SLES9 and pam_ldap (LDAP bind instead of search request)Thanks, Ralf.
You asked, How do you come to the conclusion that your current setup doesn't use bind? My answer: Not sure but this is what the LDAP server log displays: [2007-12-04 12:29:25,191] conn=3095 fd=0 slot=0 connection from 10.0.42.17 to 10.0.42.17 [2007-12-04 12:29:25,198] conn=3095 op=0 SRCH base="cn=schema" scope=0 filter="(cn=schema)" [2007-12-04 12:29:25,400] conn=3095 op=0 RESULT err=0 tag=0 nentries=1 etime=202 [2007-12-04 12:29:25,400] conn=3095 op=1 UNBIND [2007-12-04 12:29:25,403] conn=3095 op=1 fd=0 closed - U1 [2007-12-04 12:30:11,336] conn=3096 fd=0 slot=0 connection from 145.2.132.126 to 10.0.42.17 [2007-12-04 12:30:11,339] conn=3096 op=0 BIND dn="" method=0 version=3 [2007-12-04 12:30:11,340] conn=3096 op=0 RESULT err=0 tag=0 nentries=0 etime=0 [2007-12-04 12:30:11,381] conn=3096 op=1 SRCH base="ou=people,ou=intranet,dc=motorola,dc=com" scope=2 filter="(&(objectclass=posixAccount)(uid=poc))" [2007-12-04 12:30:11,413] conn=3096 op=1 RESULT err=0 tag=0 nentries=0 etime=33 [2007-12-04 12:30:11,453] conn=3096 op=2 UNBIND [2007-12-04 12:30:11,453] conn=3096 op=2 fd=0 closed - U1 [2007-12-04 12:30:17,092] conn=3097 fd=0 slot=0 connection from 145.2.132.126 to 10.0.42.17 [2007-12-04 12:30:17,094] conn=3097 op=0 BIND dn="" method=0 version=3 [2007-12-04 12:30:17,095] conn=3097 op=0 RESULT err=0 tag=0 nentries=0 etime=0 [2007-12-04 12:30:17,135] conn=3097 op=1 SRCH base="ou=people,ou=intranet,dc=motorola,dc=com" scope=2 filter="(&(objectclass=posixAccount)(uid=xjc864))" [2007-12-04 12:30:17,140] conn=3097 op=1 RESULT err=0 tag=0 nentries=0 etime=5 [2007-12-04 12:30:23,356] conn=3097 op=2 BIND dn="" method=0 version=3 [2007-12-04 12:30:23,356] conn=3097 op=2 RESULT err=0 tag=0 nentries=0 etime=0 [2007-12-04 12:30:23,397] conn=3097 op=3 SRCH base="ou=people,ou=intranet,dc=motorola,dc=com" scope=2 filter="(&(objectclass=posixAccount)(uid=xjc864))" [2007-12-04 12:30:23,401] conn=3097 op=3 RESULT err=0 tag=0 nentries=0 etime=5 [2007-12-04 12:30:26,742] conn=3098 fd=0 slot=0 connection from 145.2.132.126 to 10.0.42.17 [2007-12-04 12:30:26,745] conn=3098 op=0 BIND dn="" method=0 version=3 [2007-12-04 12:30:26,746] conn=3098 op=0 RESULT err=0 tag=0 nentries=0 etime=0 [2007-12-04 12:30:26,786] conn=3098 op=1 SRCH base="ou=people,ou=intranet,dc=motorola,dc=com" scope=2 filter="(&(objectclass=posixAccount)(uid=xjc864))" [2007-12-04 12:30:26,790] conn=3098 op=1 RESULT err=0 tag=0 nentries=0 etime=4 There is nothing in the user's BIND; all of the BINDs are for dn="", so I'm wondering if the pam_ldap is able to do user binding instead of password searching. Here is my /etc/pam.d/sshd file: ############################################## # /etc/pam.d/sshd ############################################## #%PAM-1.0 auth required pam_unix2.so # set_secrpc auth required pam_nologin.so auth required pam_env.so account required pam_unix2.so account required pam_nologin.so password required pam_pwcheck.so password required pam_unix2.so use_first_pass use_authtok session required pam_unix2.so none # trace or debug session required pam_limits.so # Enable the following line to get resmgr support for # ssh sessions (see /usr/share/doc/packages/resmgr/README.SuSE) #session optional pam_resmgr.so fake_ttyname auth sufficient pam_ldap.so account sufficient pam_ldap.so password required pam_ldap.so session required pam_mkhomedir.so skel=/etc/skel umask=0022 Any suggestions would be greatly appreciated, BJP |
|
|
Re: SLES9 and pam_ldap (LDAP bind instead of search request)On Dienstag, 4. Dezember 2007, BJP wrote:
> Thanks, Ralf. > > You asked, How do you come to the conclusion that your current setup > doesn't use bind? > My answer: Not sure but this is what the LDAP server log displays: > [..] > [2007-12-04 12:30:26,745] conn=3098 op=0 BIND dn="" method=0 version=3 > [2007-12-04 12:30:26,746] conn=3098 op=0 RESULT err=0 tag=0 nentries=0 > etime=0 > [2007-12-04 12:30:26,786] conn=3098 op=1 SRCH > base="ou=people,ou=intranet,dc=motorola,dc=com" scope=2 > filter="(&(objectclass=posixAccount)(uid=xjc864))" > [2007-12-04 12:30:26,790] conn=3098 op=1 RESULT err=0 tag=0 nentries=0 > etime=4 > > There is nothing in the user's BIND; all of the BINDs are for dn="", so I'm > wondering if the pam_ldap is able to do user binding instead of password > searching. then "nentries=0"). Normal what pam_ldap does during login is: - a subtree search with a filter like this: "(&(objectclass=posixAccount)(uid=<userid>))" to get find the DN of the user's LDAP Entry. (These are the searches that you see above I assume. - a bind request with the DN of the above LDAP Entry and the password that the user entered. As the Search didn't find any object this does not happen in your case. There can be various reasons why the searches don't find the user entries (broken client/server configuration, access controll restrictions, the user's do not exist in LDAP, ...). You should try to debug and fix this before you try to get pam_ldap working. > Here is my /etc/pam.d/sshd file: > ############################################## > # /etc/pam.d/sshd > ############################################## > #%PAM-1.0 > auth required pam_unix2.so # set_secrpc > auth required pam_nologin.so > auth required pam_env.so > account required pam_unix2.so > account required pam_nologin.so > password required pam_pwcheck.so > password required pam_unix2.so use_first_pass use_authtok > session required pam_unix2.so none # trace or debug > session required pam_limits.so > # Enable the following line to get resmgr support for > # ssh sessions (see /usr/share/doc/packages/resmgr/README.SuSE) > #session optional pam_resmgr.so fake_ttyname > auth sufficient pam_ldap.so > account sufficient pam_ldap.so > password required pam_ldap.so > session required pam_mkhomedir.so skel=/etc/skel umask=0022 This config looks pretty broken to me (having "required pam_unix" before "sufficient pam_ldap" doesn't seem to make sense to me). If you really want to setup pam_ldap by yourself, you should probably read through the PAM Admin Guide and the pam_ldap examples. -- Ralf |
|
|
Re: SLES9 and pam_ldap (LDAP bind instead of search request)Ralf,
I changed the /etc/pam.d/sshd file to look like this: #%PAM-1.0 auth sufficient pam_ldap.so auth required pam_unix2.so # set_secrpc auth required pam_nologin.so auth required pam_env.so # account sufficient pam_ldap.so account required pam_unix2.so account required pam_nologin.so # password required pam_ldap.so password required pam_pwcheck.so password required pam_unix2.so use_first_pass use_authtok # session required pam_unix2.so none # trace or debug session required pam_limits.so and removed "pam_filter objectclass=posixAccount". Now I am getting err=49 (LDAP_INVALID_CREDENTIALS): [2007-12-05 15:25:45,562] conn=3635 fd=0 slot=0 connection from 145.2.132.126 to 10.0.42.17 [2007-12-05 15:25:45,565] conn=3635 op=0 BIND dn="" method=0 version=3 [2007-12-05 15:25:45,565] conn=3635 op=0 RESULT err=0 tag=0 nentries=0 etime=0 [2007-12-05 15:25:45,605] conn=3635 op=1 SRCH base="ou=people,ou=intranet,dc=motorola,dc=com" scope=2 filter="(uid=xjc864)" [2007-12-05 15:25:45,658] conn=3635 op=1 RESULT err=0 tag=0 nentries=1 etime=52 [2007-12-05 15:25:45,698] conn=3635 op=2 BIND dn="motguid=XJC864,ou=people,ou=intranet,dc=motorola,dc=com" method=0 version=3 [2007-12-05 15:25:45,704] conn=3635 op=2 RESULT err=49 tag=0 nentries=0 etime=0 [2007-12-05 15:25:45,744] conn=3635 op=3 BIND dn="" method=0 version=3 [2007-12-05 15:25:45,745] conn=3635 op=3 RESULT err=0 tag=0 nentries=0 etime=0 But I cannot login at all now and have to put back "pam_filter objectclass=posixAccount" to be able to login to my SLES9 server. Can you shed any more light on this? Do you think it has to do with the /etc/pam.d/sshd file? Thanks, BJP |
|
|
|
|
|
Re: SLES9 and pam_ldap (LDAP bind instead of search request)After much trial and error, Ralf is correct. pam_ldap on SLES9 SP3 does authentication with LDAP Bind.
Thanks Ralf. Rgds, BJP
|
| Free Forum Powered by Nabble | Forum Help |