Erfahrungen mit einem Read-only Domain Controller (RODC)

Bei einem Kunden sind zwei VMware ESX im Einsatz. Auf dem ESX01 läuft (u.a.) eine Windows VM, die die Aufgaben des Domain Controllers (DC, GC, DNS, DHCP, …) übernimmt. Aus Gründen der Ausfallsicherheit möchte ich auch in kleineren Domains immer einen zweiten Domain Controller am Laufen haben und zwar wenn irgend möglich auf einer andern Hardware. Um die Kosten für eine zusätzliche Windows-Server-Lizenz zu sparen, habe ich einfach die Domain Controller Rolle zusätzlich in einer existierenden Windows VM auf dem ESX02 installiert.

Jetzt hat sich herausgestellt, dass sich auf diesem zusätzlich installierten Domain Controller einige Anwender regelmäßig per Remote Desktop verbinden um die dort eigentlich installierte Software zu pflegen. Dafür benötigen sie lokale Adminrechte um Updates u.ä. installieren zu können.

Da es auf einem Domain Controller aber keine lokalen Benutzer und damit auch keine lokalen Admins gibt, müßte ich diese Anwender jetzt zu Domain Adminstratoren machen damit sie die Rechte erhalten die sie zur Durchführung dieser Tätigkeiten benötigen. Dies ist aus Sicherheitsgründen natürlich nicht möglich.

Für solche Anwendungsfälle (also Situationen in denen weitere Anwender Anmelderechte auf einen Domain Controller benötigen, wie z.B. in Zweigstellen größerer Firmen) hat Microsoft den Read-only Domain Controller (RODC) im Programm. Dieser stellt Lesezugriff auf das Active Directory zur Verfügung, was z.B. für eine Authentifizierung eines Benutzers oder Computers völlig ausreicht. Änderungen am Active Directory wie z.B. das Hinzufügen bzw. Ändern von Benutzern sind aber nicht möglich. Ein wichtiges Feature eines RODC ist die Tatsache, dass man bei der Installation dieser Rolle eine AD-Gruppe angeben kann deren Mitglieder lokale Adminrechte auf dem RODC bekommen, aber eben keine Domain Admins werden.

Die einzelnen Schritte zur Installation eines RODC (Überprüfung der Gesamtstrukturfunktionsebene, einmaliges Ausführen von “adprep /rodcprep”, Hinzufügen eines zusätzlichen DCs mit “dcpromo” und der Option “Schreibgeschützter Domänencontroller (RODC)”) wird in einem TechNet-Artikel gut beschrieben. Eine Umwandlung eines bereits installierten “normalen” DCs in einen RODC ist übrigens nicht möglich; man muß die DC-Rolle dafür zuerst mit dcpromo entfernen und anschließend (mit gewählter RODC-Option) wieder hinzufügen.

Beim Test eines mit Veeam B&R erzeugten “Replikats” der RODC-VM in einem isolierten Netzwerk hat sich später noch ein weiteres Problem herausgestellt: Zuerst benötigt die VM sehr lange zum Hochfahren, da in dem isolierten Netzwerk kein Zugriff auf den “normalen” DC besteht. Irgendwann erscheint dann aber der “Strg-Alt-Entf” Bildschirm und die dazugehörige Anmeldemaske. Eine Anmeldung ist aber nicht möglich (!) und es wird die Fehlermeldung “Es sind momentan keine Anmeldeserver zum Verarbeiten der Anmeldeanforderung verfügbar” angezeigt. Eine Recherche hat ergeben, dass aus Sicherheitsgründen in der Defaulteinstellung an einem RODC keine Kennwörter zwischengespeichert werden und daher zur Authentifizierung ein Zugriff auf den “normalen” DC erforderlich ist. Dies ist in dem hier verwendeten isolierten Netzwerk nicht möglich und daher ist auch keine Anmeldung möglich.

Wie in einem KnowledgeBase-Artikel kurz beschrieben sind zwei Voraussetzungen erforderlich, damit man sich an einem RODC anmelden kann obwohl keine Verbindung zu einem “normalen” DC besteht: Der Benutzer muß Mitglied in der Gruppe “Zulässige RODC-Kennwortreplikationsgruppe” sein und sein Kennwort muß manuell vorab auf dem RODC zwischengespeichert worden sein.
Beides kann man auf dem “normalen” DC in “Active Directory-Benutzer und -Computer” unter “Domain Controllers” überprüfen bzw. verändern: In den Eigenschaften des RODC wird auf dem Reiter “Kennwortreplikationsrichtlinie” eine Liste mit Gruppen angezeigt, darunter die oben erwähnte “Zulässige RODC-Kennwortreplikationsgruppe”. Man muß darauf achten, dass der gewünschte Benutzer ausschließlich in dieser Gruppe Mitglied ist, da die anderen Gruppen den Zugriff explizit verweigen. Man kann in dem Dialog hinter dem Button “Erweitert …” auf dem Reiter “Richtlinienergebnis” überprüfen, ob der gewünschte Benutzer die gewünschten Rechte hat. Vorausgegangene Änderungen an Gruppenmitgliedschaften benötigen manchmal einige Minuten bis sie sich bei dieser Überprüfung auswirken.
Auf dem anderen Reiter “Richtlinienverwendung” im gleichen Dialog kann man sehen für welche Benutzer bereits das Kennwort zwischengespeichert wurde und mit dem Butten “Kennwörter auffüllen …” weitere Kennwörter manuell zwischenspeichern.

Nachdem ich an dieser Stelle dem Benutzer sowohl die Berechtigung gegeben als auch sein Kennwort zwischengespeichert habe, konnte ich mich problemlos auch ohne bestehende Netzwerk-Verbindung zum “normalen” DC an dem Replikat der RODC-VM anmelden.