AD-Connector Passwort sync failed

german

#1

Hallo zusammen

Wir betreiben eine UCS 2.4 mit einem Ad-Connector im READ Modus. Die Benutzer und Gruppen werden korrekt synchronisiert. Das Problem liegt beim Passwort-Sync. Der Dienst auf dem Windows-2088 Server läuft und bei einer Passwort änderung wird auch sofort eine Sync getriggert. Dieser bringt aber folgenden Fehler:

05.01.2012 12:57:04,935 LDAP        (INFO   ): password_sync: pwdLastSet from AD: 129702382199929643 ([('cn=user,ou=test,dc=test,dc=local', {'pwdLastSet': ['129702382199929643'], 'objectSid': ['\x01\x05\x00\x00\x00\x00\x00\x05\x15\x00\x00\x00R\x0b\xad\xe93\x1f\xe4\xc5}\xe7\xbb\xc4\x13\x10\x00\x00']})])
05.01.2012 12:57:04,936 LDAP        (INFO   ): password_sync: sambaPwdLastSet: 1325582634
05.01.2012 12:57:04,940 LDAP        (ERROR  ): password_sync: sync failed, no result from AD

Was genau bedautet die Meldung no result from AD? Der Benutzer im Windows-2008-AD ist in der Gruppe Domain-Admins und auch die Passwörter sollten im NTLM Hash gespeichert werden. Mit welchem ldapsearch kann man überprüfen ob die Passwörter auch wirklich als NTLM Hash vorliegen im Windows-2008-AD?

mfg, rolandb


#2

Hallo,

die Meldung “password_sync: sync failed, no result from AD” bedeutet dass der AD-Connector keine bzw. eine ungültige Rückmeldung auf die Anfrage nach einem Passwort von Passwortdienst auf dem Windows System erhalten hat. Um das Problem einzugrenzen sind nähere Informationen zu den Systemen notwendig:

[ul]
[li]Welche UCS Version setzen Sie ein (zwischen UCS 2.4-0 und 2.4-4 gab es noch einige Verbesserungen für den AD-Connector)?[/li]
[li]Wurde mit den UCS-Updates auch der Passwortdienst auf dem Windows-System aktualisiert?[/li]
[li]Setzen Sie Windows 2008 oder Windows 2008 R2 ein (32 oder 64bit)?[/li]
[li]Läuft der Passwortdienst als Administrator?[/li][/ul]

Der Passwortdienst schreibt auf dem Windows-Server die Logdatei “C:\Windows\UCS-AD-Connector\ad-connector.log”, hier sind evtl. weitere Informationen zu finden.
Um den Passwort-Dump des Passwortienstes zu überprüfen, können Sie diesen mit den folgenden Schritten manuell durchführen (diest ist nur in einer lokalen Sitzung möglich, per redesktop gibt es Fehlermeldungen wie “CreateRemoteThread failed: 8”):

[ul]
[li]Stoppen Sie den AD-Connector Passwortdienst [/li]
[li]Schreiben Sie die AD-RID (diese kann z.B: mit “univention-ad-search cn=” ermittelt werden) eines Benutzers in die Datei “copypwd.in.txt” im AD-Connector Installationsverzeichniss (C:\Windows\UCS-AD-Connector) [/li]
[li]Rufen Sie in der Windows-CMD den Befehl “PwDump.exe -x localhost” auf[/li]
[li]Starten Sie den AD-Connector Passwortdienst[/li][/ul]

Mit freundlichen Grüßen
Janis Meybohm


#3

Wir verwenden:
*UCS 2.4-3-6
*univention-ad-connector 5.0.25-1.231.201108250647
*Windows-2008-R2 (64Bit)
*Der UCS-Windows-Passwort Dienst läuft mit einem Domain-Admin Benutzer
*Die UCS-AD-Connector Version ist 1.0.0

Diese Ausgabe finde ich im Log C:\Windows\UCS-AD-Connector\ucs-ad-connector.log

Waiting for a client to connect...
accept client connection...
Client Connected.
UserDN  = [ldap srv]
Command = [G]
User    = [4115]
user_logon error: E_LOGON_WRONG_PASSWORD
create packet 
 4  0  0  0  2  4  0  0 
send 8
Waiting for a client to connect...

Wie ist diese Aussage zu interpretieren user_logon error: E_LOGON_WRONG_PASSWORD?

Und vielen Dank für die schnelle, ausführliche Unterstützung.
mfg, rolandb


#4

Hallo,

ich vermute es handelt sich hier um [bug]16750[/bug]. Falls Sie für den AD-Administrator ein Passwort mit Umlauten verwenden, können Sie bitte einmal prüfen ob das Problem bestehen bleibt Sie ein Passwort ohne Umlaute verwenden?

Mit freundlichen Grüßen
Janis Meybohm


#5

Hallo zusammen

Ich habe Ihre Tests nun alle durchgeführt, inkl das Passwort geändert überall. Leider alles ohne Erfolg.
PwDump.exe Test:
Benutzer-SID: S-1-5-21-3920431954-3320061747-3300648829-4115
Benutzer-RID: 4115
C:\Windows\UCS-AD-Connector\ad-connector.log
4115

C:\Windows\UCS-AD-Connector>pwdump.exe -x localhost
No data returned from the target host

Der Fehler im univention/connector-status.log hat sich nicht verändert:

09.01.2012 14:26:22,265 LDAP (INFO ): password_sync: sambaPwdLastSet: 1325857489 09.01.2012 14:26:22,359 LDAP (ERROR ): password_sync: sync failed, no result from AD

Ich würde immer noch gerne herausfinden ob im Windows-2008-R2 auf wirklich die Passwörter parrall in NTLM-Hash gespeichert werden. Wie kann ich das machen?
Wie ist der genaue Ablauf beim Passwort-Sync? wie kann ich das debuging einschalten oder wo finde ich noch informationen?

mfg, rolandb


#6

Hallo,

gibt es in der ucs-ad-connector.log weiterhin die Meldung “user_logon error: E_LOGON_WRONG_PASSWORD”?

Leider kann man die Passwort-Hashes nicht mit Boardmitteln aus einem AD auslesen. Daher lässt sich, ohne ein Tool wie PwDump, nicht mit Sicherheit sagen ob ein NTLM-Hash am Benutzerobjekt gespeichert ist. Wenn Sie die Gruppenrichtlinie entsprechend der [ed]Dokumentation[/ed] konfiguriert haben [quote=“UCS Active Directory Connector Dokumentation”]Computerkonfiguration ➞ Richtlinien ➞ Windows-Einstellungen ➞ Sicherheitseinstellungen ➞ Lokale Richtlinien ➞ Sicherheitsoptionen: “Einstellung Netzwerksicherheit: Keine LAN-Manager-Hashwerte für nächste Kennwortänderung speichern” = “Deaktiviert”[/quote]sollte der NTLM-Hash aber mit der Nächsten Passwortänderung der Benutzer gespeichert werden.

Generell läuft die Passwortsynchronisation (AD➞UCS) wie folgt ab:
[ul]
[li]Änderung eines Benutzers im AD wird erkannt[/li]
[li]Attribute “objectSid” und “pwdLastSet” werden vom AD abgefragt[/li]
[li]AD-RID und “Command: G” wird an den Passwortdienst übermittelt [/li]
[li]Passwortdienst schreibt die AD-RID in “copypwd.in.txt”[/li]
[li]Passwortdienst führt “PwDump.exe -x localhost” aus[/li]
[li]Passwortdienst übermittelt Ausgabe an den UCS AD-Connector[/li][/ul]

Anhand Ihrer letzten Beschreibung würde ich nun von der folgenden Situation ausgehen:
[ul]
[li]Es wurde das 64bit Paket des AD Connectors auf Windows 2008 R2 installiert[/li]
[li]Vor der Installation des AD Connectors wurde das Microsoft Visual C++ 2010 Redistributable Package (x86) installiert [/li]
[li]Passwortdienst läuft als “Administrator”[/li]
[li]Das Passwort des Benutzers “Administrator” auf dem AD-System enthält nut ASCII-Zeichen[/li]
[li]“pwdump.exe -x localhost” für einen Benutzer der seit der aktivierund der NTLM-Hashes sein Passwort geändert hat liefert die Meldung “No data returned from the target host”[/li]
[li]In der ucs-ad-connector.log wird die Meldung “user_logon error: E_LOGON_WRONG_PASSWORD” ausgegeben (?)[/li][/ul]

Ist dies soweit korrekt?
Ohne Eingriff in den Code lässt sich in diesem Prozess kein weiteres Debugging aktivieren (abgesehen vom Debuglevel des AD-Connectors auf dem UCS-System).

Mit freundlichen Grüßen
Janis Meybohm


#7

Hallo zusammen

Ich habe nun den Fehler gefunden. Der Benutzer im Windows-2008-R2 welcher für den AD-Connector verwendet wird adrf KEIN Space haben im LDAP-DN!!!

Hier ist der DN: “cn=ldap srv” dieser Space hat den Fehler verursacht.

Waiting for a client to connect...
accept client connection...
Client Connected.
UserDN  = [ldap srv]
Command = [G]
User    = [4115]
user_logon error: E_LOGON_WRONG_PASSWORD
create packet
4  0  0  0  2  4  0  0
send 8
Waiting for a client to connect...

Nun verwende ich einen Benutzer ohne Space im DN: “cn=ldapucs” und alles funktioniert.

Waiting for a client to connect...
accept client connection...
Client Connected.
UserDN  = [ldapucs]
Command = [G]
User    = [4614]
user_logon okay
Starting command: PwDump.exe -x localhost> C:\Windows\UCS-AD-Connector\copypwd.txt
Exit     command: PwDump.exe -x localhost> C:\Windows\UCS-AD-Connector\copypwd.txt
create packet 

Ich bitte Sie, den beschrieben Vorgang auszuprobieren und einen Bug zu eröffnen, zu mindest sollte ein Hinweis in der Dokumentation gemacht werden.

Freundliche Grüsse
rolandb


#8

Hallo,

vielen Dank für die Rückmeldung. Ich habe hierzu [bug]25795[/bug] eröffnet.

Mit freundlichen Grüßen
Janis Meybohm