ich versuche auf meinem Server LDAP zur Benutzerauthentifizierung zu verwenden. Soweit klappt es auch ganz gut: die Testusers können sich einloggen, doch leider können sie das Passwort mit passwd nicht ändern. Es gibt immer diese Fehlermeldung:
Code: Alles auswählen
melle@iggy:/etc/pam.d$ passwd
passwd: Fehler beim Ändern des Authentifizierungstoken
passwd: password unchanged
Im auth.log findet sich zum gescheiterten passwd-Aufruf folgendes:
Code: Alles auswählen
pam_ldap: ldap_search_s No such object
pam_unix(passwd:chauthtok): username [melle] obtained
pam_unix(passwd:chauthtok): user "melle" does not exist in /etc/passwd
Code: Alles auswählen
filter="(&(objectClass=posixAccount)(objectClass=posixAccount)(uid=melle))"
Code: Alles auswählen
filter="(&(objectClass=posixAccount)(uid=melle))"
Code: Alles auswählen
conn=40 fd=23 ACCEPT from IP=127.0.0.1:42489 (IP=127.0.0.1:389)
conn=40 op=0 BIND dn="cn=admin,dc=freifunk-potsdam,dc=de" method=128
conn=40 op=0 BIND dn="cn=admin,dc=freifunk-potsdam,dc=de" mech=SIMPLE ssf=0
conn=40 op=0 RESULT tag=97 err=0 text=
conn=40 op=1 SRCH base="ou=kommune,ou=people,dc=freifunk-potsdam,dc=de" scope=1 deref=0 filter="(&(objectClass=posixAccount)(uid=melle))"
conn=40 op=1 SRCH attr=uid userPassword uidNumber gidNumber cn homeDirectory loginShell gecos description objectClass
<= bdb_equality_candidates: (uid) not indexed
conn=40 op=1 SEARCH RESULT tag=101 err=0 nentries=1 text=
conn=40 op=2 SRCH base="ou=kommune,ou=people,dc=freifunk-potsdam,dc=de" scope=1 deref=0 filter="(&(objectClass=posixAccount)(uid=melle))"
conn=40 op=2 SRCH attr=uid userPassword uidNumber gidNumber cn homeDirectory loginShell gecos description objectClass
<= bdb_equality_candidates: (uid) not indexed
conn=40 op=2 SEARCH RESULT tag=101 err=0 nentries=1 text=
conn=41 fd=24 ACCEPT from IP=127.0.0.1:42490 (IP=127.0.0.1:389)
conn=41 op=0 BIND dn="cn=admin,dc=freifunk-potsdam,dc=de" method=128
conn=41 op=0 BIND dn="cn=admin,dc=freifunk-potsdam,dc=de" mech=SIMPLE ssf=0
conn=41 op=0 RESULT tag=97 err=0 text=
conn=41 op=1 SRCH base="dc=freifunk-potdam,dc=de" scope=1 deref=0 filter="(&(objectClass=posixAccount)(objectClass=posixAccount)(uid=melle))"
conn=41 op=1 SEARCH RESULT tag=101 err=32 nentries=0 text=
conn=41 op=2 UNBIND
conn=41 fd=24 closed
conn=40 fd=23 closed (connection lost)
Code: Alles auswählen
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
Code: Alles auswählen
melle@iggy:/etc/pam.d$ grep -v "^#" common-*
common-account:account sufficient pam_ldap.so debug
common-account:account required pam_unix.so try_first_pass
common-auth:auth sufficient pam_ldap.so debug
common-auth:auth required pam_unix.so nullok_secure try_first_pass
common-password:password sufficient pam_ldap.so debug
common-password:password sufficient pam_unix.so nullok obscure min=4 max=8 md5 try_first_pass debug
common-password:password required pam_deny.so
common-session:session required pam_limits.so
common-session:session required pam_unix.so
common-session:session optional pam_ldap.so debug
common-session:session required pam_mkhomedir.so skel=/etc/skel umask=0022