DevOps

Настройка мониторинга Active Directory в Zabbix на Windows 2016

Пошаговое руководство по настройке Zabbix для мониторинга событий Active Directory: создание учеток, обновление паролей, неудачные входы. Аудит GPO, agent, items и шаблоны для Windows Server 2016.

Как настроить мониторинг событий Active Directory на Windows Server 2016 в Zabbix?

Я изучаю систему мониторинга и имею сервер Windows Server 2016 с работающими службами DHCP, DNS и Active Directory. Мне нужно настроить отслеживание всех действий, связанных с Active Directory, включая:

  • Создание, удаление и изменение учетных записей
  • Обновление паролей
  • Неудачные попытки входа в систему

Подскажите, как правильно настроить логирование этих событий в Zabbix и есть ли подробное руководство по этой настройке?

Для настройки мониторинга Active Directory в Zabbix на Windows Server 2016 с отслеживанием создания/удаления/изменения учетных записей, обновления паролей и неудачных входов сначала включите аудит в групповой политике (GPO) для Security log, установите Zabbix Agent в активном режиме и создайте элементы данных с ключами вроде eventlog[Security,4720,skip] для события ID 4720 (создание аккаунта). Это позволит собирать события в реальном времени, а триггеры оповестят о подозрительной активности — например, множественных failed logons по ID 4625. Готовые шаблоны Zabbix упростят процесс, но протестируйте на реальных событиях.


Содержание


Подготовка к мониторингу Active Directory в Zabbix

Мониторинг Active Directory в Zabbix — это не просто слежка за логами, а полноценный аудит безопасности. Представьте: кто-то создает подозрительную учетку ночью, или пароли сбрасываются массово. Без правильной подготовки события просто не попадут в Zabbix.

Сначала убедитесь, что на вашем Windows Server 2016 (доменный контроллер с DHCP/DNS/AD) установлен Zabbix Agent версии 6.0+ — он совместим и собирает eventlog эффективно. Проверьте версию сервера: winver в cmd. Zabbix сервер должен быть доступен по сети, firewall открыт на порты 10050 (agent) и 10051 (server).

Почему это важно? Без аудита в Windows события вроде ID 4720 (создание пользователя) или 4625 (неудачный логин) не фиксируются в Security log. Официальная документация Zabbix подчеркивает: агент в active-режиме шлет данные сам, без поллинга.

Шаги подготовки:

  • Обновите Windows до актуальных патчей.
  • Создайте хост в Zabbix frontend: Interfaces → Add → Agent, укажите IP DC.
  • Включите PowerShell execution policy: Set-ExecutionPolicy RemoteSigned.

Готовы? Переходим к агенту. Это база всего zabbix active directory мониторинга.


Установка и настройка Zabbix Agent на Windows Server 2016

Установка агента — пара минут, но настройка решает все. Скачайте MSI с официального сайта Zabbix для Windows 64-bit.

Установите через GUI или silently: msiexec /i zabbix_agent-6.4.10-windows-amd64.msi /qn INSTALLPATH="C:\Program Files\Zabbix Agent\". Затем редактируйте C:\Program Files\Zabbix Agent\zabbix_agentd.conf:

ServerActive=ваш_zabbix_server_ip:10051
HostnameItem=system.hostname
Hostname=имя_хоста_из_zabbix
EnableRemoteCommands=1
LogRemoteCommands=1
UnsafeUserParameters=1

Перезапустите службу: services.msc → Zabbix Agent → Restart. Тестируйте: zabbix_get -s localhost -k "system.uname". Должно вернуть инфу о сервере.

Для eventlog нужен active mode — агент сам пушит логи. Документация по Windows keys описывает синтаксис: eventlog[LogName,Source,EventID,EventType,Severity,Filter,Mode]. Mode=skip пропустит старые события, чтобы не заваливать историю.

Проблемы? Проверьте firewall: netsh advfirewall firewall add rule name="Zabbix Agent" dir=in action=allow protocol=TCP localport=10050. Теперь агент готов ловить события AD.


Включение аудита событий AD в групповой политике

Без этого шага — пустые логи. Аудит Active Directory настраивается в GPO на домконтроллере.

Откройте gpedit.msc или gpmc.msc → Default Domain Controllers Policy → Computer Configuration → Policies → Windows Settings → Security Settings → Advanced Audit Policy Configuration → Audit Policies.

Включите (Success и Failure):

  • Account Management → Audit User Account Management (создание/удаление/изменение: ID 4720, 4726, 4738).
  • Account Management → Audit Other Account Management Events (пароли: ID 4724 для сброса).
  • Logon/Logoff → Audit Logon (неудачные: ID 4625).
  • Account Logon → Audit Credential Validation.

Примените: gpupdate /force. Перезагрузите DC или подождите 90 сек. Проверьте в Event Viewer: создайте тестового юзера — событие 4720 должно появиться в Security.

Подробно в руководстве по аудиту AD объясняют: это базовый шаг для zabbix мониторинга active directory. Без Failure-аудита failed logons не увидишь. А что если GPO не применяется? gpresult /r покажет.

Теперь события пишутся — Zabbix их подхватит.


Создание элементов данных для ключевых событий

Сердце мониторинга — items в Zabbix frontend. Перейдите к хосту → Items → Create item.

Тип: Zabbix agent (active). Ключи для событий:

Событие Event ID Ключ item
Создание учетки 4720 eventlog[Security,,,,4720,,skip]
Удаление учетки 4726 eventlog[Security,,,,4726,,skip]
Изменение учетки 4738 eventlog[Security,,,,4738,,skip]
Сброс/обновление пароля 4724 eventlog[Security,,,,4724,,skip]
Неудачный вход 4625 eventlog[Security,,,,4625,,skip]

Update interval: 30s-1m. History: 7d. Для фильтра по юзеру: eventlog[Security,user,,,,4625,,skip].

Тестируйте: создайте юзера — в Monitoring → Latest data увидите “New user account created”. Форум Zabbix дает примеры для lockout (4740).

Масштабируйте: Low-level discovery (LLD) для динамических ID, но для AD хватит фиксированных.


Настройка триггеров и оповещений

Items собирают, триггеры реагируют. На хосте → Triggers → Create.

Примеры:

  • Неудачные входы: {host:eventlog[Security,,,,4625,,skip].count(5m,"Logon Failure")}>5 — Severity: High.
  • Создание учеток: {host:eventlog[Security,,,,4720,,skip].change(1h)}>0 — Warning.
  • Пароль сброшен: {host:eventlog[Security,,,,4724,,skip].nodata(24h)}=0 — если есть, алерт.

Expression: last() или find(/host/key,5m,“like”,“password changed”). Actions → Media types для email/Slack.

Пример с Habr для 4625: {host:eventlog[...].logeventid()}=1. Тестируйте: симулируйте failed logons — алерт придет.

Пиши свои? Используй Functions: count(), change(), nodata().


Готовые шаблоны и автоматизация

Зачем вручную? Zabbix имеет шаблон для AD event log — template_windows_ad_event_log (для 2008-2016). Скачайте с Share: шаблон Windows AD.

Прикрепите к хосту: Configuration → Hosts → Templates → Link new templates. Он авто-создаст items/triggers для 4720+, 4625, lockouts.

Community на GitHub доработали для 2016. Reddit-скрипты добавляют PowerShell для RDP/lockout.

Автоматизация с LLD: прототипы items для всех ID. Масштаб на кластер DC — просто.

Проблемы с производительностью? Увеличьте interval до 2m, используйте preprocessing.


Источники

  1. Monitor Windows event log using active checks
  2. Windows Active Directory and Security Checks
  3. Active Directory monitoring and integration with Zabbix
  4. Monitoring Active Directory User LockOut and Unlock
  5. Windows Active Directory monitoring with zabbix
  6. Аудит доменных служб Active Directory за минуту
  7. Глава 18. Аудит и мониторинг Active Directory
  8. Windows Zabbix agent keys

Заключение

Настройка zabbix active directory мониторинга на Windows Server 2016 дает полный контроль: от создания учеток до brute-force атак. Главное — аудит GPO, active agent и items с eventlog. Начните с шаблона, протестируйте на тестовых событиях, и ваша инфраструктура под присмотром. Масштабируйте на прод — сэкономите часы на инцидентах. Удачи в изучении!

Авторы
Проверено модерацией
Модерация