Tags: Active Directory, Troubleshooting, Monitoring
Die Konsistenz eines Active Directory sollte regelmäßig geprüft werden. Dazu kommen besondere Anlässe, etwa bei Verdacht auf Störungen oder wenn die Synchronisation mit Azure AD ansteht. Dieser Beitrag listet die wichtigsten Maßnahmen auf und beschreibt, wie man sie mit den gängigen Tools umsetzt.
Die Active Directory Domain Services sollten besonders in großen verteilten Infrastrukturen permanent unter Beobachtung stehen. Microsoft SCOM, Azure Monitor oder Lösungen von Drittanbietern unterstützen Admins dabei (siehe dazu auch: Kostenlose Tools für Active Directory). Fehler in der Active Directory-Struktur können lange Zeit nicht sonderlich auffallen und eines Tages zu Problemen führen (Stichwörter: Tombstone Lifetime, Lingering Object, DFSR MaxOfflineTimeInDays oder USN Rollback).
Gründe für eine AD-Konsistenzprüfung
Die Gründe für eine derartige Prüfung können vielfältig sein und sicher hat jeder eigene Vorstellungen. Dazu einige Anregungen:
- Eine bevorstehende Active-Directory-Migration
- Hinzufügen eines neuen DC
- Anheben der Funktionsebenen
- Schemaerweiterungen
- Übernahme eines Forest als Dienstleister oder Admin
- Fusionen
- Planung eines Bastion Forest
- Eine Koexistenz mit dem Azure AD (AADConnect, PTA, AD FS)
- Implementieren einer Lösung, welche das Verzeichnis via LDAP anzapft
- Plötzliche Probleme bei User-Anmeldungen
- Fehler in den Eventlogs
- Gewährleistung einer "sauberen" Cluster-Implementierung, beispielsweise für eine hyperkonvergente Lösung mit Storage Spaces Direct
Checkliste für eine Konsistenzprüfung
In größeren Umgebungen mit mehreren Sites und geografisch verteilten Standorten ist eine reibungslose Replikation ein Muss. Doch auch in einem Forest mit einer Domain, bestehend aus 2 oder 3 Controllern, muss ein Abgleich sauber funktionieren. Wichtig, eine AD-Struktur basiert auf DNS-Servern und somit müssen diese mit berücksichtigt werden. Meine Checkliste sieht folgendermaßen aus:
- Vorab: Sicherstellen, dass der System State regelmäßig gesichert wird, Alter der Sicherungen prüfen.
- Verifizieren der System-Zeiten (Stichwörter: Kerberos Richtlinie, AD Zeitstempel).
- Setzt das Unternehmen eine Monitoring-Lösung ein, dann gilt der erste Blick den problematischen Meldungen hierzu.
- Ist die Site-Infrastruktur klar, also wer mit wem repliziert und wohin, sind Erreichbarkeiten zu prüfen. Dazu kann man beginnend einen einfachen Ping verwenden.
- DNS-Topologie prüfen (wo gibt es Namensserver?), Auswertung der DNS Eventlogs.
- AD-Topologie prüfen, Domänen-Controller ermitteln und Rollenverteilung klären.
- Eventlogs zum Directory Service untersuchen.
- Grundlegend und manchmal vernachlässigt: Performance-Werte der AD-Controller begutachten, d.h. erst einmal RAM- und CPU-Auslastungen. Weiter liefern Performance-Counter detaillierte Werte.
- Inspizieren des Speicherortes, Speicherverbrauchs und Speicherplatzes für die Active Directory Multimaster-Datenbank (NTDS.dit, edb, etc.).
- Wenn vorhanden, Malware-Engines betrachten, und nötige Ausschlüsse kontrollieren.
- Die Active Directory-Replikationen testen (nächster Abschnitt).
- Wie lange war ein DC ggfs. offline.
- Einfach und effektiv: Ein User- oder Computer-Objekt anlegen und prüfen, ob dieses auf Replikationspartnern erscheint.
Active Directory Replication Status Tool
Beginnen möchte ich mit der GUI-Variante zur Replikationsanalyse. Das etablierte ADREPLSTATUS-Tool (einige Zeit lokal nicht verfügbar, da komplett in OMS gewandert) untersucht die Replikationen in einer Domäne und/oder im Forest.
Das Tool kommt in meiner Umgebung auf einem Management-Hop-Server zum Einsatz und benötigt die Rechte eines Enterprise Admin für die Forest-Analyse. Fehler lassen sich aus der GUI heraus weiterverfolgen und analysieren.
ADREPLSTATUS Tool ist kostenlos und kann von Microsofts Website heruntergeladen werden.
Replikationsanalyse mit Repadmin
Das Kommando
repadmin /showrepl
zeigt den Status der letzten erfolgreichen oder misslungenen eingehenden Replikation zu den Active Directory-Partitionen an. In diesem Fall wird es auf ADDS-NODE-A ausgeführt, und der eingehende Partner ist ADDS-NODE-B. Soll der eingehende Traffic von Knoten ADDS-NODE-B geprüft werden, sieht das Kommando folgendermaßen aus:
repadmin /showrepl ADDS-NODE-B
Auch diesen Befehl führe ich im Forest unter einem Enterprise Admin-Account (Orga Admin) aus.
Hinweis: Für diesen Beitrag nutze ich einen deutschsprachigen Domänen-Controller unter Windows Server 2016. In freier Wildbahn und internationalen Unternehmen kommen DCs typischerweise in Englisch vor.
Als nächstes frage ich eine Zusammenfassung aller Domänen-Controller ab:
repadmin /replsummary
Folgendes Kommando filtert nur die Replikationsfehler heraus:
repadmin /replsummary /errorsonly
Zusätzlich kann die eingehende Warteschlange ausgegeben werden:
repadmin /queue
Das Tool initiiert mit dem folgenden Aufruf eine Synchronisation von ADDS-NODE-B nach ADDS-NODE-A:
repadmin /replicate ADDS-NODE-A.kueppers.lab ADDS-NODE-B.kueppers.lab DC=kueppers,DC=lab
Repadmin ist verfügbar, sobald die MMC-Snap-Ins und Commandline-Tools für AD DS installiert sind.
Das Diagnose-Tool Dcdiag
Ich beginne bei der Diagnose mit einer detaillierten Verbose-Abfrage und leite ihre Ausgabe in diese TXT-Datei um:
dcdiag /v > C:\ARCHIV\dcdiag_ADDS-NODE-A.txt
Das Speichern der Ergebnisse in einer Textdatei vereinfacht die Suche nach Hinweisen. Darüber hinaus dient sie mir als Dokumentationsgrundlage. Dcdiag prüft zudem die FSMO-Rollen-Halter (Operations masters). Eine generelle Abfrage kann manuell am einfachsten mit netdom erledigt werden:
netdom query fsmo
PowerShell liefert diese Ergebnisse über Get-ADDomain, Get-ADForest oder Get-ADDomainController. Der Screenshot zeigt meinen DC unter Windows Server 2019 in englischer Sprache:
Eine übersichtliche Darstellung der Operations masters liefert dieser Syntax:
Get-ADDomainController -Filter * | Select Name, Domain, Forest, OperationMasterRoles | Where-Object {$_.OperationMasterRoles}
Möchte man alle Domain-Controller im Forest mit Dcdiag testen, dann hilft der Schalter /e weiter, also
dcdiag /e
Eine gezielte Abfrage eines Controllers kann folgendermaßen gestartet werden:
dcdiag /s:ADDS-NODE-B
Eine DNS-Analyse gehört zum Umfang eines Troubleshooting und einer Konsistenzprüfung, Dcdiag hilft hier beispielsweise mit:
dcdiag /test:DNS /DNSBasic
Einen ausführlichen DNS-Test leite ich wieder in eine TXT-Datei um:
dcdiag /test:DNS /DNSAll > C:\ARCHIV\dcdiag_DNSAll.txt
Auch Dcdiag ist erst vorhanden, nachdem die Commandline-Tools für AD DS installiert wurden.
Event-Log Analyse pro Domänen-Controller
Nach dem Einsatz dieser Tools wechseln wir zur Ereignisprotokollierung. Gerade diese liefert wichtige Hinweise für eine Analyse pro DC.
Folgende Protokolle müssen gesichtet und ggfs. gefiltert werden:
- System
- DFS-Replikation
- Directory Service
- DNS Server
- Active Directory Web Services
- DirectoryServices-Deployment
Konsolidiert findet man die wichtigsten unter Benutzerdefinierte Ansichten => Serverrollen => Active Directory-Domänendienste.
Diese Event-IDs sollten Beachtung finden: 1311, 1925, 1988, 2087, 2088, 2095 oder 4012.
Prüfen Sie bei dieser Gelegenheit auch einmal die Eigenschaften eines Protokolls, d.h., die maximal erlaubte Protokollgröße, und was bei Erreichen derselben passiert. Außerdem interessant: Gibt es schon eine Filterung und muss diese angepasst oder gelöscht werden? Nur wenn Protokolle bei einer Fülle von Events nicht ständig überschrieben werden, können Ereignisse der Vergangenheit besser eingegrenzt werden und Hinweise liefern.
Bei meinen Routineprüfungen kontrolliere ich zusätzlich auch immer das DCPROMO.log unter:
%systemroot%\debug
Hier kann nachvollzogen werden, ob es schon Probleme beim promoten gab.
Ordner und Laufwerk der Active Directory Datenbank prüfen
Wie eingangs erwähnt, macht es Sinn, die Datenbank zu inspizieren und das Laufwerk, auf dem sie liegt, auf verfügbaren Speicherplatz zu prüfen.
Die NTDS.dit ist die schützenswerte ESE-Datenbankdatei, sie beinhaltet die Identitäten und Informationen zur AD-Struktur. Achten Sie alle 12 Stunden auf Ereignisse (ID 700 und 701) zur Online-Defragmentierung im Directory-Service-Log. Ein Tool für das AD-Datenbanksystem ist NTDSUTIL.exe. Damit kann man die Datenbank auch offline defragmentieren.
Dieses Programm für die Kommandozeile ist auch in der Lage die Integrität des AD zu prüfen. Dazu geht man folgendermaßen vor:
- Login am Domain Controller als Domain-/Enterprise-Administrator
- PowerShell as Administrator starten
- NTDS-Service beenden mit net stop ntds
Schließlich gibt man folgende Befehlssequenz ein:
ntdsutil
activate instance ntds
files
integrity
Link-Sammlung zur AD-Konsistenzprüfung
• How to perform offline defragmentation of the Active Directory database
• USN Rollback, Virtualized DCs and improvements on Windows Server 2012
• Veraltete Objekte aus dem AD entfernen mit dem Lingering Object Liquidator
• Running Domain Controllers in Hyper-V
• Enable Strict Replication Consistency
• Notes for FSMO Roles (Flexible Single Master Operation)
• Zeiteinstellungen in Windows-Domänen über NTP konfigurieren
• What does DCDIAG actually… do?
• Active Directory files and their functions
• ESE Deep Dive: The Anatomy of an ESE database
• Deep Dive: Active Directory ESE Version Store Changes in Server 2019
• Implementing Content Freshness protection in DFSR
• Just-In-Time Administration (JIT) in Windows Server 2016
• How the Active Directory Replication Model Works
Täglich Know-how für IT-Pros mit unserem Newsletter
Marcel Küppers arbeitet seit über 25 Jahren in der IT, aktuell als Team Leader, zuvor als Consultant und Infrastructure Architect unter anderem für den japanischen Konzern JTEKT/TOYODA mit Verantwortung über die Europastandorte Krefeld und Paris.
Darüber hinaus wirkte er als Berater im EU-Projekt-Team für alle Lokationen des Konzerns mit und ist spezialisiert auf hochverfügbare virtualisierte Microsoft-Umgebungen plus Hybrid Cloud Solutions.
Zertifizierungen: MS Specialist und MCTS für Hyper-V/SCVMM, MCSE, MCITP, MCSA. Zusätzlich zertifiziert für PRINCE2 Projektmanagementmethode.
Ähnliche Beiträge
- baramundi Management Suite 2022 R2: Einstieg in Enduser Experience Monitoring, erweitertes Argus Cockpit
- Event-ID 14,4771: Benutzer können sich nach November-Update nicht anmelden
- Lösung für: Es kann keine Verbindung mit einer Domäne oder zum Domain Controller hergestellt werden
- Authentifizierung am Active Directory mittels Zertifikat scheitert nach Mai-Update
- Windows 365: Zurücksetzen auf Restore-Points, Upgrade für Multimedia Redirection
Weitere Links
4 Kommentare
Klasse Beitrag, hat mir sehr geholfen.
Tom
Prima, ... so schaut man den DC‘s mal vernüftig unter die „Haube“ ....
Danke für das Feedback!
hat mir sehr geholfen, danke schön für die tolle Beschreibung!