Gruppenrichtlinien und PowerShell

Gruppenrichtlinien und PowerShell 7 – Ein Einstieg

Mit PowerShell 7 lassen sich Gruppenrichtlinien (GPOs) in Active Directory-Umgebungen automatisiert verwalten und auslesen. Im Folgenden erhältst du einen kompakten Überblick über das Modul GroupPolicy, grundlegende Cmdlets, Speicherorte sowie weiterführende Tipps.


1. Voraussetzungen und Installation

  1. PowerShell 7
    Stelle sicher, dass PowerShell 7 installiert ist. Du kannst deine Version prüfen mit: $PSVersionTable.PSVersion
  2. RSAT und das GroupPolicy-Modul
    • Unter Windows Server ist das Modul in der Regel bereits vorhanden, wenn die Gruppenrichtlinien-Verwaltungstools (GPMC) installiert sind.
    • Unter Windows 10/11 per RSAT (Remote Server Administration Tools) nachinstallieren.
  3. Importieren des Moduls
    Import-Module GroupPolicy -ErrorAction Stop

2. Überblick über das Modul GroupPolicy

Das Modul stellt eine Vielzahl von Cmdlets zum Erstellen, Lesen, Ändern und Löschen von GPOs bereit. Die wichtigsten Cmdlets im Überblick:

CmdletBeschreibung
Get-GPOListet existierende GPOs auf
New-GPOErstellt ein neues Gruppenrichtlinienobjekt
Copy-GPOKopiert ein bestehendes GPO
Backup-GPOSichert ein oder mehrere GPOs
Restore-GPOStellt ein GPO aus einer Sicherung wieder her
Get-GPOReportErzeugt einen HTML- oder XML-Bericht zu einem GPO
Set-GPRegistryValueLegt Registry-Werte in einem GPO fest
Get-GPInheritanceZeigt Vererbung (Links, Blockierungen) für eine OU an
Set-GPLinkVerknüpft oder hebt die Verknüpfung eines GPO zu einer OU auf

3. Speicherorte und Dateistruktur

Gruppenrichtlinien bestehen aus zwei Teilen:

  1. SYSVOL (PolicyDefinitions und GPT)
    Unter \\<Domäne>\SYSVOL\<Domäne>\Policies\{GPO-GUID} findest du:
    • gpt.ini
    • Ordner User und Machine mit ADM/ADMX-Vorlagen (bei zentraler Store-Nutzung in PolicyDefinitions).
  2. AD-Objekte
    Die GPO-Metadaten liegen im Active Directory unter dem Container CN=Policies,CN=System,<DOMÄNE>. Per ADSI oder mit Get-ADObject erreichbar.

Pfad-Beispiel (SYSVOL):

\\contoso.com\SYSVOL\contoso.com\Policies\{3F2504E0-4F89-11D3-9A0C-0305E82C3301}

4. Welche Gruppenrichtlinientypen gibt es?

  • Computerkonfiguration
    Einstellungen, die auf Computer-Accounts angewendet werden (z. B. Firewall-Regeln, Startskripts).
  • Benutzerkonfiguration
    Einstellungen, die auf Benutzer-Accounts angewendet werden (z. B. Desktop-, Menüband- und Anmeldeskripts).

Innerhalb dieser Hauptkategorien existieren zahlreiche Unterzweige:

  • Richtlinien: Central Policies (Administrative Templates, Security Settings usw.)
  • Einstellungen: Preferences (z. B. Laufwerkszuordnungen, Registry-Werte)

5. Nützliche PowerShell-Beispiele

a) Alle GPOs auflisten

Get-GPO -All | Select-Object DisplayName, Id, CreationTime

b) Neues GPO anlegen und mit einer OU verknüpfen

$newGpo = New-GPO -Name "Workstation Security Baseline"
New-GPLink -Name $newGpo.DisplayName -Target "OU=Workstations,DC=contoso,DC=com"

c) GPO sichern und wiederherstellen

# Backup
Backup-GPO -Name "Workstation Security Baseline" -Path "D:\GPO-Backups"

# Restore
Restore-GPO -Path "D:\GPO-Backups\Workstation Security Baseline.yaml"

d) Bericht exportieren

Get-GPOReport -Name "Workstation Security Baseline" -ReportType Html -Path "C:\Temp\WorkstationGPO.html"

e) Registrierungseintrag setzen

Set-GPRegistryValue -Name "Workstation Security Baseline" `
  -Key "HKLM\Software\Contoso\Security" `
  -ValueName "EnableFeatureX" -Type DWord -Value 1

6. Best Practices und Tipps

  1. Zentralen ADMX-Store verwenden
    Lege deine ADMX/ADML-Dateien in \\<Domäne>\SYSVOL\<Domäne>\Policies\PolicyDefinitions ab, um Versionskonflikte zu vermeiden.
  2. Versionierung und Backup
    Automatisiere regelmäßige Backups aller GPOs (z. B. wöchentlich) mit Backup-GPO.
  3. Dokumentation per Reports
    Exportiere HTML- oder XML-Berichte, um Änderungen nachzuverfolgen und Audits zu unterstützen.
  4. Testumgebung nutzen
    Erstelle Test-OUs und verknüpfe neue GPOs zunächst dort, bevor du sie produktiv schaltest.
  5. Scripting und Automatisierung
    Kombiniere PowerShell-Skripte mit CI/CD-Pipelines, um GPO-Änderungen versioniert ins Netzwerk auszurollen.

Mit PowerShell 7 und dem GroupPolicy-Modul erhältst du eine mächtige, skriptbare Schnittstelle zur effektiven Verwaltung von Windows-Gruppenrichtlinien. Nutze die oben gezeigten Cmdlets und Best Practices, um deine GPO-Landschaft transparent, versioniert und reproduzierbar zu gestalten. Viel Erfolg beim Automatisieren!

Share this content:

Das hast du vielleicht verpasst

shibiadmin
Datenschutz-Übersicht

Diese Website verwendet Cookies, damit wir dir die bestmögliche Benutzererfahrung bieten können. Cookie-Informationen werden in deinem Browser gespeichert und führen Funktionen aus, wie das Wiedererkennen von dir, wenn du auf unsere Website zurückkehrst, und hilft unserem Team zu verstehen, welche Abschnitte der Website für dich am interessantesten und nützlichsten sind.