Hi, 30.10.2007 16:58,, Falk Sauer wrote::
Hi Dieter,
@Andreas, den nscd hab ich bislang noch laufen
Vorweg: Ich hab' mich auch schon über nscd geärgert. Im Moment habe ich einen SUSE 9.2 und einen 10.3 Server hier laufen. Beide beziehen die Benutzeraccounts per LDAP mit dem SUSE-Schema, d.h. in ou=group,dc=xxx,dc=de stehen Sachen wie dn: cn=its,ou=group,dc=xxx,dc=de cn: its gidNumber: 2001 member: uid=its-info,ou=people,dc=xxx,dc=de member: uid=its-admin,ou=people,dc=xxx,dc=de member: uid=arno,ou=people,dc=xxx,dc=de member: uid=its-al,ou=people,dc=xxx,dc=de objectClass: top objectClass: posixGroup objectClass: groupOfNames für die Gruppen.
Am Di 30.Oktober 2007 15:07:07 schrieb Dieter Kluenter:
Falk Sauer
writes: hat irgendwer eine 10.3 mit LDAP Authentifizierung laufen? Ich hab schon alle Verdächtigen (nsswitch.conf, pam, ldap.conf) duchgesehen aber ein Problem bleibt hartnäckig: welche ldap.conf? Für dieses Problem ist nur /etc/ldap.conf wichtig, nicht aber /etc/openldap/ldap.conf
nur die /etc/ldap.conf, der ldap server ist auf einer 10.0 und geht mit ebendieser ganz hervorragend.
1. getent group liefert mir alle gruppen.
Hier auch, auf 9.2 und 10.3.
2. id username liefert nur die haupt-gruppe des users, nicht die anderen Gruppenmitgliedschaften des users.
Hier nicht:
arno@elf:~> id uid=1000(arno) gid=100(users) Gruppen=100(users),1999(admins),2001(its) arno@elf:~> id weranders uid=1002(weranders) gid=100(users) Gruppen=100(users)
Exakt identische Ausgabe auf beiden Systemen; so solls ja auch sein, geht ja gegen das gleiche LDAP-Backend...
Das kann mehrere Ursachen haben, ich weiss nicht wie SuSE die Gruppenmitgliedschaften organisiert, als Attribut des Users oder der User als member Attribut der Gruppe.
Letzteres.
Wenn der User als member Attributwert verwaltet wird, ist ein zweiter Suchlauf notwendig.
ein 2. suchlauf?
Ja, zuerst wird der geforderte user im ou=people,...-Subtree gesucht und gefunden. Dann werden im ou=group,...-Subtree alle Gruppen mit diesem Member gesucht.
Die user stehen in ou=Users,dc=example,dc=de, die Gruppen in ou=Groups,dc=example,dc=de als memberUid Attribut in cn's - den gruppen.
Wie stösst man denn da einen 2. suchlauf an?
Man gar nicht - das macht wohl PAM bzw. wer immer da als Middleware arbeitet.
Wie gesagt bei der 10.0 geht das einfach so.
Bei 9.2 und 10.3 auch. Dummerweise habe ich unter 10.2 zwar einen Server am laufen, aber da gibt's keine Nutzeraccounts, und also auch kein LDAP-Backend.
aus 1. schließe ich das der dn für die gruppen in der ldap.conf richtig angegeben ist. Wo aber der Unterschied zwischen 1 und 2 herrühren könnte kann ich mir derzeit nicht so recht erklären. Logfiles geben nichts her, ein Debug 9999 in der ldap.conf zeigt das bei beiden Abfragen (getent,id) die gruppeninfos vom ldap server anscheinend abgerufen werden.
Ja, hier auch, aber bei meinem normalen Loglevel bringt das nicht viel an Erkenntnissen. Ausserndem geht's ja :-)
Diesen Loglevel gibt es nicht und ein Eintrag in ldap.conf (egal welcher der beiden) wird nicht von slapd ausgelesen, die einzige Stelle ist slapd.conf, oder noch besser direkt in's config backend schreiben.
nein, der lokale client loggt dann wie ein wilder.
Zufall, bei dem Loglevel :-) Hier gilt nicht "viel hilft viel", sondern es geht um die richtigen Bits in der LogLevel-Zahl.
Die Konfiguration habe ich mit yast gemacht und anschließend an den besagten Stellen mehrfach kontrolliert, schaut alles sinnvoll und schlüssig aus. Da hat Yast seine Grenzen.
Jedenfalls nicht prinzipiell. Übrigens *glaube* ich dass dieses LDAP-Backend unter 9.2 eingerichtet wurde und seitdem mit vielen aktuelleren SUSEs problemlos zusammenspielte.
das fürchte ich auch, aber ich hatte gehofft das das mittlerweile geht.
Nochmal: Hier geht's, wenn auch nicht mit genau deiner Konfiguration.
Mache doch einfach mal als rootdn ein ldapsearch auf den gesamten Inhalt (sofern du nicht einige Tausend Einträge hast) und sieh dir die Einträge an. ldapsearch -x -D "cn=<dein rootdn> -w <rootpw> -H ldap://localhost -b "<dein suffix> -s sub "*" +
Ist jedenfalls immer lesenswert :-)
ich denke das die Einträge im ldap ok sind weil es ja mit einer anderen 10.0 prima geht, und wie gesagt der getent group bringt alle gruppen, nur der id nicht.
Hast du ein anderes System in greifbarere Nähe das du mal testhalber mit dem LDAP-Server als Backend ausprobieren könntest? Arno
Gruss Falk
-- Arno Lehmann IT-Service Lehmann www.its-lehmann.de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org