Поймал недавно интересную ситуацию: нужно было автоматически проверять, включен ли у пользователей брандмауэр Windows, и если нет — включать. Звучит просто, но в доменной среде на 100+ машин — не до ручной проверки.
⚡ Вот скрипт, который я использовал через PowerShell Remoting и
Invoke-Command. Проверяет состояние брандмауэра и включает его, если тот отключен:
$computers = Get-Content "C:\scripts\computers.txt"
Invoke-Command -ComputerName $computers -ScriptBlock {
$profiles = Get-NetFirewallProfile
foreach ($profile in $profiles) {
if (-not $profile.Enabled) {
Write-Host "[$env:COMPUTERNAME] $($profile.Name) выключен — включаю..."
Set-NetFirewallProfile -Name $profile.Name -Enabled True
} else {
Write-Host "[$env:COMPUTERNAME] $($profile.Name) уже включен"
}
}
} -Credential (Get-Credential) -ErrorAction SilentlyContinue
💡 Полезно:
— Работает на всех профилях (
Domain, Private, Public) — Подходит для быстрого аудита
— Можно встроить в
Scheduled Task или GPO login script 🔐 P.S. Не забудьте убедиться, что WinRM открыт и включен на клиентах.
💬 А у вас как организована проверка и управление фаерволами? GPO? RMM? Или всё вручную? Делитесь опытом!
👉 @win_sysadmin