Blog
Hier poste ich dinge zu Themen die mich beschäftigten.
Suchen
2023-04-18
Powershell - GPO check
ersetzen Sie die Beispiel-GPOs in der $recommendedGPOs-Variablen durch die tatsächlichen BSI-Empfehlungen für Windows Server 2021. Führen Sie das Skript aus, um die fehlenden oder falschen Einstellungen zu identifizieren und die Ergebnisse in ein Logfile zu schreiben.
$logfile = “BSI-GPO-Check_$(Get-Date -Format ‘yyyyMMdd_HHmm’).log”
$recommendedGPOs = @{
# Beispiel: Ersetzen Sie diese Einträge durch die tatsächlichen BSI-Empfehlungen für Windows Server 2021
“Computer ConfigurationAdministrative TemplatesSystemRemote Procedure CallRestrict Unauthenticated RPC clients” = “Enabled”;
“Computer ConfigurationAdministrative TemplatesWindows ComponentsEvent Log ServiceApplicationSpecify the maximum log file size (KB)” = 196608;
}
function CheckGPOSetting {
param (
[string]$path,
[string]$expectedValue
)
$gpoValue = Get-ItemProperty -Path $path -Name “SettingValue” -ErrorAction SilentlyContinue
if ($gpoValue -eq $null -or $gpoValue.SettingValue -ne $expectedValue) {
$logEntry = “Fehlende oder falsche Einstellung: $path - Erwartet: $expectedValue”
Add-Content -Path $logfile -Value $logEntry
return $false
}
return $true
}
foreach ($gpo in $recommendedGPOs.Keys) {
CheckGPOSetting -path $gpo -expectedValue $recommendedGPOs[$gpo]
}
Admin - 14:22:46 @ Projekte, Powershell-Skripte | Kommentar hinzufügen
Kommentar hinzufügen
Die Felder Name und Kommentar sind Pflichtfelder.