Ich hab mir grad einen Samba PDC aufgesetzt um testweise Windows XP, Windows 7 und Windows 98 Clients anzubinden.
Als Backend nicht ldapsam
oder das alte smbpasswd
sondern tdbsam ( Default seit 3.4 ). LDAP ist oft Overkill.
Die Anbindung von XP war einfach und für Windows 7 muss man bischen in der Registry rumfummeln. Windows 98 sollte, könnte, müsste eigentlich auch easy sein, aber war es leider nicht. Die Anmeldung wollte einfach nicht klappen.
Laut Manpage sollte es ausreichen, wenn in der smb.conf
folgendes hinzugefügt wird:
lanman auth = true
Der Haken an der ganzen Sache ist aber, dass User, die vor dem Hinzufügen dieser Option in der Samba eigenen Userdatenbank angelegt wurden, sich nicht anmelden können.
Legt man einen User frisch an oder ändert das Passwort via smbpasswd
bzw. pdbedit
, geht es.
Das liegt daran, dass ohne lanman auth = true
das Passwort nur als NT Hash gespeichert wird, das ab Windows 2000 benutzt wird.
Der Lanman Hash
bleibt ungesetzt. Erkennt man an den vielen X-en. Fügt man besagte Option nun in die smb.conf
ein, aktualisiert dies jedoch nicht den Lanman Hash mit dem aktuellen Passwort. Daher muss man das Passwort neu setzen oder den User löschen und wieder anlegen.
# pdbedit -Lw -u testuser testuser:1004:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:C889C75B7C1AAE1F7150C5681136E70E:[U ]:LCT-4E6E6605:
Lanman Hash = XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ( ungesetztes Passwort ) NT Hash = C889C75B7C1AAE1F7150C5681136E70E
lanman auth = Yes
in smb.conf eintragen- Samba restarten
- Passwort ändern
# smbpasswd testuser
# pdbedit -Lw -u testuser testuser:1004:9A92B9EE6A02D685AAD3B435B51404EE:3A312BC75D57FDD3558BA9D2FC9102F3:[U ]:LCT-4E6E6621:
Lanman Hash = 9A92B9EE6A02D685AAD3B435B51404EE NT Hash = 3A312BC75D57FDD3558BA9D2FC9102F3
Jetzt klappt auch die Anmeldung
Ach ja, wer Samba's Interna besser verstehen will, ist mit diesem Buch sehr gut beraten: Samba 3 für Unix / Linux-Administratoren