Active Directory sichern

23.02.2007 von Martin Kuppinger
Zu den täglichen Herausforderungen beim Betrieb von Windows-Infrastrukturen gehört die Sicherung und Wiederherstellung des Active Directory. Der Artikel beschreibt wichtige Punkte, die bei diesen Aufgaben zu beachten sind, und stellt unterschiedliche Lösungsansätze vor.

Eines der unerfreulichsten Ereignisse, die in der IT auftreten können, ist der Ausfall zentraler Infrastrukturkomponenten. Wenn ein DNS-Server nicht funktioniert und Systeme nicht erreichbar sind, oder wenn das Active Directory nicht mehr korrekt arbeitet, sind das mit die schwerwiegendsten Probleme, abgesehen vielleicht vom Ausfall zentraler Produktivsysteme. Daher sind Konzepte für die Sicherung, das Failover und die schnelle Wiederherstellung solcher Infrastrukturdienste von zentraler Bedeutung innerhalb von IT-Betriebskonzepten.

Dem Active Directory als dem zentralen Element innerhalb von Windows-Infrastrukturen kommt dabei besondere Bedeutung zu. Der Artikel erläutert die wichtigsten Aspekte der Sicherung und Wiederherstellung des Active Directory.

Verfügbarkeit und Failover

Die redundante Struktur des Active Directory ist in gewisser Hinsicht Segen und Fluch in Bezug für das Thema der Verfügbarkeit mit korrekten Daten.

Da man in aller Regel mit mehreren Domänencontrollern arbeitet, die auch mit einer geringen Zeitverzögerung die gleichen Informationen halten, kann beim Ausfall eines Domänencontrollers auf andere Systeme zugegriffen werden. Die DNS-Einträge, die über SRV-Records auf alle Domänencontroller verweisen, und die Mechanismen der Clients für die Lokalisierung von Domänencontrollern sorgen auch dafür, dass ein solcher Failover funktioniert.

Problematisch bei dem Konzept sind aber zwei andere Punkte:

Daher ist es wichtig, Änderungen im Active Directory nur im Rahmen definierter Prozesse durchzuführen. Das gilt natürlich insbesondere für strukturelle Anpassungen wie das Hinzufügen von Domänen oder das Verschieben von OUs sowie die Schema-Änderungen. Aber auch andere Anpassungen sollten nur gemäß vorher definierter Richtlinien erfolgen, um größere Probleme 0zu vermeiden.

Bild 1: Mit dem Sicherungsprogramm kann der System State gesichert werden, zu dem auch das Active Directory gehört.

Die spezifischen Berechtigungen für einige Operationen, die über die Gruppen der Schema-Admins und Organisations-Admins umgesetzt werden, schützen zum Teil vor unberechtigten und undurchdachten Änderungen. Dennoch sind ergänzende, klar definierte Regelungen für den Betrieb des Active Directory zwingend erforderlich. Denn die Wiederherstellung des Active Directory aufgrund fehlerhafter Änderungen sollte möglichst nie erforderlich werden.

Sicherung

Für die Sicherung und Wiederherstellung des Active Directory gibt es eine Reihe von API-Funktionen bei Windows. Sie werden einerseits von Microsofts eigenem Backup-Programm genutzt,andererseits aber auch von vielen Drittherstellern. Über diese Schnittstellen lassen sich die nachfolgend besprochenen Kernfunktionen für die Sicherung und Wiederherstellung nutzen. Weitere Informationen zu den APIs finden Sie unter http://msdn.microsoft.com.

Die Sicherung als solche ist unproblematisch. Das Active Directory wird grundsätzlich vollständig gesichert. Über die normalen Sicherungsmechanismen kann keine partielle Sicherung durchgeführt werden. Das ginge allerdings über Exportfunktionen, mit denen ein Teil der Daten ausgelesen wird, es macht aber im Zusammenhang mit den spezifischen Prozeduren für die Wiederherstellung des Active Directory wenig Sinn.

Das Active Directory wird als Teil des System State gesichert, der folgende Komponenten umfasst:

Es ist nicht möglich, einzelne Komponenten auszuwählen. Der Systemstatus muss zwingend vollständig gesichert werden.

Da das Active Directory Teil des Systemstatus ist und dieses auch andere wichtige Elemente umfasst, die aber lokal für den einzelnen Server von Bedeutung sind, reicht es nicht aus, eine Sicherung des Active Directory nur auf einem oder wenigen Domänencontrollern durchzuführen. Die Sicherung muss vielmehr Teil der regulären Sicherungsprozeduren für andere Daten auf den Servern sein. Dabei ist nur zu beachten, dass für den Systemstatus abweichend von sonst häufig gewählten Vorgehensweisen eine tägliche vollständige Sicherung erfolgen muss und eben keine inkrementelle Sicherung unterstützt wird.

Für das Active Directory kann auch eine Sicherung in einem sehr kurzen Intervall erforderlich sein, also mehr als die normale tägliche Sicherung. Hintergrund ist, dass sich nur so ein früherer Status wieder herstellen lässt, ohne dass allzu viele Änderungen verloren gehen. Dabei sollte allerdings eine längere Historie gehalten werden, also beispielsweise Sicherungen der letzten 24 Stunden im Abstand von jeweils drei Stunden plus einige ältere tägliche Sicherungen. Da man sich dabei auf den Systemstatus beschränken kann, wird nicht übermäßig viel Plattenplatz konsumiert.

Letztlich bedeutet das, dass man für die Sicherung des Active Directory ein eigenständiges Konzept entwickeln muss, weil die Anforderungen von denen bei der „normalen“ Datensicherung abweichen. Zusätzliche, sofortige Sicherungen müssen in bestimmten Situationen ebenfalls durchgeführt werden:

Für die maximale Lebensdauer von Backups von Backups spielen zwei Parameter eine wichtige Rolle. Einer davon ist das Attribut tombstoneLifetime im Active Directory. Es wird in der Partition Configuration unterhalb von cn=Services,cn=Windows NT bei cn=Directory Service definiert (Bild 2). Es gibt an, wann gelöschte Objekte endgültig entfernt werden. Nach diesem Zeitraum lässt sich ein Backup nicht mehr für die Wiederherstellung nutzen, da eine Integrität des resultierenden Zustands des Active Directory nicht mehr gewährleistet werden könnte.

Bild 2: Das Intervall tombstoneLifetime bei den Eigenschaften des Active Directory auf einem Domänencontroller.

Der zweite wichtige Parameter steht in engem Zusammenhang. Der Wert Backup Latency Threshold(days) in HKEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\Services\NTDS\Parameters wird normalerweise auf die Hälfte der tombstoneLifetime gesetzt. Diesen Parameter gibt es allerdings erst ab dem Service Pack 1 für den Windows Server 2003.

Wenn das Intervall überschritten ist, wird ein Eintrag im Protokoll des Verzeichnisdienstes erstellt, der darauf hinweist, dass das Active Directory nicht ausreichend häufig gesichert wurde. Allerdings macht es Sinn, hier mit einem deutlich geringeren Wert und einem entsprechend höheren Intervall zu arbeiten. Der Standardwert ist von Bedeutung, um zumindest eine Sicherung zu erhalten, die noch für die Wiederherstellung nutzbar ist.

Wiederherstellung

Deutlich spannender als die Sicherung ist die Wiederherstellung des Active Directory. Es gibt mehrere unterschiedliche Ansätze für die Wiederherstellung, die je nach Bedarf genutzt werden können.

Grundsätzlich entscheidet man sich zunächst zwischen einer maßgebenden (authoritative) und einer nicht maßgebenden Wiederherstellung. Erstere überschreibt ausgewählte Werte auf anderen Domänencontroller und kann beispielsweise für die Wiederherstellung von gelöschten Objekten genutzt werden. Der Regelfall ist aber die nicht maßgebliche Wiederherstellung, bei der ein Domänencontroller wiederhergestellt wird, der aber anschließend die seit der letzten Sicherung erfolgten Änderungen von anderen Domänencontrollern empfängt.

Um einen Domänencontroller wieder herzustellen, muss er im so genannten Directory Services Restore Mode gestartet werden. Damit wird das Active Directory nicht geladen, sodass eine Wiederherstellung erfolgen kann. Für diesen Modus wird das bei der Einrichtung des Active Directory verwendete Kennwort für die Wiederherstellung benötigt.

Beim einem lokalen Start kann mit [F8] in diesen Modus gewechselt werden. Falls nicht lokal gearbeitet wird, kann vor dem Neustart der Parameter

/SAFEBOOT:DSREPAIR

in die boot.ini für das Default-Betriebssystem eingefügt werden. Damit wird das System ebenfalls in diesem Modus geladen. Zu beachten ist dabei, dass der Eintrag in der boot.ini nach der Wiederherstellung natürlich wieder entfernt werden muss.

Die Wiederherstellung kann anschließend von der Sicherung erfolgen. Wenn das Sicherungsprogramm des Windows Server 2003 zum Einsatz kommt, muss dafür gesorgt werden, dass Sicherheitseinstellungen, Junction Points und Volume Mount Points wiederhergestellt werden. Außerdem lässt sich festlegen, dass die Daten auf dem Laufwerk SYSVOL als primäre Daten für weitere Repliken hergestellt werden. Das ist aber nur erforderlich, wenn nur ein Domänencontroller in der Domäne genutzt wird.

Für die nicht maßgebende Wiederherstellung sind außer der Verifizierung der Funktion des Active Directory keine weiteren Schritte mehr erforderlich. Es kann ein Neustart erfolgen.

Maßgebende Wiederherstellung

Nun ist festzulegen, welche Objekte so wiederhergestellt werden sollen, dass ihre Werte aus der Sicherung die gegebenenfalls aktuelleren Werte auf anderen Domänencontrollern überschreiben. Die Steuerung, welche Objekte maßgebend sind, erfolgt über ntdsutil.exe. Näheres dazu lesen Sie im Kasten zum Thema.

Interessant sind die Änderungen einerseits mit dem Windows Server 2003 und andererseits mit dem Service Pack 1 für den Windows Server 2003. Mit dem Windows Server 2003 wurde die so genannte linked-value replication (LVR) eingeführt. Sie steht allerdings nur in Domänen mit Windows 2003-Level zur Verfügung. In diesen Domänen werden die Informationen zu Gruppenmitgliedschaften als einzelne Informationen repliziert. Im Ergebnis wird es damit möglich, Gruppenmitgliedschaften bei der maßgebenden Wiederherstellung selektiv zu aktivieren.

Bei Domänen, deren Modus auf den Windows Server 2003-Modus umgestellt wurde, wird LVR übrigens nur mit Gruppen genutzt, die nach der Heraufstufung des Domänenmodus angelegt wurden.

Allerdings gibt es mit dem Service Pack 1 für den Windows Server 2003 wiederum Anpassungen, mit denen sich Gruppenmitgliedschaften auch für Gruppen wiederherstellen lassen, die vor der Einrichtung von LVR angelegt wurden.

Das Werkzeug ntdsutil.exe erzeugt nun eine Textdatei, die die maßgebend wiederhergestellten Objekte identifiziert. Auf Basis dieser Datei wird eine LDIF-Datei erzeugt, die wiederum für die Wiederherstellung aller Gruppenmitgliedschaften zum Zeitpunkt der maßgebenden Wiederherstellung genutzt werden kann. Dieses Verfahren ist zwar immer noch relativ aufwändig, aber doch deutlich einfacher als die manuelle Anpassung von Gruppenmitgliedschaften.

Die Bedeutung von ntdsutil.exe

Das Tool ntdsutil.exe ist eines der wichtigsten Werkzeuge für das Troubleshooting des Active Directory. Entsprechend spielt es auch bei der komplexen maßgebenden Wiederherstellung eine wichtige Rolle. Dort werden die Objekte markiert, die maßgebend wiederhergestellt werden, also die Werte in anderen Repliken überschreiben sollen.

Wenn Sie die entsprechenden Objekte bei authoritative restore auswählen, können Sie sowohl Teilbäume als auch einzelne Objekte oder mehrere Objekte für die Wiederherstellung angeben. Nach der Festlegung muss mit repadmin.exe eine explizite, manuelle Replikation erfolgen.

Active Directory Fast Recovery

Microsoft hat ein Whitepaper mit dem Titel „Windows Server 2003 Active Directory Fast Recovery with Volume Shadow Copy Service and Virtual Disk Service“ herausgegeben, in dem die Nutzung dieses Ansatzes für die schnelle Wiederherstellung von Domänencontrollern detailliert erläutert wird.

Active Directory Fast Recovery

Mit Hilfe der Storage-Dienste Volume Shadow Copy Service und Virtual Disk Service lassen sich beim Windows Server 2003 Domänencontroller schneller als mit den weiter oben beschriebenen Vorgehensweise wiederherstellen. Damit wird die Schwäche von herkömmlichen Backups umgangen, die relativ zeitintensiv sind, sowohl bei der Erstellung als auch bei der Wiederherstellung.

Das Verfahren ist eine Spiegelung des Systems. Schattenkopien arbeiten dabei sehr effizient, sodass sie auch in kurzen Abständen durchgeführt werden können. Wenn man sich dabei auf die wesentlichen Informationen zum Systemstatus beschränkt, ist auch der erforderliche Plattenplatz überschaubar. Da die Speicherung im SAN erfolgt, sind Speicherung und Zugriff auf die gespeicherten Daten sehr effizient.

Die Grundidee des Verfahrens ist relativ einfach:

Die Zeit für die Wiederherstellung beschränkt sich in diesem Szenario auf den Wechsel zwischen den beiden SAN-Volumes und einen Neustart des Systems sowie die anschließende Replikation. Bei aktuellen Snapshots und definierten Prozeduren für das Operating ist eine Wiederherstellung innerhalb weniger Minuten durchgeführt. Zudem werden die Domänencontroller durch die Snapshots, die weitgehend im SAN erfolgen, wesentlich weniger belastet als durch die Bandsicherung.

Bei einer maßgebenden Wiederherstellung sind allerdings auch in diesem Verfahren mehr Eingriffe erforderlich. Auch der Aufwand für Hardund Software ist letztlich höher, weil eben ein SAN benötigt wird. In Umgebungen mit sehr hohenAnforderungen an die Verfügbarkeit ist dieses Verfahren aber eine interessante Option.

iSCSI kann übrigens für den Start von einem SAN-Device nur genutzt werden, wenn die entsprechende Hardware zur Verfügung steht. Laut Microsoft sollen zukünftige iSCSI-Initiatoren als reine Softwarelösung dieses Verfahren allerdings ebenfalls unterstützen.

Wie geht es weiter?

Die maßgebende Wiederherstellung wollen wir im zweiten Teil der Artikelserie detailliert besprechen. Dabei wird die Wiederherstellung unterschiedlicher Objekte behandelt. Ebenso gehen wir auf den Umgang mit den speziellen LDIF-Dateien ein, die beim Service Pack 1 für den Windows Server 2003 erzeugt werden können.