AD mit Schuss?
Guten Morgen zusammen,
ich vermute einen Fehler in der ntds.dit Datenbank weil ich im gpoinventory.exe rsop Ergebnisse bekomme in denen Uralte gpos bei den Clients verarbeitet werden welche es schon lange nicht mehr gibt (Stehen da vielleicht alle jemals verarbeiteten drin?).
Diese Annahme bestätigt sich auch in der Praxis da Einstellungen angewendet werden, deren gpo gar nicht mehr existiert.
Außerdem habe ich hidden gpos gefunden welche auf keinem weg zu löschen waren nur ein OU Struktur Umbau mit Objekt verschieben hat dann geholfen. (Resultate per adsisearcher)
Hier ein paar Fakten:
- gpo Anzahl ist im sysvol/adsiedit/gpo.mmc konsistent und repl funktioniert fehlerfrei.
- ntdsutil (integrity & semantic database analysis) fehlerfrei
- 7016 Ereignisse auf den clients von cse's die unauffindbar sind.
- bei allen client gpo tests wurde vor dem gpresult /r der lokale policy Ordner sowie die security config gelöscht als auch das Ereignisprotokoll. gpresult /r zeigt keine alten gpo's an, was korrekt wirkt.
- In den gelöschten Objekte der AD sind diese Objekte auch nicht mehr vorhanden weil die 180 Tage Tombstone Lifetime bereits um sind.
Nun meine Frage zu der offensichtlich defekten Datenbank:
1. könnte ein offline defrag helfen?
2. Wie stehen die Chancen beim Einsatz von ESEUTIL? (werden die Fehler anschließend auch wieder repliziert? müssen beiden offline genommen werden?)
3. Hat jemand gute Erfahrungen mit einem 3rd party tool das die db online repariert?
4. Wo könnten noch Protokolle rumliegen die interessant wären?
PS: die Events sind sehr sauber, es deutet nichts weiter auf Probleme hin. Server & Client
ich vermute einen Fehler in der ntds.dit Datenbank weil ich im gpoinventory.exe rsop Ergebnisse bekomme in denen Uralte gpos bei den Clients verarbeitet werden welche es schon lange nicht mehr gibt (Stehen da vielleicht alle jemals verarbeiteten drin?).
Diese Annahme bestätigt sich auch in der Praxis da Einstellungen angewendet werden, deren gpo gar nicht mehr existiert.
Außerdem habe ich hidden gpos gefunden welche auf keinem weg zu löschen waren nur ein OU Struktur Umbau mit Objekt verschieben hat dann geholfen. (Resultate per adsisearcher)
Hier ein paar Fakten:
- gpo Anzahl ist im sysvol/adsiedit/gpo.mmc konsistent und repl funktioniert fehlerfrei.
- ntdsutil (integrity & semantic database analysis) fehlerfrei
- 7016 Ereignisse auf den clients von cse's die unauffindbar sind.
- bei allen client gpo tests wurde vor dem gpresult /r der lokale policy Ordner sowie die security config gelöscht als auch das Ereignisprotokoll. gpresult /r zeigt keine alten gpo's an, was korrekt wirkt.
- In den gelöschten Objekte der AD sind diese Objekte auch nicht mehr vorhanden weil die 180 Tage Tombstone Lifetime bereits um sind.
Nun meine Frage zu der offensichtlich defekten Datenbank:
1. könnte ein offline defrag helfen?
2. Wie stehen die Chancen beim Einsatz von ESEUTIL? (werden die Fehler anschließend auch wieder repliziert? müssen beiden offline genommen werden?)
3. Hat jemand gute Erfahrungen mit einem 3rd party tool das die db online repariert?
4. Wo könnten noch Protokolle rumliegen die interessant wären?
PS: die Events sind sehr sauber, es deutet nichts weiter auf Probleme hin. Server & Client
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 8037015693
Url: https://administrator.de/contentid/8037015693
Ausgedruckt am: 21.11.2024 um 19:11 Uhr
11 Kommentare
Neuester Kommentar
Hi,
so so, Hidden GPOs.
Wenn ein Client eine GPO verarbeitet, welche es nicht mehr geben soll, dann kann das doch nur am Client liegen. Wenn jemand einen Befehl ausführt von einem Offizier, welcher bereits tot oder außer Dienst ist, dann ist die Ursache bei den Oberbefehlshabern? Bzw. bei den Büros, in denen diese amtieren?
Wenn ein Client GPO anwendet, dann kommen die Daten dafür irgendwoher: Entweder vom SYSVOL oder der Client hat diese Daten zwischengespeichert. Das GPO-Objekt im AD allein reicht dafür nicht aus. Normalerweise werden aber beim Löschen von GPO-Objekten aus dem AD auch die zugehörigen Dateien im SYSVOL ebenfalls gelöscht.
Das "Aufräumen" oder "Reparieren" der ntds.dit würde dahingehend überhaupt nichts bringen.
E.
so so, Hidden GPOs.
Wenn ein Client eine GPO verarbeitet, welche es nicht mehr geben soll, dann kann das doch nur am Client liegen. Wenn jemand einen Befehl ausführt von einem Offizier, welcher bereits tot oder außer Dienst ist, dann ist die Ursache bei den Oberbefehlshabern? Bzw. bei den Büros, in denen diese amtieren?
Wenn ein Client GPO anwendet, dann kommen die Daten dafür irgendwoher: Entweder vom SYSVOL oder der Client hat diese Daten zwischengespeichert. Das GPO-Objekt im AD allein reicht dafür nicht aus. Normalerweise werden aber beim Löschen von GPO-Objekten aus dem AD auch die zugehörigen Dateien im SYSVOL ebenfalls gelöscht.
- Bist Du sicher, dass diese GPO nicht mehr existieren?
- Meinst Du stattdessen vielleicht, dass diese GPO Deiner Meinung nach nicht mehr angewendet werden dürften (aber noch existieren)?
- Es gibt einige Richtlinien aus den GPO, welche auch dann noch gelten, wenn die GPO nicht mehr gilt.
- Auch Einstellungen (bzw. deren Ergebnisse) aus den GPO gelten weiter, wenn eine GPO nicht mehr angewendet wird, es sei denn, man hat bei den einzelnen Einstellungen explizit angegeben, dass diese entfernt werden sollen, sobald es die GPO nicht mehr gilt.
Das "Aufräumen" oder "Reparieren" der ntds.dit würde dahingehend überhaupt nichts bringen.
E.
Ich bin mir jetzt nicht sicher, ob wir von der selben Sache reden.
Am Rande: Das Tool gpoinventory.exe stammt aus einer Zeit gleich nach der letzten Sintflut. Auch wenn die aktuelle Release angeblich von 2023 ist. Es sieht immer noch so aus.
Punkt 4: Von lokalen GPO hatte ich gar nichts geschrieben?
Man muss unterscheiden zwischen
Das Löschen von irgendwelchen Dateien auf dem Client ändert doch nichts an den durch die GPO bereits bewirkten Werte in der Registry. Diese sind die eigentlich interessanten Punkte.
Also wenn Du da auf dem Client
Am Rande: Das Tool gpoinventory.exe stammt aus einer Zeit gleich nach der letzten Sintflut. Auch wenn die aktuelle Release angeblich von 2023 ist. Es sieht immer noch so aus.
Punkt 4: Von lokalen GPO hatte ich gar nichts geschrieben?
Man muss unterscheiden zwischen
- GPO (eine Gruppe von Richtlinien, später kamen die Einstellungen dazu)
- Richtlinine (Bestandteil einer GPO)
- Einstellung (Bestandteil einer GPO)
Das Löschen von irgendwelchen Dateien auf dem Client ändert doch nichts an den durch die GPO bereits bewirkten Werte in der Registry. Diese sind die eigentlich interessanten Punkte.
Also wenn Du da auf dem Client
- "%WinDir%\System32\GroupPolicy" löschst
- alle durch GPO bewirkten Werte aus der Registry löschst
- GPOs anwendest
- Wenn ja: Überprüfe erst einmal, ob diese nicht doch durch andere GPO bewirkt werden.
- Wenn nein: Dann ist doch alles gut?
Was HKCU betrifft, so könnte es reichen, mit einem neuen Benutzerprofil zu testen. Meinetwegen sogar mit einem neuen Benutzer, falls es Sinn macht.
Was HKLM betrifft, ist das nicht so einfach.
Die Werte einiger Richtlininen werden im HKLM\Software\Policies gespeichert.
Die anderer auch direkt irgendwo im HKLM\Software.
Einstellungen hingegen können überall im HKLM gelandet sein. Das hängt davon ab, was da konkret verteilt wurde.
Und dann nicht vergessen, dass die Einstellungen ja auch noch Ordner, Dateien, Drucker, Scheduled Task usw. verteilt haben könnten. Von daher wäre es schon keine schlechte Idee, wenigstens einen "nackten" Test-Client einzusetzen. Das könnte auch eine VM im selben Subnet sein.
Was HKLM betrifft, ist das nicht so einfach.
Die Werte einiger Richtlininen werden im HKLM\Software\Policies gespeichert.
Die anderer auch direkt irgendwo im HKLM\Software.
Einstellungen hingegen können überall im HKLM gelandet sein. Das hängt davon ab, was da konkret verteilt wurde.
Und dann nicht vergessen, dass die Einstellungen ja auch noch Ordner, Dateien, Drucker, Scheduled Task usw. verteilt haben könnten. Von daher wäre es schon keine schlechte Idee, wenigstens einen "nackten" Test-Client einzusetzen. Das könnte auch eine VM im selben Subnet sein.