LGPOs sichern
Lokale Gruppenrichtlinien Sichern und (auf anderen Computern) wiederherstellen
Bei einem meiner Kunden werden die Computer derzeit nicht über eine Domäne verwaltet.
Was bei kleineren Betrieben nicht unüblich ist, aber dennoch ist es ja das Ziel eines Administrators alle Rechner homogen mit den selben Einstellungen zu haben und das natürlich mit wenig Aufwand.
Der wahrscheinlich erste Gedanke der mir, wie auch vielen anderen kam - wenn eine Neuinstallation mit einem Vorbereiteten Image nicht in Frage kommt - ist das man ja einfach die Registry Keys kopiert und auf den neuen Rechner einspielt.
Dies klappt bei Lokalen Gruppenrichtlinien leider nur sehr begrenzt, aufgrund der Art wie Windows die Reihenfolge der Konfiguration ausliest.
Denn wenn man diese Registry raus ziehen und im neuen Computer einspielt und anschließend man jedoch gpedit
öffnet merkt man hier schnell, das nichts übernommen worden ist, wie es sein soll und nach einem gpupdate
werden die in der Registry importierten Einstellungen sogar wieder überschrieben.
Abhilfe schafft hierbei das Local Group Policy Object (LGPO) Tool, von Microsoft selbst.
LGPO.exe
ist ein Befehlszeilenhilfsprogramm, das zur Automatisierung der Verwaltung von lokalen Gruppenrichtlinie entwickelt wurde. Lokale Richtlinien ermöglichen Administratoren eine einfache Möglichkeit, die Auswirkungen der Gruppenrichtlinie zu überprüfen und eignet sich ebenfalls für die Verwaltung von Systemen, die keiner Domäne angehören.LGPO.exe
kann Einstellungen aus Registrierungsrichtliniendateien (Registry.pol), Sicherheitsvorlagen, Sicherungsdateien für erweiterte Überwachung und aus formatierten "LGPO-Textdateien" importieren und anwenden. Es kann ebenfalls lokale Richtlinie in eine Gruppenrichtlinienobjekt-Sicherungsdatei exportieren. Es kann den Inhalt einer Registrierungsrichtliniendatei in das Format "LGPO-Text" exportieren, das dann bearbeitet werden kann, und eine Registrierungsrichtliniendatei aus einer LGPO-Textdatei erstellen.
Natürlich gibt es auch Powershell Lösungen Ich habe mich aber aus folgenden zwei gründen aktiv dagegen entschieden:
- Ich wollte nicht mehr Dinge auf dem System Installieren als Notwendig.
LGPO.zip
wird Lokal ausgeführt und kann gelöscht oder mit dem Backup der Richtlinien irgendwo gesichert werden. - Habe ich schon auf einem Computer alle Lokalen Richtlinien eingerichtet und wollte diese nun auf einfachste Art und weise wieder einspielen können. LGPO schien hierbei für mich das richtige zu sein!
Was wird benötigt?
- Die entpackte
LGPO.zip
aus dem Microsoft Security Compliance Toolkit - Eine als Administrator geöffnete Eingabeaufforderung.
- Einen existierenden Pfad indem wir das Backup anlegen können.
Exportieren der Lokalen Gruppenrichtlinien Einstellungen
- In Powershell den Pfad der Entpackten
LGPO.zip
ansteuern. In meinem Beipiel befindet sich der OrdnerLGPO_30
direkt aufC:\
. Dieser Pfad wird für die gesamte Anleitung weiterverwendet.
cd C:\LGPO_30
- Um die konfigurierten Lokalen Richtlinien zu exportieren geben wir nun folgenden Befehl ein:
LGPO.exe /b "C:\LGPO_30\BACKUP"
[!Warning] Achtung! Wie zuvor geschrieben, MUSS der Ordner schon existieren. Andernfalls, bricht LGPO den Vorgang mit der Meldung
Invalid directory name for GPO backup: C:\LGPO_30\BACKUP
ab.
Wurde alles richtig gemacht, erscheint nun eine ähnliche Meldung wie diese:
LGPO.exe - Local Group Policy Object Utility
Version 3.0.2004.13001
Copyright (C) 2015-2020 Microsoft Corporation
Security Compliance Toolkit - https://www.microsoft.com/download/details.aspx?id=55319
Creating LGPO backup in "C:\LGPO_30\BACKUP\{BC8D89CC-D22D-4FF4-B1BC-2B29416FFEC8}"
Wiedereinspielen von gesicherten Lokalen Gruppenrichtlinien
Da sich nun der Backup Pfad in einem Unterordner der schon heruntergeladenen LGPO.zip
befindet können wir nun einfach den Ordner LGPO_30
auf einem Stick (oder ins Netzwerk) verschieben und diesen Ordner mitsamt Backup auf den Ziel Computer wieder einspielen.
In meinem Falle habe ich die Daten auch auf dem Ziel PC direkt auf C:\
gelegt.
- Eingabeaufforderung auch am Zielcomputer mit Administratorrechten starten und in den Ordner von LGPO navigieren
cd C:\LGPO_30\
- wir starten wieder
LGPO.exe
nur mit dem Parameter/g
und dem kompletten Pfad.
LGPO.exe /g "C:\LGPO_30\BACKUP\{BC8D89CC-D22D-4FF4-B1BC-2B29416FFEC8}"
Hat man alles richtig gemacht erscheint auch hier folgende Meldung:
LGPO.exe - Local Group Policy Object Utility
Version 3.0.2004.13001
Copyright (C) 2015-2020 Microsoft Corporation
Security Compliance Toolkit - https://www.microsoft.com/download/details.aspx?id=55319
Registering Machine CSE: UEV Policy, {169EBF44-942F-4C43-87CE-13C93996EBBE}
Registering Machine CSE: Registry Policy, {35378EAC-683F-11D2-A89A-00C04FBBCFA2}
Registering Machine CSE: Windows Search Group Policy Extension, {7933F41E-56F8-41D6-A31C-4148A711EE93}
Registering User CSE: Registry Policy, {35378EAC-683F-11D2-A89A-00C04FBBCFA2}
Clearing existing audit policy
Apply Audit policy from C:\LGPO_30\BACKUP\{BC8D89CC-D22D-4FF4-B1BC-2B29416FFEC8}\DomainSysvol\GPO\Machine\microsoft\windows nt\Audit\audit.csv
Apply security template: C:\LGPO_30\BACKUP\{BC8D89CC-D22D-4FF4-B1BC-2B29416FFEC8}\DomainSysvol\GPO\Machine\microsoft\windows nt\SecEdit\GptTmpl.inf
Import Machine settings from registry.pol: C:\LGPO_30\BACKUP\{BC8D89CC-D22D-4FF4-B1BC-2B29416FFEC8}\DomainSysvol\GPO\Machine\registry.pol
Import User settings from registry.pol: C:\LGPO_30\BACKUP\{BC8D89CC-D22D-4FF4-B1BC-2B29416FFEC8}\DomainSysvol\GPO\User\registry.pol
Und man sieht wenn man die Lokalen Gruppenrichtlinien startet, das sich diese nun eingespielt worden sind. Sollte man Dinge aktiviert haben wie die Online Suchfunktion in der Startleiste zu deaktivieren, merkt man auch hier sofort, das die Einstellungen übernommen worden sind.