PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ldap-user werden mit getent passwd nicht gefunden



ndk
16.08.05, 04:26
Hallo,

habe einen SAMBA3-LDAP-PDC Server (wie im gleichnamigen HowTo beschrieben) aufgesetzt (Mein System: SuSe 9.3 und die in der Distribution enthaltenen rpm für openldap und samba). Der Server startet ohne Probleme und ich kann mit smbldap-useradd -m testuser1 einen neuen user erstellen und mit smbldap-passwd testuser ein password zuweisen. Ein login als testuser funktioniert jedoch nicht. Der ldap-browser gq zeigt jedoch den Eintrag für testuser1 richtig an.
getent passwd liefert jedoch nur die normalen user zurück, obwohl
nsswitch.conf und login wie folgt geändert wurden:

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

passwd_compat: ldap
group_compat: ldap

hosts: files dns

bootparams: nisplus [NOTFOUND=return] files

ethers: files
netmasks: files
networks: files
protocols: files
rpc: files
services: files
netgroup: files

publickey: nisplus

automount: files ldap
aliases: files nisplus

# file: /etc/pam.d/login
auth required /lib/security/pam_env.so
auth sufficient /lib/security/pam_unix.so likeauth nullok
auth sufficient /lib/security/pam_ldap.so use_first_pass
auth required /lib/security/pam_deny.so
#
account required /lib/security/pam_unix.so
account sufficient /lib/security/pam_ldap.so
#
password required /lib/security/pam_cracklib.so retry=3 type=
password sufficient /lib/security/pam_unix.so nullok use_authtok md5 shadow
password sufficient /lib/security/pam_ldap.so use_authtok
password required /lib/security/pam_deny.so
#
session required /lib/security/pam_limits.so
session required /lib/security/pam_unix.so
session optional /lib/security/pam_ldap.so.
#end

Hier noch die ldap.conf
host 127.0.0.1
base o=meister,c=de

rootbinddn cn=nssldap,ou=DSA,o=meister,c=de

nss_base_passwd ou=Users,o=meister,c=de?one
nss_base_shadow ou=Users,o=meister,c=de?one
nss_base_group ou=Groups,o=meister,c=de?one

ssl no
pam_password md5

und
# file /etc/openldap/slapd.conf
#
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/nis.schema
include /etc/openldap/schema/samba3.schema
#
pidfile /var/run/slapd/slapd.pid
argsfile /var/run/slapd/slapd.args
#
database ldbm
directory /var/lib/ldap
#
suffix "o=meister, c=de"
rootdn "cn=hero, o=meister, c=de"
#
index objectClass,uidNumber,gidNumber eq
index cn,sn,uid,displayName pres,sub,eq
index memberUid,mail,givenname eq,subinitial
index sambaSID,sambaPrimaryGroupSID,sambaDomainName eq
#
access to attrs=userPassword,sambaLMPassword,sambaNTPassword
by self write
by anonymous auth
by * none
#
access to *
by * read
#
rootpw secret
#
# end

Hat jemand eine Idee wo der Fehler liegt?

BedriddenTech
16.08.05, 09:45
Hallo,
nsswitch.conf:
passwd: compat
shadow: files ldap
group: compat

passwd_compat: ldap
group_compat: ldap
Bei mir hat die Compat-Version, wie du sie hast, nicht funktioniert. Bei mir heißts auch bei passwd und group `files ldap'

mamue
16.08.05, 10:23
Auch bei mir (SuSE9.3) steht files ldap. Interessant ist unter SuSE auch die /etc/security/pam_unix2.conf, in der bei mir
auth: use_ldap nullok
account: use_ldap
password: md5 use_ldap nullok
session: none
steht.
Man spart sich die Konfiguration der /etc/pam.d/*

HTH
mamue

ndk
16.08.05, 10:42
Bei mir hat die Compat-Version, wie du sie hast, nicht funktioniert. Bei mir heißts auch bei passwd und group `files ldap'

Habe ich auch ausprobiert ... leider ohne Erfolg.

ndk
16.08.05, 10:55
Auch bei mir (SuSE9.3) steht files ldap. Interessant ist unter SuSE auch die /etc/security/pam_unix2.conf, in der bei mir
auth: use_ldap nullok
account: use_ldap
password: md5 use_ldap nullok
session: none
steht.
Man spart sich die Konfiguration der /etc/pam.d/*

HTH
mamue

Habe ich bei mir auch so eingetragen. Jedoch ohne Erfolg.
Der Befehl ssh -l testuser1 edwd erzeugt lediglich den folgenden Eintrag
in /var/log/warn

Aug 16 05:18:00 edwd sshd[9678]: pam_ldap: error trying to bind as user "uid=testuser1,ou=Users,o=meister,c=de" (Invalid credentials)
Aug 16 05:18:00 edwd sshd[9674]: error: PAM: User not known to the underlying authentication module for illegal user testuser1 from edwd.meister.ndk

Das Passwort (invalid credentials) stimmt jedoch definitiv (mehrfach sorgfältig ausprobiert) ... er findet einfach nur nicht den Eintrag in der Datenbank (dies ist meine Interpretation)
Verwirrend für mich ist jedoch, dass gq bzw ldapsearch den user findet

Man spart sich die Konfiguration der /etc/pam.d/*

wie?

HTH

emba
17.08.05, 15:46
warum nimmst du aus der nsswitch.conf "files" bzw. "compat" raus? damit werden lokale nutzer doch nicht mehr aufgelöst, es sei denn, SuSE kocht da wieder ein eigenes süppchen

du solltest

a) prüfen, dass keine ACL dir den "weg" versperrt
b) prüfen, ob die /etc/ldap.conf für nss korrekt konfiguriert wurde

-> http://www.linuxforen.de/forums/showthread.php?t=174852

greez

mamue
17.08.05, 21:55
Du hast in der /etc/ldap.conf stehen:
rootbinddn cn=nssldap,ou=DSA,o=meister,c=de
Warum das denn? Anonymous bind sollte genügen.


Man spart sich die Konfiguration der /etc/pam.d/*, wie?

Für andere Dienste müsste man die entsprechenden Dateien in /etc/pam.d/ editieren. Muß aber nicht wegen der pam_unix2.conf.
Zu allererst einmal könnest Du den Hinweisen von emba folgen (und dem Link), natürlich muß in der nsswitch.conf bei passwd und group "files ldap" stehen. Jedenfalls ist das bei meinem SuSE System so.

HTH,
mamue

BTW: emba, was soll das heißen, "es sei denn, SuSE kocht da wieder ein eigenes süppchen"? ;)

ndk
18.08.05, 07:20
warum nimmst du aus der nsswitch.conf "files" bzw. "compat" raus? damit werden lokale nutzer doch nicht mehr aufgelöst, es sei denn, SuSE kocht da wieder ein eigenes süppchen

du solltest

a) prüfen, dass keine ACL dir den "weg" versperrt
b) prüfen, ob die /etc/ldap.conf für nss korrekt konfiguriert wurde

-> http://www.linuxforen.de/forums/showthread.php?t=174852

greez

Ich habe die files rausgenommen, damit ich bei getent passwd direkt sehe ob der die Einträge der ldap datenbank findet. Es war nur zu Testzwecken und bevor ich mein System runtergefahren habe, hatte ich files wieder dort stehen ... sonst könnte man wahrscheinlich nur mit der Rettungsdisk wieder ins System.
Danke für den Link ... ich werde ihn erst mal in Ruhe durchgehen :rolleyes:

ndk
18.08.05, 07:23
Du hast in der /etc/ldap.conf stehen:
rootbinddn cn=nssldap,ou=DSA,o=meister,c=de
Warum das denn? Anonymous bind sollte genügen.

Für andere Dienste müsste man die entsprechenden Dateien in /etc/pam.d/ editieren. Muß aber nicht wegen der pam_unix2.conf.
Zu allererst einmal könnest Du den Hinweisen von emba folgen (und dem Link), natürlich muß in der nsswitch.conf bei passwd und group "files ldap" stehen. Jedenfalls ist das bei meinem SuSE System so.

HTH,
mamue

BTW: emba, was soll das heißen, "es sei denn, SuSE kocht da wieder ein eigenes süppchen"? ;)

rootbinddn habe ich deswegen aufgenommen, damit auch ein simple bind möglich ist (steht auch so im howto drin)
wo ist eigentlich der Unterschied bei den beiden pam modulen pam_unix.so und pam_unix2.so. Nur für die Letztere habe ich unter /etc/security eine conf datei :confused:

emba
18.08.05, 21:52
rootbinddn habe ich deswegen aufgenommen, damit auch ein simple bind möglich ist (steht auch so im howto drin)
so steht das nicht im howto drin ;)


BTW: emba, was soll das heißen, "es sei denn, SuSE kocht da wieder ein eigenes süppchen"?
hast recht, es sollte heißen
"es sei denn, Novell kocht da wieder ein eigenes süppchen" :)
frage beantwortet??? :D hehe

greez