[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Probleme mit LDAP-Authentifizierung



Markus Schulz schrieb:
Am Dienstag, 20. Juni 2006 15:07 schrieb Thomas Guenther:
Hallo,
[...]
Bin ich auf dem Sarge-System root und wechsle nach user2, geht
das sofort und ohne Probleme. Und auch ein Netzwerksniffen brachte

wohl, weil du die rootbinddn in der ldap.conf gesetzt hast + ldap.secret.

Ja, exakt.

[...]
Wie sehen die üblichen verdächtigen denn aus?
/etc/ldap/ldap.conf

------------------ldap.conf-------------------
host <ldap-system ip>
base <dc=x,dc=y,dc=de>

ldap_version 3
binddn cn=nssldap,ou=dsa,dc=x,dc=y,dc=de
bindpw <pwd f. nssldap>

nss_base_passwd dc=x,dc=y,dc=de?sub
nss_base_shadow dc=x,dc=y,dc=de?sub
nss_base_group  dc=x,dc=y,dc=de?one

ssl no
pam_password crypt
----------------------------------------------


/etc/libnss-ldap.conf

---------------libnss-ldap.conf---------------
host <ldap-system ip>
uri ldap://iit005.uni-duisburg.de/
base <dc=x,dc=y,dc=de>

ldap_version 3

binddn cn=nssldap,ou=dsa,dc=x,dc=y,dc=de
bindpw <pwd f. nssldap>

nss_base_passwd dc=x,dc=y,dc=de?sub
nss_base_shadow dc=x,dc=y,dc=de?sub
nss_base_group  ou=Groups,dc=x,dc=y,dc=de?one

pam_filter objectclass=posixAccount

use_sasl off
----------------------------------------------


---------------------pam_ldap.conf---------------------
host <ldap-system ip>
base <dc=x,dc=y,dc=de>

ldap_version 3

rootbinddn cn=nssldap,ou=dsa,dc=x,dc=y,dc=de

scope sub
scope one
scope base

pam_filter objectclass=posixAccount

pam_password crypt
-------------------------------------------------------

---------------------nsswitch.conf---------------------
passwd:         files ldap
group:          files ldap
shadow:         files ldap

hosts:          files dns
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

#netgroup:       nis
-------------------------------------------------------


/etc/pam.d/common-auth (oder wo auch immer du ldap eingetragen hast)

-------------------common-auth-------------------
auth sufficient       pam_ldap.so
auth required         pam_unix.so try_first_pass
-------------------------------------------------

-------------------common-account-------------------
account sufficient       pam_ldap.so
account required         pam_unix.so
----------------------------------------------------

-------------------common-password------------------
password sufficient       pam_ldap.so
password required         pam_unix.so
----------------------------------------------------



In jedem Fall den slapd auf LogLevel 256 setzen und anschauen was da genau ankommt. Damit siehst du jedes Query auf die Ldap Datenbank.

Ist schon. Hier mal der Teil mit der Anmeldung vom CLIENT bis zum
Zeitpunkt, als das Passwort für den User eingegeben wurde und eine
erneute Passworteingabe erwartet wurde:

Jun 20 10:02:44 iit005 slapd[7759]: conn=24810 fd=38 ACCEPT from IP=<client ip>:32915 (IP=0.0.0.0:389) Jun 20 10:02:44 iit005 slapd[7778]: conn=24810 op=0 BIND dn="cn=nssldap,ou=dsa,dc=x,dc=y,dc=de" method=128 Jun 20 10:02:44 iit005 slapd[7778]: conn=24810 op=0 BIND dn="cn=nssldap,ou=dsa,dc=x,dc=y,dc=de" mech=SIMPLE ssf=0 Jun 20 10:02:44 iit005 slapd[7778]: conn=24810 op=0 RESULT tag=97 err=0 text= Jun 20 10:02:44 iit005 slapd[7762]: conn=24810 op=1 SRCH base="dc=x,dc=y,dc=de" scope=2 deref=0 filter="(&(objectClass=posixAccount)(\
uid=user1))"
Jun 20 10:02:44 iit005 slapd[7762]: conn=24810 op=1 SEARCH RESULT tag=101 err=0 nentries=1 text= Jun 20 10:02:44 iit005 slapd[7761]: conn=24810 op=2 SRCH base="ou=Groups,dc=x,dc=y,dc=de" scope=1 deref=0 filter="(&(objectClass=posi\
xGroup)(|(memberUid=user1)(uniqueMember=uid=user1,ou=users,dc=x,dc=y,dc=de)))"
Jun 20 10:02:44 iit005 slapd[7761]: conn=24810 op=2 SRCH attr=gidNumber
Jun 20 10:02:44 iit005 slapd[7761]: <= bdb_equality_candidates: (uniqueMember) index_param failed (18) Jun 20 10:02:44 iit005 slapd[7761]: conn=24810 op=2 SEARCH RESULT tag=101 err=0 nentries=1 text= Jun 20 10:02:44 iit005 slapd[21337]: conn=24810 op=3 SRCH base="ou=Groups,dc=x,dc=y,dc=de" scope=1 deref=0 filter="(&(objectClass=pos\
ixGroup)(uniqueMember=cn=group1,ou=groups,dc=x,dc=y,dc=de))"
Jun 20 10:02:44 iit005 slapd[21337]: conn=24810 op=3 SRCH attr=gidNumber
Jun 20 10:02:44 iit005 slapd[21337]: <= bdb_equality_candidates: (uniqueMember) index_param failed (18) Jun 20 10:02:44 iit005 slapd[21337]: conn=24810 op=3 SEARCH RESULT tag=101 err=0 nentries=0 text= Jun 20 10:02:44 iit005 slapd[7759]: conn=24811 fd=42 ACCEPT from IP=<client ip>:32916 (IP=0.0.0.0:389) Jun 20 10:02:44 iit005 slapd[7778]: conn=24811 op=0 BIND dn="cn=nssldap,ou=dsa,dc=x,dc=y,dc=de" method=128 Jun 20 10:02:44 iit005 slapd[7778]: conn=24811 op=0 BIND dn="cn=nssldap,ou=dsa,dc=x,dc=y,dc=de" mech=SIMPLE ssf=0 Jun 20 10:02:44 iit005 slapd[7778]: conn=24811 op=0 RESULT tag=97 err=0 text= Jun 20 10:02:44 iit005 slapd[7762]: conn=24811 op=1 SRCH base="dc=x,dc=y,dc=de" scope=0 deref=0 filter="(uid=user1)" Jun 20 10:02:44 iit005 slapd[7762]: conn=24811 op=1 SEARCH RESULT tag=101 err=0 nentries=0 text=

(hier wartet das System auf das Passwort, der folgende Abschnitt
zeigt die Reaktion nach der Passworteingabe)

Jun 20 10:03:16 iit005 slapd[21337]: conn=24812 op=4 SRCH base="dc=x,dc=y,dc=de" scope=2 deref=0 filter="(&(objectClass=shadowAccount\
)(uid=user1))"
Jun 20 10:03:16 iit005 slapd[21337]: conn=24812 op=4 SRCH attr=uid userPassword shadowLastChange shadowMax shadowMin shadowWarning sh\
adowInactive shadowExpire shadowFlag
Jun 20 10:03:16 iit005 slapd[21337]: conn=24812 op=4 SEARCH RESULT tag=101 err=0 nentries=1 text= Jun 20 10:03:17 iit005 slapd[7778]: conn=24813 op=2 BIND anonymous mech=implicit ssf=0 Jun 20 10:03:17 iit005 slapd[7778]: conn=24813 op=2 BIND dn="cn=nssldap,ou=dsa,dc=x,dc=y,dc=de" method=128 Jun 20 10:03:17 iit005 slapd[7778]: conn=24813 op=2 BIND dn="cn=nssldap,ou=dsa,dc=x,dc=y,dc=de" mech=SIMPLE ssf=0 Jun 20 10:03:17 iit005 slapd[7778]: conn=24813 op=2 RESULT tag=97 err=0 text= Jun 20 10:03:17 iit005 slapd[7762]: conn=24813 op=3 SRCH base="dc=x,dc=y,dc=de" scope=0 deref=0 filter="(uid=user1)" Jun 20 10:03:17 iit005 slapd[7762]: conn=24813 op=3 SEARCH RESULT tag=101 err=0 nentries=0 text=



ldapsearch mit -D <user dsn> auch probieren. Bekommst du damit dein Passwort zu gesicht? Liefert getent korrekte Informationen?

ldapsearch mit nssldap geht, Passwörter werden verschlüsselt angezeigt.
Getent liefert korrekte Einträge.


Wir brauchen in jedem Fall mehr Informationen, sonst stochern wir hier nur hilflos im Dunkeln 'rum. Insbesondere am slapd Log sieht man eigentlich recht schnell woran es hakt, auch wenn dort recht viel geloggt wird und das ganze anfangs etwas unübersichtlich wirkt.

Danke schonmal!


Thomas



Reply to: