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

Samba/LDAP/Windows = Passwort ändern



Hall Leute,

Ich habe folgendes Szenario:

Auf dem Fileserver fürs LAN läuft Samba als
Domänencontroller. Auf einem zweiten Server läuft LDAP. Samba
bezieht seine Benutzerdaten aus dem LDAP. Klappt alles wunderbar.

Aber:

Seit einiger Zeit kann man von Windows aus das Benutzerpasswort
nicht mehr ändern. Bessergesagt: Man kann es ändern, aber Windows
zeigt an, das Benutzername oder Kennwort nicht korrekt sind.

Tatsächlich ist das Passwort geändert worden.

Folgende Einträge taten bis dato ihren Dienst, heute aber nicht
mehr:

[/etc/samba/smb.conf]

[global]
[...]
passwd program = /usr/local/sbin/smbldap-passwd.pl %u
passwd chat = *password* %n\n *password* %n\n *successfull*

Ein Auszug aus den Logs mit log level 100 ergibt:

(Sorry für Überlänge)

[...]
[2005/01/10 01:38:30, 5] auth/auth_util.c:make_server_info_sam(844)
  make_server_info_sam: made server info for user mueller -> mueller
[2005/01/10 01:38:30, 3] auth/auth.c:check_ntlm_password(268)
  check_ntlm_password: sam authentication for user [mueller] succeeded
[...]
[2005/01/10 01:38:30, 5] auth/auth.c:check_ntlm_password(292)
  check_ntlm_password:  PAM Account for user [mueller] succeeded
[2005/01/10 01:38:30, 2] auth/auth.c:check_ntlm_password(305)
  check_ntlm_password:  authentication for user [mueller] -> [mueller] -> [mueller] succeeded
[...]
[2005/01/10 01:38:30, 5] lib/smbldap.c:smbldap_search(1017)
  smbldap_search: base => [dc=cs-ol,dc=de], filter => [(&(uid=mueller)(objectclass=sambaSamAccount))], scope => [2]
[2005/01/10 01:38:30, 11] lib/smbldap.c:smbldap_open(893)
  smbldap_open: already connected to the LDAP server
[2005/01/10 01:38:30, 2]
  passdb/pdb_ldap.c:init_sam_from_ldap(511) init_sam_from_ldap: Entry found for user: mueller
[...]
[2005/01/10 01:38:30, 10] smbd/chgpasswd.c:dochild(218)
  Invoking '/usr/local/sbin/smbldap-passwd.pl mueller' as password change program.
[...]
[2005/01/10 01:38:33, 10] smbd/chgpasswd.c:expect(286)
  expect: returning True
[2005/01/10 01:38:33, 3] smbd/chgpasswd.c:chat_with_program(441)
  chat_with_program: Password change successful for user mueller
[...]
[2005/01/10 01:38:33, 5] lib/smbldap.c:smbldap_modify(1063)
  smbldap_modify: dn => [uid=mueller,ou=Users,dc=cs-ol,dc=de]
[2005/01/10 01:38:33, 11] lib/smbldap.c:smbldap_open(893)
  smbldap_open: already connected to the LDAP server
[2005/01/10 01:38:33, 1] passdb/pdb_ldap.c:ldapsam_modify_entry(1516)
  ldapsam_modify_entry: Failed to modify user dn= uid=mueller,ou=Users,dc=cs-ol,dc=de with: No such attribute
      modify/delete: sambaPwdMustChange: no such value
[2005/01/10 01:38:33, 0] passdb/pdb_ldap.c:ldapsam_update_sam_account(1731)
  ldapsam_update_sam_account: failed to modify user with uid = mueller, error: modify/delete:
      sambaPwdMustChange: no such value (Success)
[2005/01/10 01:38:33, 3] smbd/sec_ctx.c:pop_sec_ctx(386)
  pop_sec_ctx (1002, 545) - sec_ctx_stack_ndx = 1
[2005/01/10 01:38:33, 5] rpc_parse/parse_samr.c:init_samr_r_chgpasswd_user(7134)
  init_r_chgpasswd_user
[2005/01/10 01:38:33, 5] rpc_server/srv_samr_nt.c:_samr_chgpasswd_user(1494)
  _samr_chgpasswd_user: 1494
[2005/01/10 01:38:33, 5] rpc_parse/parse_prs.c:prs_debug(82)
  000000 samr_io_r_chgpasswd_user
[2005/01/10 01:38:33, 5] rpc_parse/parse_prs.c:prs_ntstatus(672)
  0000 status: NT_STATUS_ACCESS_DENIED

Das komplette Log liegt auf http://www.cs-ol.de/udo.log (300 KB)

Das von Samba vermisste Attribut sambaPwdMustChange existiert
jedoch.

Das User-LDIF liegt auf http://www.cs-ol.de/user.ldif (1 KB)

Ich habe auch den Tipp bekommen, den passwd* Kram aus der smb.conf raus
zu schmeissen. Damit bekomme ich als Windows Meldung, daß ich mein
Passwort nicht ändern darf.

Es wird auch keine Änderung im LDAP durch geführt.

Das LDAP-Admin Passwort habe ich jedoch korrekt hinterlegt mittels
smbpasswd -w passwort.

Desweiteren habe ich versucht, als root

$ smbpasswd user

auszuführen. Das änderte zwar erfolgreich das Windows-Passwort,
hinterlegt es aber nicht im LDAP.

Das gleiche Spiel mit 

$ passwd user

ändert erfolgreich im LDAP das Attribut userPassword, fasst aber
natürlich nicht die samba*Password Einträge an.

Kann mir jemand einen Tipp geben, wie ich wieder Passwörter ändern
kann?

Gruss Udo
-- 
Ohne Signatur!



Reply to: