Углублённая настройка безопасности Windows Server: брандмауэр, Defender и политики после установки

Проблема

После того как выполнена базовая настройка сервера заданы статический IP, имя, включён удалённый рабочий стол и установлены первые роли, многие администраторы оставляют параметры безопасности в состоянии «по умолчанию». Брандмауэр Windows Defender работает со стандартными правилами, антивирусная защита либо отключена, либо сканирует всё подряд без исключений для серверных ролей, а локальные политики паролей и аудита не изменены. Такой сервер, даже если он введён в домен, остаётся уязвимым: избыточно открытые порты, отсутствие логирования попыток входа и неизменённые заводские учётные записи создают предпосылки для компрометации. Windows server настройка безопасности это следующий обязательный этап, превращающий только что развёрнутую машину в элемент корпоративной инфраструктуры, отвечающий минимальным требованиям регуляторов и здравого смысла. В этой статье мы углубимся в конфигурацию брандмауэра, Microsoft Defender Antivirus и локальных политик, а также автоматизируем проверку этих настроек.

Решение

Мы будем использовать оснастки «Брандмауэр Защитника Windows в режиме повышенной безопасности» (WF.msc), редактор локальной групповой политики (secpol.msc), PowerShell и командную строку. Рекомендации основаны на официальных документах Microsoft Security Baselines для Windows Server 2022/2019, доступных в Microsoft Security Compliance Toolkit, и руководстве по настройке Windows Defender Firewall with Advanced Security. Для антивирусной защиты используется встроенный Microsoft Defender Antivirus, чьи параметры подробно описаны в разделе Defender Antivirus on Windows Server. Особое внимание уделим автоматизации проверки: напишем PowerShell-скрипт, который за секунды выводит сводку по брандмауэру, статусу антивируса и действующим политикам безопасности.

Пошаговая инструкция

Шаг 1. Брандмауэр Защитника Windows: аудит и ограничение правил

Сразу после установки серверных ролей (AD DS, DNS, IIS) установщик автоматически активирует необходимые правила брандмауэра. Однако часто остаются открытыми порты, которые не нужны в продуктивной среде.

  1. Откройте консоль Брандмауэр Защитника Windows в режиме повышенной безопасности (wf.msc).
  2. Перейдите в узел Правила для входящих подключений и отсортируйте по столбцу Профиль. Отключите все правила, у которых Профиль установлен в Общий, но нет реальной необходимости (например, правила для общего доступа к файлам и принтерам). Просто щёлкните правой кнопкой мыши и выберите Отключить правило.
  3. Создайте правило, ограничивающее доступ к RDP (порт 3389) только с определённых IP-адресов администрирования. В разделе Правила для входящих подключений выберите Удалённый рабочий стол пользовательский режим (TCP-In). Откройте свойства, вкладка Область, в поле Удалённые IP-адреса укажите IP-адрес рабочей станции администратора или подсети управления. Это предотвратит попытки подбора пароля со случайных узлов.
  4. Включите логирование проваленных попыток подключения. В корне консоли wf.msc нажмите Свойства, выберите вкладку нужного профиля (Домен, Частный, Общий), нажмите Настроить в разделе Ведение журнала. Задайте путь, например, %SystemRoot%\System32\LogFiles\Firewall\pfirewall.log, и установите Записывать пропущенные пакеты в Да. Этот журнал можно анализировать позже для выявления подозрительной активности.

Документация: Configure Windows Firewall logging.

Шаг 2. Microsoft Defender Antivirus: исключения и усиление защиты

На серверах Defender Antivirus часто отключают, устанавливая сторонние решения. Если вы используете встроенную защиту, её необходимо правильно сконфигурировать.

  1. Откройте Windows Security → Защита от вирусов и угроз → Параметры управления (или выполните Get-MpPreference в PowerShell для проверки статуса).
  2. Убедитесь, что включена Облачная защита (Cloud-delivered protection) и Автоматическая отправка образцов (Automatic sample submission). В PowerShell:powershellSet-MpPreference -SubmitSamplesConsent SendAllSamples Set-MpPreference -MAPSReporting Advanced
  3. Настройте исключения для критичных серверных ролей, чтобы избежать деградации производительности. Например, для Active Directory:
    • Папка базы данных NTDS (C:\Windows\NTDS)Файлы журналов (*.edb*.log)Процесс lsass.exe
      Для DNS-сервера:Файлы зон (C:\Windows\System32\dns)
      Для IIS:Папки с логами и временными файлами веб-приложений.
      В PowerShell:
    powershellAdd-MpPreference -ExclusionPath «C:\Windows\NTDS» Add-MpPreference -ExclusionProcess «lsass.exe»Официальные рекомендации по исключениям: Virus scanning recommendations for Enterprise computers.
  4. Включите контроль управляемого доступа к папкам (Controlled Folder Access), если сервер выполняет роль файлового хранилища или на нём работают критически важные приложения. Через групповую политику или PowerShell:
  5. Set-MpPreference -EnableControlledFolderAccess Enabled это заблокирует несанкционированные изменения в защищённых папках.
  6. Запланируйте ежедневную быструю проверку и еженедельную полную проверку в часы наименьшей нагрузки: Set-MpPreference -ScanScheduleQuickScanTime 02:00:00 Set-MpPreference -ScanScheduleTime 22:00:00

Шаг 3. Локальные политики безопасности (secpol.msc)

Даже на рядовом сервере, не являющемся контроллером домена, необходимо задать минимальные политики безопасности.

  1. Откройте редактор локальной политики безопасности (secpol.msc).
  2. Перейдите в Политики учётных записей → Политика паролей.
    • Минимальная длина пароля: 14 символов.
    • Пароль должен отвечать требованиям сложности: включено.
    • Максимальный срок действия пароля: 42 дня.
  3. Перейдите в Политики учётных записей → Политика блокировки учётной записи.
    • Пороговое значение блокировки: 10 неверных попыток.
    • Время до сброса счётчика блокировки: 15 минут.
    • Продолжительность блокировки: 30 минут.
  4. Настройте аудит событий входа: Локальные политики → Политика аудита.
    • Аудит событий входа в систему: Успех и Отказ.
    • Аудит управления учётными записями: Успех и Отказ.
  5. Ограничьте права локальной группы «Пользователи»: в разделе Локальные политики → Назначение прав пользователя убедитесь, что право Отказ во входе в качестве пакетного задания и Отказ во входе через службы удалённых рабочих столов назначено группе Гости. А право Разрешить вход через службы удалённых рабочих столов оставьте только для Администраторы и Пользователи удалённого рабочего стола.

Эти настройки закроют базовые векторы атак и обеспечат запись событий безопасности в журнал.

Шаг 4. PowerShell-скрипт для проверки конфигурации безопасности

Чтобы не проверять каждый параметр вручную на десятках серверов, создайте скрипт Check-ServerSecurity.ps1. Он выводит сводку по брандмауэру, антивирусу и ключевым политикам.

powershell

# Check-ServerSecurity.ps1
Write-Host "=== Проверка безопасности Windows Server ===" -ForegroundColor Cyan

# 1. Брандмауэр: активен ли для доменного профиля?
$fw = Get-NetFirewallProfile -Name Domain
Write-Host "`nБрандмауэр (Домен): $($fw.Enabled ? 'Включён' : 'ВЫКЛЮЧЕН!')" -ForegroundColor $(if($fw.Enabled){'Green'}else{'Red'})

# 2. Логирование пропущенных пакетов?
$log = Get-NetFirewallProfile -Name Domain | Select-Object -ExpandProperty LogFileName
Write-Host "Лог брандмауэра: $log"

# 3. RDP: ограничен ли доступ по IP?
$rdpRule = Get-NetFirewallRule -DisplayName "Remote Desktop*User Mode*TCP*In*" | Get-NetFirewallAddressFilter
if ($rdpRule.RemoteAddress -ne 'Any') {
    Write-Host "RDP ограничен: $($rdpRule.RemoteAddress)" -ForegroundColor Green
} else {
    Write-Host "RDP открыт для ВСЕХ!" -ForegroundColor Red
}

# 4. Defender Antivirus: статус
$mp = Get-MpComputerStatus
Write-Host "`nАнтивирус: $($mp.AntivirusEnabled ? 'Работает' : 'ОТКЛЮЧЕН!')" -ForegroundColor $(if($mp.AntivirusEnabled){'Green'}else{'Red'})
Write-Host "Облачная защита: $($mp.MAPSReporting)"

# 5. Политики паролей
$minPwd = net accounts | Select-String "Минимальная длина пароля"
Write-Host "`n$minPwd"

# 6. Аудит входа
auditpol /get /category:"Logon/Logoff" | Select-String "Вход в систему"
Write-Host "`nПроверка завершена."

Запускайте скрипт после каждой настройки нового сервера, чтобы убедиться, что базовая защита включена.

Устранение распространённых проблем

СимптомВероятная причинаРешение
После включения брандмауэра перестала работать репликация ADЗаблокированы порты динамического диапазона RPCАктивируйте встроенные правила «Active Directory Domain Services» для входящего трафика.
Defender Antivirus сильно замедляет работу SQL ServerСканируются файлы данных .mdf/.ldf и процессы sqlservr.exeДобавьте исключения путей и процессов в Defender (шаг 2).
Не применяются политики учётных записейСервер введён в домен, политики домена переопределяют локальныеНастройте политики на уровне домена через Group Policy Management, либо используйте Fine-Grained Password Policies.
Лог брандмауэра не записываетсяНе указан путь к файлу или нет прав на записьЗадайте путь в свойствах брандмауэра и убедитесь, что у службы есть права на запись в эту папку.
После настройки Controlled Folder Access блокируются легитимные приложенияПриложения пытаются писать в защищённые папки (например, временные файлы)Включите аудит блокировок и добавьте исключения для доверенных приложений.

Итог

Windows server настройка в части безопасности не сводится к установке ролей и настройке сети она требует продуманной конфигурации брандмауэра, антивирусных исключений и политик, делающих сервер устойчивым к типовым атакам. Выполнив три описанных шага (брандмауэр, Defender, политики), вы поднимете уровень защищённости сервера на порядок, а приложенный PowerShell-скрипт позволит быстро аудировать конфигурацию на других машинах. В сочетании с вашей предыдущей статьёй о начальной настройке эта инструкция формирует законченный план развёртывания Windows Server, готового к продуктивной работе.

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest
0 комментариев
Популярные
Новые Старые

0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x
Menu