Category Archives

One Article

Active Directory/Powershell

Powershell og Group Policy – noen praktiske eksempler på bruk

Posted by ragnar harper on

Idag fikk jeg en forespørsel om eksempler på hvordan man kan bruke Powershell iforbindelse med group policy.

Eksemplene mine kjøres på Windows 7 eller på Windows Server 2008 R2.

Jeg starter med å importere modulen som inneholder Group Policy kommandoene:

Import-Module GroupPolicy

Vi kan starte med å liste ut alle Group Policy Object (GPO) som er definert:

Get-GPO -All

image

Ett eksempel er å liste ut alle GPO’er som er endret iløpet av de siste 3 ukene.

get-gpo -all | where {$_.ModificationTime -gt (Get-Date).AddDays(-21)}

I dette eksemplet lister vi kun de GPO’ene som er endret (har ModificationTime som er større enn)  datoen for 21 dager siden.

image

Videre kan vi ta ut rapporter på hvilke innstillinger som er satt:

get-gpo -all | where {$_.ModificationTime -gt (Get-Date).AddDays(-21)} | Get-GPOReport -ReportType Html | out-file GPOEndret.html

image

Man kan også enkelt ta backup av GPO’er med cmdlet’en Backup-GPO , og man kan kjøre restore med Restore-GPO

For eksempel tar jeg backup av alle GPO’er med eksemplet under, og lager disse på \\server1\gpobackups:

Backup-Gpo -All -Path \\Server1\GpoBackups

Om jeg for istedet kun ønsket å ta backup av de GPO’er som var endret iløpet av de siste tre uker, kan jeg gjøre det slik:

get-gpo -all | where {$_.ModificationTime -gt (Get-Date).AddDays(-21)} | backup-gpo -path c:\
backup

image

Likeså kan man kjøre tilbake backup med Restore-Gpo:

Restore-Gpo -Name "AppLocker Policy" -path \\Server1\GpoBackups

image

Jeg kan også kjøre Restore av alle GPO’er ved å benytte parameteren –All på Restore-GPO.

I denne posten har jeg gått igjennom noen praktiske eksempler. Jeg tar gjerne imot forslag til nye guider eller poster 🙂

Happy scripting!