Tags: Active Directory, Rechteverwaltung, Gruppenrichtlinien
Wenn man Standardbenutzern die Möglichkeit bietet, ihre PCs an eine AD-Domäne anzuschließen, dann birgt dies einige Sicherheitsrisiken. Nicht besser ist es, dafür einen Domänen-Admin zu verwenden. Als Alternative bietet sich an, ein eigenes Konto für diese Aufgabe einzurichten und dieses mit minimalen Rechten auszustatten.
In seiner Standardkonfiguration räumt das Active Directory authentifizierten Benutzern das Recht ein, bis zu 10 Computer in eine Domäne aufzunehmen. Dieser Wert wird im Attribut ms-DS-MachineAccountQuota gespeichert, welches in diversen Angriffsszenarien eine Rolle spielt.
Es ist mithin eine von Microsoft empfohlene Best Practice, normalen Benutzern die Berechtigung für den Domain Join zu entziehen.
Umgekehrt ist es natürlich genauso wenig sinnvoll, privilegierte Konten für diesen Zweck einzusetzen. Dies gilt ganz besonders für die Automatisierung des Domain Join beim Deployment von Windows.
Stattdessen richtet man für diese Aufgabe ein eigenes Service-Konto ein, das nur die notwendigsten Berechtigungen enthält. Um für den Beitritt der PCs zu einer AD-Domäne eine möglichst geringe Angriffsfläche zu bieten, ergreift man folgende Maßnahmen:
- Anpassen der Default Domain Controllers Policy
- Neuen Wert an das Attribut ms-DS-MachineAccountQuota zuweisen
- Eigenes Konto für Domain Join einrichten
- Berechtigungen auf OU-Ebene einräumen
Authentifizierte Benutzer aus Gruppenrichtlinie entfernen
Standardmäßig enthält die Default Domain Controllers Policy eine Einstellung, die allen Benutzer das Recht zum Domain Join gewährt.
Diese findet sich unter Computerkonfiguration => Richtlinien => Windows-Einstellungen => Sicherheitseinstellungen => Lokale Richtlinien => Zuweisen von Benutzerrechten und heißt Hinzufügen von Arbeitsstationen zur Domäne.
Sie ist per Vorgabe aktiviert und enthält Authentifizierte Benutzer. Diese entfernt man hier, um ihnen diese Berechtigung zu nehmen.
Wert von AD-Attribut auf 0 setzen
Ergänzend zur Einstellung in den Gruppenrichtlinien legt das Attribut ms-DS-MachineAccountQuota fest, wie viele PCs ein Benutzer in die Domäne aufnehmen darf. Wie erwähnt, liegt der Standardwert bei 10, aber dieser sollte aus Sicherheitsgründen auf 0 gesetzt werden.
Dies kann man etwa über AD-Benutzer und -Computer tun. Dort öffnet man die Eigenschaften der Domäne und wechselt anschließend zum Reiter Attribut-Editor. Damit kann man das Attribut bearbeiten und auf den gewünschten Wert ändern.
Alternativ kann man für diese Aufgabe zu PowerShell greifen. Zuerst lässt man sich den aktuellen Wert anzeigen:
Get-ADDomain | Get-ADObject -Properties ms-DS-MachineAccountQuota
Anschließend weist man dem Attribut den Wert 0 zu:
Set-ADdomain -Identity contoso.com `
-Replace @{"ms-DS-MachineAccountQuota"="0"}
Service-Benutzer einrichten
Nach Umsetzung der beschriebenen Maßnahmen sind nur mehr administrative Konten in der Lage, Computer in die Domäne aufzunehmen. Daher benötigt man nun User, deren Berechtigungen speziell auf diese Aufgabe zugeschnitten sind. In der Regel wird man dafür eine Gruppe einrichten und diese mit den Rechten ausstatten.
Dabei stellt sich natürlich die Frage, ob diese Konten aufgrund der Zuweisung von 0 zu ms-DS-MachineAccountQuota nicht ebenfalls am Domain Join gehindert werden. Wenn man die entsprechenden Berechtigungen explizit an sie delegiert, dann hat der Wert in diesem Attribut jedoch keine Auswirkung.
Die einfachste Methode für die Delegierung besteht darin, in AD-Benutzer und -Computer das Kontextmenü der Domäne zu öffnen und den Befehl Objektverwaltung zuweisen auszuführen.
Dieser startet einen Wizard, in den man zuerst die Benutzer oder Gruppen einträgt, die man berechtigen möchte, und danach wählt man die Aufgabe Fügt einen Computer einer Domäne zu.
Wenn man anschließend in den Eigenschaften der Domäne unter Sicherheit nachsieht, dann erkennt man, dass die Benutzer das Recht Computer-Objekte erstellen bekommen haben.
Diese Lösung ist aber häufig nicht ideal, da sie gleich für eine ganze Domäne gilt und dabei mehr Rechte zuteilt, als in bestimmten Szenarien erforderlich sind.
Domain Join für OUs delegieren
Gerade in größeren Unternehmen wird man für verschiedene organisatorische Einheiten jeweils eigene Konten verwenden. In diesem Fall muss man die Berechtigungen selbst eintragen, weil im Wizard die entsprechende Option nur auf der Ebene der Domäne, aber nicht bei OUs existiert.
Bevor man die Rechte zuweist, sollte man überlegen, ob die Service-User tatsächlich die Computer-Konten im Active Directory anlegen müssen. Alternativ könnten andere Benutzer bereits vorab die Accounts erzeugen ("Prestaging"), so dass man für den reinen Domain Join mit noch weniger Privilegien auskommt.
Um diese Aufgabe für eine OU zu delegieren, wechselt man in deren Eigenschaften zu Sicherheit => Erweitert. Über Hinzufügen öffnet man den entsprechenden Dialog und trägt den Prinzipal ein.
Unter Anwenden auf wählt man Untergeordnete Computer-Objekte und hakt in der Liste der Berechtigungen zusätzlich zu den bereits aktivierten Optionen noch Kennwort zurücksetzen, "servicePricipalName" schreiben ("Write servicePrincipalName"), "userAccountControl" schreiben ("Write userAccountControl") und "DNS-Hostnameattribute" schreiben ("Write DNS Host Name Attributes") an.
Bei Bedarf kann man noch "Betriebssystem" schreiben ("Write Operating System"), "Betriebssystemversion" schreiben ("Write Operating System Version") und "userPrincipalName" schreiben ("Write userPrincipalName") auswählen, um dem User das Aktualisieren dieser Attribute zu erlauben.
Die genannten Berechtigungen reichen aus, wenn ein Computer-Konto im AD bereits besteht. Soll der Service-User dieses beim Domain Join zusätzlich anlegen, dann benötigt er für Dieses und alle untergeordneten Objekte das Recht Computer-Objekte erstellen.
Zusammenfassung
Per Voreinstellung dürfen alle authentifizierten Benutzer bis zu 10 Computer in eine AD-Domäne aufnehmen und dabei deren Konten anlegen. Dies sollte man aus Sicherheitsgründen unterbinden. Zu diesem Zweck passt man die Gruppenrichtlinie Default Domain Controllers Policy an und setzt den Wert des Attributs ms-DS-MachineAccountQuota auf null.
Den Domain Join sollten stattdessen eigens dafür eingerichtete Service-Konten übernehmen. Der Wizard in AD-Benutzer und -Computer vereinfacht diese Aufgabe für die gesamte Domäne.
Wer diese Berechtigung aber auf OU-Ebene delegieren will, muss sie von Hand zuweisen. Falls Admins die Computer-Konten schon vor dem Beitritt der PCs zur Domäne einrichten, kommt man mit weniger Rechten für den Service-User aus.
Täglich Know-how für IT-Pros mit unserem Newsletter
Verwandte Beiträge
- Health Report erstellen für Local Administrator Password Solution (LAPS)
- LAPS: Lokale Administrator-Passwörter zentral verwalten mit GPOs
- Administration von Gruppenrichtlinien an Benutzer delegieren
- Häufige Missverständnisse zu Gruppenrichtlinien
- Besitzer von Computer-Objekten im Active Directory anzeigen und ändern
Weitere Links