Wie entferne ich eine Gruppenrichtlinie ohne Zugriff auf die Domäne (Controller)?

8

Ich habe einen (WS2012-R2) Domänencontroller und eine Reihe von (WS2012-R2) Servern, die Mitglied der Domäne sind. Ich habe versehentlich eine Gruppe hinzugefügt, der alle Administratoren angehören, und zwar in den Gruppenrichtlinien "Anmeldezugriff lokal verweigern", "Anmeldung als Dienst verweigern", "Remotezugriff verweigern" und "Netzwerkzugriff verweigern". Dies führte dazu, dass ich und alle anderen Administratoren (sogar das integrierte Konto) vom Domänencontroller ausgeschlossen wurden.

Gibt es eine Möglichkeit, den Zugriff auf den Server wiederherzustellen, indem Sie das Gruppenrichtlinienobjekt entfernen oder ein Administratorkonto aus der Gruppe entfernen, die abgelehnt wurde?

shagrinar
quelle
3
Nur ein Gedanke, wahrscheinlich akademisch, aber wie machst du das versehentlich ?
Colyn1337
@ Colyn1337 Es ist wahrscheinlich nicht zufällig, aber nicht gut überlegt. Die Administratorkonten sind Mitglied einer Gruppe, zu der jeder Mitarbeiter gehört, und ich habe diese Gruppe zu den oben genannten Gruppenrichtlinienobjekten hinzugefügt, was zu einer Sperrung jedes Kontos führte.
Mir
Gilt diese Richtlinie auch für andere DCs oder nur für diesen? (Können Sie einfach einen neuen DC bauen und gewaltsam die Rollen übernehmen, die dieser hat?)
Katherine Villyard

Antworten:

6

Zwei Gedanken kommen mir in den Sinn.

Möglicherweise können Sie eine Boot-CD verwenden, um offline auf den Domänencontroller zuzugreifen und das betreffende Gruppenrichtlinienobjekt manuell zu bearbeiten oder zu löschen. Die Gruppenrichtlinienobjekte einer Domäne befinden sich unter dem SYSVOLOrdner im Dateisystem auf Domänencontrollern und werden als Registrierungseinstellungen angewendet Auf diese kann von einer Boot-CD aus zugegriffen werden. Dies wird jedoch entweder durch Replikation rückgängig gemacht oder führt zu Domänenreplikationsfehlern, sobald der Domänencontroller, auf dem Sie dies getan haben, mit den anderen Domänencontrollern in der Domäne verbunden ist. (Ich gehe hier davon aus, dass Sie mehr als einen Domänencontroller in Ihrer Domäne haben, wie Sie sollten ... Wenn Sie nur einen haben, wäre dies kein schlechter Ansatz).

Der andere Ansatz besteht darin, in den Verzeichnisdienst-Wiederherstellungsmodus zu wechseln und eine autorisierende Wiederherstellung aus einer Sicherung durchzuführen, die vor diesem Gruppenrichtlinienobjekt erstellt wurde. (Und auch dies basiert auf der Annahme, dass Sie das tun, was Sie tun sollten, und dass Backups wiederhergestellt werden müssen.)

HopelessN00b
quelle
Wenn Sie eine kleine Anzahl von DCs (2,3,4?) Haben und es schaffen, alle bis auf einen zu verlieren, funktioniert möglicherweise die erste Option. Fahren Sie herunter, gehen Sie in den Ruhestand, zerstören Sie alle bis auf einen DC, übernehmen Sie die FSMO-Rollen. Wenn Sie so weit kommen, bauen Sie einige neue DCs, um die zu ersetzen, die Sie zerstören mussten.
Clayton
4

Ich habe das nicht wirklich versucht. (Entschuldigung.) Ich gehe auch davon aus, dass RSAT aufgrund von "Remote- / Netzwerkzugriff verweigern" nicht funktioniert. (Wenn Sie dies nicht versucht haben, ist es einen Versuch wert, aber ich bin nicht optimistisch.)

Vielleicht können Sie ein neues Administratorkonto mit einer Hiren's Boot-CD erstellen und dieses Konto zum Bearbeiten der Richtlinie verwenden.

Katherine Villyard
quelle
Vielen Dank für Ihre Antwort. Leider kann ich die Hiren's Boot-CD nicht in meiner virtuellen Maschine ausführen, da es sich um eine Hyper-V-Maschine der Generation 2 handelt. Gibt es vielleicht eine alternative Version von Hirens Boot-CD?
Shagrinar
ADUC verwendet LDAP-Abfragen, daher sollte es nicht durch Einschränkungen zum Verweigern des Netzwerkzugriffs blockiert werden. Sie müssen es jedoch tatsächlich mit einem Domänenadministratorkonto starten. Dies ist nur möglich, wenn Sie über mindestens einen Computer verfügen Das betreffende Gruppenrichtlinienobjekt wird nicht angewendet. PowerShell kann jedoch möglicherweise stattdessen helfen (Einzelheiten finden Sie in meiner Antwort).
Massimo
3
Bei dieser Antwort kommt ein Gedanke auf. Da es sich um einen Domänencontroller handelt, der keine lokalen Konten hat ... Wie würde man ein neues Administratorkonto über eine Boot-CD auf einem Domänencontroller erstellen? Ich zeichne einen Rohling. Ich habe diese Technik verwendet, um das Administrator- / DSRM-Kennwort auf Domänencontrollern zurückzusetzen, bezweifle jedoch, dass damit ein neuer Benutzer erstellt werden kann. Vermisse ich etwas
HopelessN00b
1
@ KatherineVillyard FalconFour ist eine fortgeschrittenere / modernere / nützlichere Version von HBCD ... Just sayin '
@shagrinar Wenn Sie PE booten können - ich habe eine PXE-Option von PE nur für Notfälle und Diagnosen -, könnte dies auch funktionieren, obwohl Sie keine MMC ohne Verzerrungen haben. Aber versuchen Sie zuerst RSAT, wenn Sie nicht haben. Es ist die am wenigsten schmerzhafte Option.
Katherine Villyard
3

Wo wird die Gruppenrichtlinie angewendet? Nur für DCs oder für die gesamte Domain?

Wenn es nur auf Domänencontroller angewendet wird, können Sie sich weiterhin mit einem Domänenadministratorkonto bei einem anderen Mitgliedscomputer anmelden. Sie können dann die Gruppenrichtlinien-Verwaltungskonsole und / oder alle anderen AD-Verwaltungstools aktivieren, wenn Sie sich auf einem Server-Betriebssystem befinden, oder RSAT installieren und dasselbe tun, wenn es sich um eine Workstation handelt. Mit diesen Tools können Sie das betreffende Gruppenrichtlinienobjekt oder zumindest Benutzer und Gruppen bearbeiten (die ADUC-Konsole verwendet LDAP-Abfragen und unterliegt daher keinen Anmeldebeschränkungen).

Wenn die Richtlinie stattdessen auf die gesamte Domäne angewendet wird und Sie sich mit einem Domänenadministratorkonto nirgendwo anmelden können , kann eine mögliche Problemumgehung das PowerShell Active Directory-Modul sein : Fast alle Cmdlets verfügen über einen -credentialParameter, mit dem Sie die Anmeldeinformationen angeben können Zum Ausführen des Befehls, auch wenn PowerShell tatsächlich unter einem anderen Benutzerkonto ausgeführt wird . Dies schließt Remove-ADGroupMember ein . Eine mögliche Lösung wäre also:

  • Melden Sie sich mit einem verfügbaren Benutzerkonto bei einem beliebigen Mitgliedscomputer an.
  • Stellen Sie sicher, dass AD-Verwaltungstools auf dem System installiert sind (aktivieren Sie sie entweder auf einem Server oder installieren Sie RSAT auf einer Workstation).
  • Starten Sie PowerShell.
  • Import-Module ActiveDirectory
  • $admincreds = Get-Credential (Daraufhin wird ein Fenster geöffnet, in dem Sie Anmeldeinformationen für ein Domänenadministratorkonto eingeben müssen.)
  • Remove-ADGroupMember <GroupName> <UserName> -Credentials $admincreds

Wenn dies funktioniert, <UserName>wird es entfernt <GroupName>und daher wird es von der Richtlinie nicht mehr gesperrt.

Massimo
quelle
4
Gilt nicht Deny network accessfür den Zugriff über RSAT (und PowerShell)? Nicht, dass ich im Begriff bin zu testen oder Erfahrung darin habe, mich aus meinen DCs auszusperren, um darauf zurückzugreifen, aber ich glaube, dass dies aus diesem Grund nicht funktioniert.
HopelessN00b
ADUC verwendet LDAP-Abfragen. Diese sollten außerhalb des Bereichs liegen, der durch "Netzwerkzugriff verweigern" eingeschränkt ist. Das Problem besteht darin, dass es mit einem Domänenadministratorkonto ausgeführt wird. Ich bin mir bei PowerShell nicht sicher, aber es muss nicht unter demselben Benutzerkonto ausgeführt werden, mit dem Sie den Befehl ausführen. Es ist also definitiv einen Versuch wert.
Massimo
Im Anzeigenwiederherstellungsmodus wäre er gut, wenn er den gpo-Ordner löscht oder eine ntfs-Verweigerung hinzufügt.
Yagmoth555
@Massimo Wie ich bereits sagte, kann ich nicht sicher sagen, aber in der Dokumentation zu diesem bestimmten Gruppenrichtlinienobjekt heißt es unter Best Practices: "Da alle Active Directory-Domänendienste-Programme eine Netzwerkanmeldung für den Zugriff verwenden, sollten Sie vorsichtig sein, wenn Sie dieses Benutzerrecht zuweisen auf Domänencontrollern. " Das klingt für mich wie eine Warnung, dass diese spezielle Konfiguration für "alle Active Directory-Domänendienste-Programme" gilt.
HopelessN00b
3
Ich habe beides versucht, aber ohne Erfolg. Der LDAP-Zugriff ist deaktiviert.
Shagrinar
3

Starten Sie Ihren Domänencontroller im Active Directory-Wiederherstellungsmodus mit dem Konto, das Sie beim Erstellen Ihrer Domäne eingerichtet haben. (Es ist einfach ein lokales Administratorkonto auf dem DC mit dem Namen Administrator, und das Kennwort wurde in dcpromo eingerichtet.)

Entfernen Sie von dort alle NTFS-Berechtigungen auf Ihrem SYSVOLVolume im Ordner "GPO-ID". (Überprüfen Sie den zuletzt geänderten Ordner, um das zuletzt geänderte Gruppenrichtlinienobjekt zu finden.)

In diesem Modus wird die Active Directory-Datenbank nicht geladen, Sie haben jedoch Zugriff auf das Dateisystem.

Wenn nichts funktioniert, können Sie in diesem Modus einen gpofixBefehl versuchen . Beachten Sie jedoch, dass ALLE Gruppenrichtlinienobjekte entfernt werden.

yagmoth555
quelle
Gibt es eine Möglichkeit, alle Gruppenrichtlinienobjekte zu sichern, damit ich sie wieder zurücksetzen kann (ohne das Lockout-Gruppenrichtlinienobjekt)?
Shagrinar
2
@shagrinar Nein ... aber das Entfernen aller NTFS-Berechtigungen für den Gruppenrichtlinienobjektordner ist möglicherweise besser, da dadurch die Anwendung des Gruppenrichtlinienobjekts blockiert wird und Ihr DC nur anzeigt, dass Ihr Gruppenrichtlinienobjekt in der MMC des Gruppenrichtlinienobjekts beschädigt ist.
yagmoth555
Das Entfernen aller NTFS-Berechtigungen für SYSVOL hat keine Auswirkungen, ebenso wie das Entfernen aller Dateien aus dem Verzeichnis. Die Eingabe von DSRM war möglich und ich konnte mich mit dem Konto anmelden, aber das Ausführen von dcgpofix gab mir eine Fehlermeldung, dass ich mit einem Domänenmitgliedskonto angemeldet sein muss ...
shagrinar
Die GPO-Einstellung wird weiterhin angewendet. Können Sie den Cache im DSRM-Modus löschen? (Siehe dort für den Registrierungsspeicherort; support.microsoft.com/en-us/kb/201453 )
yagmoth555
Ich habe alles in der Geschichte entfernt , leider kein Erfolg beim Einloggen.
Shagrinar
2

Als die Domain ursprünglich erstellt wurde, wurde ein "Gott" -Konto erstellt. Finden Sie heraus, was das war, sein Passwort, und Sie sollten sich bei dem DC anmelden können, der den globalen Katalog hostet. Von dort aus sollten Sie in der Lage sein, das, was Sie getan haben, rückgängig zu machen und ihm Zeit zu geben, sich zu verbreiten.

Wenn dies fehlschlägt, können Sie einige Hackertechniken verwenden, aber es wäre für mich nicht angemessen, dies hier weiterzugeben. Wenden Sie sich an einen lokalen Sicherheitsexperten, der in der Regel mit Hackertechniken vertraut ist und Ihnen dabei helfen kann, die Domain wiederzugewinnen.

Wenn dies nur ein paar Server sind und es nicht kritisch ist, können Sie natürlich genauso gut löschen und von vorne beginnen.

Colyn1337
quelle
Können Sie mir einen Hinweis geben, wie Sie herausfinden können, um welches Konto es sich handelt? Ich kenne das lokale Administratorkonto des Domänencontrollers, das sich bei der Installation von Active Directory in ein Domänenkonto verwandelt hat, dies ist jedoch ebenfalls betroffen. Das Löschen der Server wäre meine letzte Option.
Shagrinar
Wenn Sie eine brandneue Domain erstellen, sei es per Skript oder Assistent, müssen Sie ein einzelnes Hauptkonto erstellen und ihm ein Kennwort geben. Es wird im Allgemeinen nur in Zeiten der Notfallwiederherstellung verwendet (wie jetzt) ​​und nur die Person, die die Domain erstellt hat, würde es wissen. Wenn Sie nicht wissen, wer die Domain erstellt hat, wenden Sie sich an Ihren Direktor. Wahrscheinlich hat jemand in der Verwaltungskette diese Informationen erhalten.
Colyn1337
1
Das Konto, über das Sie sprechen, ist das Konto für den Verzeichnisdienst-Wiederherstellungsmodus. Es wird nur zur Durchführung von Wartungsarbeiten an Offline-Domänencontrollern verwendet, ist jedoch kein Domänenadministrator. In diesem Fall wäre dies völlig nutzlos, es sei denn, Sie möchten AD aus Sicherungen wiederherstellen.
Massimo
@Massimo Ich denke, Ihre Informationen sind etwas alt ... "Sie können einen Domänencontroller so konfigurieren, dass Sie sich mit dem DSRM-Administratorkonto bei ihm anmelden können, wenn der Domänencontroller normal gestartet wurde, der AD DS-Dienst jedoch gestoppt wurde irgendein Grund." technet.microsoft.com/en-us/library/cc816897(v=ws.10).aspx
Colyn1337
1
@Massimo Es wäre möglich, das Gruppenrichtlinienobjekt von seinem Speicherort im Ordner sysvol im Dateisystem zu entfernen und die Registrierung zu bearbeiten, um die Einstellungen mithilfe dieser Technik zu ändern. Ich gehe davon aus, dass dies in dieser Antwort vorgeschlagen wird.
HopelessN00b
1

Fahren Sie zunächst alle Domänencontroller herunter. Auf diese Weise werden bizarre Replikationsprobleme vermieden.

Der erste Schritt besteht darin, die fehlerhafte Gruppenrichtlinieneinstellung zu entfernen. Berechtigungszuweisungen werden in der GptTmpl.infDatei MACHINE\Microsoft\Windows NT\SecEditunter jedem Richtlinienordner gespeichert . Sie wissen , dass Sie die richtige Politik haben , wenn die .infDatei eine Zeile für enthält SeDenyNetworkLogonRight, SeDenyInteractiveLogonRightet cetera. Löschen Sie alle SeDeny...RightZeilen daraus.

Windows wendet die neuen Einstellungen erst an, wenn festgestellt wird, dass sich das Gruppenrichtlinienobjekt geändert hat. Dies wird durch Abrufen des versionNumberAttributs für ein Active Directory-Objekt ermittelt. Versuchen wir nicht, AD offline zu bearbeiten. Stattdessen werden die fehlerhaften Einstellungen manuell aus der Registrierung entfernt.

Hängen Sie den \Windows\System32\config\SECURITYHive des Domänencontrollers in die Registrierung eines anderen Windows-Systems mit ein reg load. Öffnen Sie den Registrierungseditor und navigieren Sie zu Policy\Accountsunter dem bereitgestellten Hive. (Möglicherweise müssen Sie regeditals SYSTEM ausgeführt werden, damit dies funktioniert. PsExec kann dies.) Jeder Unterschlüssel davon entspricht einem Benutzer oder einer Gruppe, und der ActSysAcUnterschlüssel jedes dieser Schlüssel besitzt die "Rechte". (Die "Berechtigungen" befinden sich alle im PrivilgsUnterschlüssel.) Suchen Sie die mit dem ActSysAcWert " C0 03 00 00, der den vier von Ihnen verweigerten Rechten entspricht . Löschen ActSysAcoder ändern Sie den Wert in 00 00 00 00. Schließen Sie den Registrierungseditor und entfernen Sie den Hive mit reg unload.

Starten Sie den Domänencontroller, den Sie geändert haben. Sie sollten sich jetzt anmelden können. Verwenden Sie die Gruppenrichtlinien-Verwaltungskonsole, um Änderungen (egal wie trivial) an den lokalen Richtlinien des jeweiligen Gruppenrichtlinienobjekts vorzunehmen. Dadurch wird die Versionsnummer des Gruppenrichtlinienobjekts erhöht.

Starten Sie die anderen Domänencontroller und lassen Sie die Änderungen replizieren.

Ben N.
quelle
Das sieht sehr vielversprechend aus, leider kann ich nicht bestätigen, dass es funktioniert. Inzwischen baue ich alles wieder auf. Wenn jemand bestätigen kann, dass dies funktioniert, bin ich mehr als glücklich, dies als Antwort zu markieren!
Shagrinar
0

Sie können versuchen, im Explorer \\ domain.controler \ c $ \ windows \ sysvol \ sysvol \ domain.local \ polices zu öffnen (Sie haben noch Zugriff).

Dort finden Sie alle Richtlinien. Verschieben Sie das gesamte Verzeichnis an ein temporäres Ziel und versuchen Sie, den PC neu zu starten. Es wird helfen.

kgimpel
quelle
Der Domänencontroller heißt asgard und die Domäne heißt yggdrasil . Daher habe ich Folgendes eingegeben: \\ asgard \ c $ \ windows \ sysvol \ sysvol \ yggdrasil \ Policies, was zu einer Fehlermeldung führte, dass Windows nicht auf das Verzeichnis zugreifen kann. Ich versuche nicht, über das lokale Administratorkonto eines Computers in der Domäne darauf zuzugreifen, sondern über meinen privaten Laptop. Es ist weiterhin eine Anmeldung erforderlich.
Shagrinar
Überprüfen Sie das Verzeichnis, ich bin nicht sicher nach sysvol. Können Sie sich mit Domain-Anmeldeinformationen bei \\\ domaincontroller \ c $ anmelden? Oder Sie können versuchen, einen lokalen Administrator wie "asgard \ admin" oder "asgard \ tor" zu verwenden :)
kgimpel
Ich habe dies ohne Erfolg versucht, aber da es sich um eine virtuelle Maschine handelt, auf der der DC ausgeführt wird, habe ich gerade die virtuelle Festplatte gemountet. Ich habe das Verzeichnis C: \ sysvol \ sysvol \ fqdn_of_domain gefunden . Der Versuch, darauf zuzugreifen, führte zu einem Fehler (es ist eine Art symbolischer Link?). Ich habe einen anderen Ordner C: \ sysvol \ domain gefunden, der Skripte und Richtlinien enthält. Ich habe alles herausgezogen, die VHD abmontiert und die Maschine hochgefahren. Leider gibt es keine Änderung. Wohin führt dieser Link? Gibt es noch andere Optionen, die ich beim Festplattenzugriff in Betracht ziehen kann?
Shagrinar
3
@shagrinar Das direkte Referenzieren des Domänencontrollers über eine SMB-Freigabe, wie in dieser Antwort empfohlen, funktioniert nicht, da Sie den Netzwerkzugriff per Gruppenrichtlinienobjekt verweigert haben. Möglicherweise können Sie auf diese Weise \\domainname\sysvol\ auf die Richtlinien zugreifen, aber ich würde mir keine Hoffnungen machen. Für das Ändern von sysvol sind Domänenadministratorrechte erforderlich. Wenn Sie alle Domänenadministratoren gesperrt haben, können Sie nicht mit den erforderlichen Berechtigungen darauf zugreifen.
HopelessN00b
Innerhalb von SYSVOL \ Domain \ Policies Sie können nur Verzeichnisse sortieren, suchen und verschieben, die am letzten Tag erstellt wurden. Eine davon wird Ihre "Problem" -Richtlinie sein.
kgimpel