Перейти к содержимому
VDS · Windows Server

Брандмауэр Windows: открыть нужное

Как открыть порт для своего сервиса, ограничить доступ по адресам и проверить, что правило действительно работает, не потеряв при этом доступ к машине.

Обновлено 23 августа 2026 г.

На VDS с Windows Server брандмауэр — единственный фильтр между вашими службами и интернетом: адрес IPv4 публичный, никакого внешнего экрана перед машиной нет. Поэтому правило простое: наружу открыто только то, что вы открыли осознанно.

Что открыто сейчас

Get-NetFirewallProfile | Select-Object Name, Enabled, DefaultInboundAction
Get-NetFirewallRule -Enabled True -Direction Inbound |
  Where-Object Action -eq Allow |
  Get-NetFirewallPortFilter | Select-Object Protocol, LocalPort -Unique
Get-NetTCPConnection -State Listen | Select-Object LocalAddress, LocalPort, OwningProcess

Последняя команда показывает, какие порты вообще слушаются. Служба, слушающая только 127.0.0.1, наружу недоступна независимо от правил.

Открыть порт

Веб-сервер:

New-NetFirewallRule -DisplayName "HTTP" -Direction Inbound -Protocol TCP -LocalPort 80 -Action Allow
New-NetFirewallRule -DisplayName "HTTPS" -Direction Inbound -Protocol TCP -LocalPort 443 -Action Allow

Свой сервис только для доверенных адресов:

New-NetFirewallRule -DisplayName "App 8080" -Direction Inbound -Protocol TCP -LocalPort 8080 `
  -RemoteAddress 203.0.113.5,198.51.100.0/24 -Action Allow

Правило для конкретной программы вместо порта — надёжнее, если приложение использует динамические порты:

New-NetFirewallRule -DisplayName "MyApp" -Direction Inbound -Program "C:\apps\myapp.exe" -Action Allow

Удалить и посмотреть правило:

Remove-NetFirewallRule -DisplayName "App 8080"
Get-NetFirewallRule -DisplayName "App 8080" | Format-List

Что держать закрытым

Никогда не выставляйте наружу без ограничения по адресам:

ПортСлужбаПочему
3389RDPперебор паролей начинается в первые часы, см. Защита RDP
1433MS SQLбаза не должна быть доступна из интернета, см. MS SQL Server
5985, 5986WinRMудалённое управление, только со своих адресов
445SMBклассическая цель массовых атак

Если к базе нужно ходить со своего компьютера, не открывайте 1433, а пробросьте порт внутри RDP-сеанса или поднимите VPN.

Проверка

Изнутри машины порт слушается — это ещё не значит, что он доступен снаружи. Проверяйте с другого узла:

nc -vz ВАШ_АДРЕС 443
curl -I http://ВАШ_АДРЕС

Если снаружи закрыто, а Get-NetTCPConnection показывает слушателя, дело в правиле или в профиле сети: убедитесь, что правило создано в том профиле, который активен (обычно «Общедоступная сеть»).

Частые ошибки

  • Отключить брандмауэр целиком «на время отладки». Машину найдут раньше, чем вы закончите. Вместо этого создайте временное правило с ограничением по адресу.
  • Открыть порт, забыв про приложение. Многие службы слушают только localhost по умолчанию, правило тут ни при чём.
  • Заблокировать себе RDP. Заходите после этого через вкладку «Консоль» в панели /hosting/vds/m/<id>, режим «Экран», и правьте правило оттуда.
  • Создать разрешающее правило поверх запрещающего. В Windows запрет всегда выигрывает у разрешения — ищите блокирующее правило с тем же портом.

После каждой правки полезно сохранять снимок конфигурации: Get-NetFirewallRule -Enabled True | Export-Csv C:\fw.csv. Так вы поймёте, что изменилось, когда сервис внезапно перестанет отвечать.