Snapshots vom Active Directory erstellen, mounten und analysieren

Active-Directory-Snapshots ThumbnailDie Möglichkeit, vom Active Directory Snapshots anzufertigen, gibt es neu seit Windows Server 2008. Analog zu einem Snapshot vom Dateisystem wird damit eine Kopie der AD-Datenbank mit allen Objekten erstellt. Damit kann man etwa alte AD-Datenbankstände einsehen und den Status von Objekten und deren Attributen über die Zeit nachverfolgen, also Vorher-Nachher-Vergleiche anstellen. Nicht möglich ist es, den kompletten AD-Stand aus einem Snapshot zu rekonstruieren.

AD-Snapshots werden etwa im Laufe einer Windows-Serversicherung automatisch angefertigt, sofern man sie nicht explizit ausgeschlossen hat, können aber auch jederzeit manuell angefertigt werden.

Snapshots manuell erstellen und Snapshots auflisten

Mit ntdsutil.exe erstellt man AD-Snapshots und kann sich eine Übersicht verschaffen, welche bereits vorhanden sindEinen Snapshot kann man mit dem Kommandozeilentool ntdsutil.exe manuell erstellen. Dazu ruft man es innerhalb einer Eingabeaufforderung mir Administratorrechten auf und gibt folgende Befehle ein:

activate instance ntds
snapshot
create

Beendet wird das Tool durch die zweimalige Eingabe von quit. Diese Befehle können auch aus einer Zeile als Argument an ntdsutil.exe übergeben werden, etwa um den Snapshot per Aufgabenplaner zu automatisieren:

ntdsutil "activate instance ntds" snapshot create quit quit

Gibt man im Kontext „Snapshot“ den Befehl list all statt create ein, erhält man eine Auflistung aller angefertigten Snapshots.

Snapshots mounten, Objekte ansehen und vergleichen

Snapshots mounten: Zuerst bindet man die Snapshot-Datenbank ins Dateisystem einBeim Auflisten der Snapshots sind diese jeweils mit einer Nummer versehen. Active-Directory-Snapshots verbergen sich jeweils hinter denen, die den Buchstaben des Systemlaufwerks vor ihrer UID haben.

mount ‹Nummer›

hängt man einen Snapshot ins Dateisystem ein. ntdsutil.exe gibt zurück, unter welchem Ordner dies geschieht. Hierhin navigiert man im Explorer und öffnet im Bereitstellungspunkt den Ordner %SystemRoot%\NTDS. Mit gedrückter ‹Shift-Taste› ruft man per rechter Maustaste das erweiterte Kontextmenü der Datei ntds.dit auf, klickt auf den Menüpunkt „Als Pfad kopieren“ bekommt dadurch den Pfad- und Dateinamen der Snapshot-Datenbankdatei in die Zwischenablage.

Diesen verwendet man in einer zweiter Eingabeaufforderung: In dieser stellt man die Snapshot-Datenbankdatei per LDAP auf einem alternativen Port zur Verfügung:

dsamain -dbpath "‹\Pfad\zur\›ntds.dit" –ldapport 10389

Dann startet man eine LDAP-Instanz für den ins Dateisystem eingebundenen Snapshotweiter. Als LDAP-Port taugt auch ein beliebiger anderer unbenutzter Port. dsamain.exe startet eine separate Instanz der Active-Directory-Domänendienste auf dem angegebenen Port und informiert darüber, wenn es damit fertig ist. Der Vorgang dauert ein paar Sekunden.

Mit den AD-Verwaltungstools kann man sich dann zu dieser LDAP-Instanz verbindenNun kann man die Snapshot-Datenbank mit den üblichen AD-Verwaltungstools bearbeiten, etwa dem MMC-Snap-In „Active-Directory-Benutzer und -Computer“. Hier klickt man mit der rechten Maustaste auf die Domäne und wählt aus dem Kontextmenü den Punkt „Domänencontroller ändern“. Hier wählt man die Option, sich mit einem bestimmten Controller oder AD-LDS-Instanz zu verbinden und gibt den eigenen DC an, gefolgt von einem Doppelpunkt und dem oben angegebenen LDAP-Port. Verwendet man AD-Snapshots öfter, bietet es sich an, für diese Verbindung extra eine Management-Console zu erstellen und diese zu speichern. Diese kann man dann etwa parallel zur Console für das aktuelle AD verwenden, um Objekte und Attribute zu vergleichen. Die Snapshot-Datenbank kann nicht geschrieben werden, entsprechend sind alle GUI-Elemente zur Bearbeitung deaktiviert. Dies bietet auch gleich eine gute visuelle Hilfe.

Alternativ können auch der ADSI-Editor adsieedit.msc oder ldp.exe verwendet werden; sie bieten beide jeweils die Möglichkeit, sich mit benutzerdefinierten LDAP-Instanzen zu verbinden.

Snapshots unmounten, Snapshots löschen

Die für einen gemounteten Snapshot gestartete LDAP-Instanz beendet man, indem man das laufende dsamain.exe per ‹Ctrl›-‹C› abbricht. Die Service-Instanz wird daraufhin heruntergefahren und eine entsprechende Meldung angezeigt.

Die Aufhebung der Bereitstellung des Snapshots im Dateisystem geschieht in ntdsutil.exe, indem man im „Snapshot“-Kontext den Befehl

unmount ‹Nummer›

absetzt. Die gegenwärtig eingebundenen erfährt man per

list mounted

Löschen kann man einen Snapshot per

delete ‹Nummer›

im „Snapshot“-Kontext. Beide Befehle funktionieren analog zu den anderen auch auf einer Zeile der Eingabeaufforderung:

ntdsutil "activate instance ntds" snapshot "unmount ‹Nummer›" quit quit

respektive

ntdsutil "activate instance ntds" snapshot "delete ‹Nummer›" quit quit

Keine Kommentare

Kommentar hinzufügen

Der Inhalt dieses Feldes wird nicht öffentlich zugänglich angezeigt. Wenn mit der von Ihren angegebenen Mail-Adresse ein Gravatar verknüpft ist, dann wird dieser neben Ihrem Kommentar eingeblendet.
  • Internet- und E-Mail-Adressen werden automatisch umgewandelt.
  • Zulässige HTML-Tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Zeilen und Absätze werden automatisch erzeugt.
  • Mail-Adressen werden im Seitenquelltext unkenntlich gemacht, um sie vor dem automatischen Erfassen durch Spammer zu schützen.

Weitere Informationen über Formatierungsoptionen