
Брандмауер Windows Defender з розширеною безпекою — це ваш перший реальний рівень захисту на сервері Windows. Правильна політика брандмауера зменшує кількість атак, запобігає випадковому розкриттю даних та спрощує усунення несправностей, коли ви точно знаєте, що дозволено.
Цей посібник написано для сервера, що працює у відкритому доступі: Windows VPS на VPS-хостингу, де «відкрити все» ніколи не є безпечним варіантом за замовчуванням.
Брандмауер Windows має три профілі. У більшості розгортань VPS активним профілем є «Публічний». Безпечна базова конфігурація така:
# View current profile settings
Get-NetFirewallProfile | Select Name, Enabled, DefaultInboundAction, DefaultOutboundAction
# Enable firewall for all profiles (recommended)
Set-NetFirewallProfile -Profile Domain,Private,Public -Enabled True

RDP необхідний для адміністрування, але це також один із портів, які найчастіше сканують в Інтернеті. Безпечний підхід:
Важливо: завжди майте під рукою консоль провайдера / опцію екстреного доступу перед тим, як посилювати правила RDP, щоб уникнути блокування себе.

# Replace x.x.x.x with your public IP address
New-NetFirewallRule -DisplayName "RDP (3389) - My IP only" `
-Direction Inbound -Protocol TCP -LocalPort 3389 `
-Action Allow -RemoteAddress x.x.x.x
Створіть явні правила для служб, якими ви дійсно користуєтеся. Типові приклади на Windows VPS:
# Web traffic
New-NetFirewallRule -DisplayName "HTTP (80)" -Direction Inbound -Protocol TCP -LocalPort 80 -Action Allow
New-NetFirewallRule -DisplayName "HTTPS (443)" -Direction Inbound -Protocol TCP -LocalPort 443 -Action Allow
# Example: SQL Server on 1433 restricted to a management subnet
New-NetFirewallRule -DisplayName "SQL Server (TCP 1433) - Office" `
-Direction Inbound -Protocol TCP -LocalPort 1433 `
-Action Allow -RemoteAddress 203.0.113.0/24
Якщо можливо, віддавайте перевагу правилам для програм для серверних додатків, оскільки вони прив’язують дозвіл до конкретного виконуваного файлу. Правила для портів простіші та поширені для серверів, але вони можуть ненавмисно дозволити несподіваним програмам прослуховувати той самий порт.
Для власних програм та автоматизації використовуйте Scope (RemoteAddress), щоб обмежити доступ до служби.
Журнал показує, що блокується, а що дозволяється. Це надзвичайно корисно, коли користувачі кажуть: «не підключається».
Set-NetFirewallProfile -Profile Domain,Private,Public `
-LogFileName "C:WindowsSystem32LogFilesFirewallpfirewall.log" `
-LogMaxSizeKilobytes 32768 `
-LogAllowed True `
-LogBlocked True
pfirewall.log на наявність заблокованих з’єднань.# From a client/jump host
Test-NetConnection -Port 443
Test-NetConnection -Port 3389
На сучасних версіях Windows Server рекомендується використовувати PowerShell (модуль NetSecurity). Але в деяких старих скриптах ви все ще можете побачити netsh advfirewall.
# Example: enable built-in Remote Desktop rule group
netsh advfirewall firewall set rule group="remote desktop" new enable=Yes
Стратегія безпечного брандмауера Windows Server проста й ефективна: за замовчуванням блокувати вхідний трафік, дозволяти лише необхідні служби, обмежувати порти управління за IP-адресами та вмикати ведення журналів для прозорості.
Для виробничих робочих навантажень розгортайте систему на надійному VPS під Windows із передбачуваною мережевою інфраструктурою на VPS-хостингу — і робіть правила брандмауера мінімальними, задокументованими та простими для аудиту.