Zabbix и Active Directory: Полное руководство по настройке аутентификации и ролевого доступа | AdminWiki
Timeweb Cloud — сервера, Kubernetes, S3, Terraform. Лучшие цены IaaS.
Попробовать

Zabbix и Active Directory: Полное руководство по настройке аутентификации и ролевого доступа

15 апреля 2026 10 мин. чтения
Содержание статьи

Интеграция системы мониторинга Zabbix с Microsoft Active Directory (AD) — это стандартная задача для корпоративных сред, которая решает сразу несколько критических проблем управления доступом. Вместо создания отдельных учетных записей в Zabbix для каждого сотрудника, вы используете единую доменную инфраструктуру. Это не просто удобство, а необходимость для соответствия политикам безопасности и масштабирования мониторинга в крупных организациях.

Эта пошаговая инструкция предоставляет проверенный на практике метод подключения Zabbix к AD через LDAP/LDAPS, создания безопасного сервисного аккаунта и автоматизации назначения прав на основе групп пользователей. Вы получите готовое решение, которое исключает ручное управление учетными записями и обеспечивает централизованный контроль через Active Directory.

Зачем интегрировать Zabbix с Active Directory? Преимущества для корпоративной среды

Интеграция Zabbix с AD превращает систему мониторинга из отдельного инструмента в часть общей IT-инфраструктуры, что дает пять ключевых преимуществ:

  • Единая точка входа (Single Sign-On в рамках инфраструктуры): Пользователи входят в Zabbix с помощью своих стандартных доменных учетных записей и паролей. Не нужно помнить отдельный логин и пароль для мониторинга.
  • Централизованное управление учетными записями: Все операции с пользователями (создание, блокировка, изменение пароля) выполняются в Active Directory согласно корпоративным политикам. Изменения в AD автоматически отражаются в Zabbix.
  • Автоматизация назначения прав через группы AD: Это основная выгода. Когда новый сотрудник присоединяется к команде DevOps или администраторов, его просто добавляют в соответствующую группу безопасности AD (например, «AD_Group_Zabbix_Admins»). Система Zabbix автоматически предоставляет ему права администратора. При увольнении — удаление из группы мгновенно блокирует доступ.
  • Соответствие требованиям безопасности и аудита: Использование LDAPS обеспечивает защищенное соединение. Сервисный аккаунт создается с минимальными правами только на чтение. Все действия по управлению доступом логируются в AD, что упрощает аудит.
  • Масштабируемость: В организации с сотнями сотрудников ручное создание пользователей в Zabbix становится невыполнимой задачей. Интеграция с AD позволяет масштабировать доступ к мониторингу без увеличения нагрузки на администраторов.

Таким образом, интеграция — это не техническая «фича», а стратегическое решение для безопасного и эффективного управления корпоративным мониторингом.

Подготовка Active Directory: создание сервисной учетной записи и групп

Настройка начинается на стороне Windows Server. Необходимо подготовить структуру, которую Zabbix будет использовать для подключения и поиска пользователей.

Создание и настройка сервисного пользователя (Bind DN) с минимальными привилегиями

Для подключения к LDAP Zabbix использует специальную учетную запись — Bind DN. Это сервисный пользователь, который «читает» каталог AD для поиска других пользователей и групп.

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

Пошаговые действия:

  1. В «Active Directory Users and Computers» создайте новое подразделение (OU) для сервисных учетных записей, например: OU=ServiceAccounts,DC=example,DC=local. Это улучшает организацию и безопасность.
  2. В этом OU создайте нового пользователя. Имя должно быть осмысленным, например: svc_zabbix_ldap.
  3. Назначьте надежный, сложный пароль. Установите флажок «Password never expires», чтобы избежать сбоев подключения из-за внезапного изменения пароля. Однако это требует регулярной ручной ротации пароля в рамках политик безопасности.
  4. Для назначения минимальных прав: перейдите в свойства OU, где находятся пользователи и группы, которые будут доступны Zabbix (например, OU=Users,DC=example,DC=local). На вкладке «Security» добавьте созданного пользователя svc_zabbix_ldap и разрешите ему только права «Read» (чтение) на этот объект и его содержимое. Этого достаточно для работы LDAP-поиска.

Эти шаги гарантируют, что даже если учетные данные сервисного аккаунта будут скомпрометированы, злоумышленник не сможет внести изменения в Active Directory.

Формирование структуры групп AD для отображения на роли Zabbix

Автоматизация управления доступом основана на сопоставлении групп безопасности AD с группами и ролями в Zabbix.

Создайте группы безопасности в AD с понятными именами, соответствующими корпоративному стандарту:

  • AD_Group_Zabbix_Admins — для пользователей с правами администратора в Zabbix.
  • AD_Group_Zabbix_Users — для обычных пользователей мониторинга (права на просмотр дашбордов, данных).
  • AD_Group_Zabbix_Guests — для пользователей с правами только на чтение.
  • AD_Group_Zabbix_NoAccess — опциональная группа для исключения пользователей из доступа к Zabbix (например, для сотрудников других департаментов).

Разместите эти группы в отдельном OU, например, OU=ZabbixGroups,OU=Groups,DC=example,DC=local. Добавьте в эти группы тестовых пользователей для проверки работы. Эта структура станет основой для автоматического назначения ролей.

Настройка подключения Zabbix к домену через LDAP

Основная конфигурация выполняется в веб-интерфейсе Zabbix. Перейдите в раздел Administration → Authentication → LDAP settings.

Конфигурация параметров LDAP-сервера и учетных данных для подключения

Заполните поля формы, используя данные вашего домена:

Поле в Zabbix Значение и пояснение
LDAP host Полное доменное имя (FQDN) контроллера домена, например: dc01.example.local. Можно использовать IP-адрес, но FQDN предпочтительнее для работы с SSL.
Port 389 для незащищенного LDAP или 636 для LDAPS (рекомендуется). Мы настроим LDAPS позже.
Base DN Базовая точка поиска в дереве AD. Определите ее с помощью PowerShell: Get-ADDomain | Select-Object DistinguishedName. Пример: DC=example,DC=local. Можно указать более узкий OU для поиска пользователей, например: OU=Users,DC=example,DC=local.
Bind DN Полный Distinguished Name сервисного пользователя, созданного ранее. Пример: CN=svc_zabbix_ldap,OU=ServiceAccounts,DC=example,DC=local.
Bind password Пароль учетной записи svc_zabbix_ldap.

Настройка поиска учетных записей пользователей в каталоге

Эта часть конфигурации отвечает за корректное сопоставление логина пользователя в Zabbix с его учетной записью в AD.

  • User username attribute: Установите sAMAccountName. Это стандартный атрибут, содержащий логин для входа в Windows (например, «jsmith»).
  • User lastname attribute: Установите sn. Это атрибут фамилии, который используется Zabbix для отображения полного имени пользователя.
  • Search attribute: Также установите sAMAccountName.
  • Search filter: Это фильтр LDAP для поиска объектов пользователей. Используйте стандартный фильтр: (&(objectClass=user)(sAMAccountName={USERNAME})). Фильтр {USERNAME} автоматически заменяется на логин, введенный пользователем в интерфейсе Zabbix.

После заполнения всех полей обязательно нажмите кнопку «Test authentication» и попробуйте ввести логин и пароль одного из тестовых доменных пользователей. Если тест успешен, включите LDAP аутентификацию, установив соответствующую галочку.

Переход на защищенное соединение: настройка LDAPS в Zabbix

Использование незащищенного LDAP (порт 389) в корпоративной сети является нарушением базовых принципов безопасности. LDAPS (LDAP over SSL/TLS, порт 636) шифрует весь трафик между Zabbix и контроллером домена.

Импорт SSL-сертификата домена на сервер Zabbix

Для работы LDAPS сервер Zabbix (обычно на Linux) должен доверять SSL-сертификату корневого центра сертификации (CA) вашего домена.

1. Получение сертификата: Экспортируйте сертификат корневого CA вашего домена в формате .crt или .pem из «Сертификаты» на контроллере домена или через консоль управления.

2. Импорт на сервер Zabbix: Команды зависят от ОС сервера Zabbix.

  • Для CentOS/RHEL:
    # Копируем сертификат в директорию
    sudo cp domain_ca.crt /etc/pki/ca-trust/source/anchors/
    # Обновляем хранилище доверенных сертификатов
    sudo update-ca-trust
  • Для Ubuntu/Debian:
    # Копируем сертификат в директорию
    sudo cp domain_ca.crt /usr/local/share/ca-certificates/
    # Обновляем хранилище доверенных сертификатов
    sudo update-ca-certificates

3. Проверка подключения: Убедитесь, что сервер Zabbix может установить SSL-соединение с контроллером домена:

openssl s_client -connect dc01.example.local:636 -showcerts

Команда должна завершиться успешно с выводом цепочки сертификатов.

4. Настройка в Zabbix: В интерфейсе Zabbix в разделе LDAP settings измените «Port» на 636. В зависимости от конфигурации AD может потребоваться установить галочку «Start TLS» или выбрать «SSL» в качестве типа соединения. После изменения обязательно выполните «Test authentication».

Важно: Время на сервере Zabbix должно быть синхронизировано с доменом (например, через NTP), чтобы проверка SSL-сертификатов работала корректно.

Автоматизация ролевого доступа: привязка групп AD к ролям Zabbix

Это ключевой этап, который превращает интеграцию в инструмент автоматического управления. Права в Zabbix будут назначаться не отдельным пользователям, а всем членам определенных групп AD.

Сопоставление групп Active Directory с ролями и разрешениями в Zabbix

Перейдите в раздел Zabbix Administration → User groups.

  1. Создайте новую группу пользователей Zabbix или используйте существующую. Например, создайте группу «Domain Admins in Zabbix».
  2. В свойствах группы найдите вкладку «LDAP». В поле «LDAP group» введите полный Distinguished Name группы AD, созданной ранее. Пример: CN=AD_Group_Zabbix_Admins,OU=ZabbixGroups,OU=Groups,DC=example,DC=local.
  3. Назначьте этой группе Zabbix соответствующую роль: «Zabbix Super Admin», «Admin» или созданную вами роль с необходимым набором прав.
  4. Настройте права доступа к хостам или шаблонам для этой группы, если требуется ограниченный доступ.
  5. Установите параметр «Frontend access» в значение «LDAP». Это означает, что пользователи из этой группы будут аутентифицироваться только через AD.

Повторите эти шаги для других групп: «AD_Group_Zabbix_Users» сопоставьте с ролью «Zabbix User», «AD_Group_Zabbix_Guests» — с «Zabbix Guest».

Механизм работы: Когда пользователь из AD впервые пытается войти в Zabbix, система проверяет его членство в группах AD. Если пользователь принадлежит, например, к группе «AD_Group_Zabbix_Admins», Zabbix автоматически добавляет его в локальную группу «Domain Admins in Zabbix» и применяет все назначенные этой группе права и роли. Все дальнейшие изменения прав производятся через управление группами в Active Directory.

Для сложных сценариев можно использовать вложенные группы AD или сопоставлять несколько групп AD с одной группой в Zabbix.

Тестирование, устранение неполадок и типичные ошибки

После настройки необходимо провести полное тестирование и знать, как диагностировать проблемы.

Анализ логов Zabbix для диагностики проблем с LDAP

Основной источник информации — лог сервера Zabbix: /var/log/zabbix/zabbix_server.log.

Ключевые строки для поиска и их расшифровка:

  • authentication failure for user "jsmith": Пользователь не найден или пароль неверен. Проверьте Bind DN, пароль, Base DN и Search filter.
  • ldap_search_ext() failed: Can't contact LDAP server: Проблема с сетевой доступностью или портом. Проверьте, доступен ли контроллер домена по указанному хосту и порту (используйте telnet или nc).
  • TLS/SSL handshake failed: Проблема с SSL-сертификатами или временем на сервере. Проверьте команду openssl s_client и синхронизацию времени.

Для независимой проверки LDAP-подключения используйте команду ldapsearch прямо на сервере Zabbix:

ldapsearch -x -H ldap://dc01.example.local -D "CN=svc_zabbix_ldap,OU=ServiceAccounts,DC=example,DC=local" -W -b "OU=Users,DC=example,DC=local" "(sAMAccountName=test_user)"

Эта команда имитирует действия Zabbix и помогает локализовать проблему: неправильные учетные данные, недоступность сервера или ошибки в фильтрах поиска.

Пошаговое тестирование:

  1. Войдите в веб-интерфейс Zabbix под учетной записью доменного пользователя, добавленного в тестовую группу AD.
  2. Проверьте, что пользователь появился в списке пользователей Zabbix (Administration → Users) с правильным именем и источником аутентификации «LDAP».
  3. Убедитесь, что пользователю назначены правильные права (соответствующие его группе AD).
  4. Попробуйте выполнить действия согласно его роли (например, администратор должен иметь возможность создавать новые хосты).

Типичные ошибки и решения:

  • «Invalid username or password» при тестовом входе: Проверьте правильность Bind DN и пароля, убедитесь, что порт открыт на контроллере домена и не блокируется firewall.
  • «User not found in LDAP»: Убедитесь, что Base DN включает OU, где находятся пользователи. Проверьте значение Search attribute (sAMAccountName). Убедитесь, что поисковый фильтр корректный.
  • «SSL handshake failed»: Проверьте, что сертификат CA импортирован в системное хранилище доверенных сертификатов на сервере Zabbix. Убедитесь, что время на сервере Zabbix и контроллере домена синхронизировано.

Также полезно проверять журналы событий Windows на контроллере домена на предмет ошибок аутентификации LDAP.

Безопасность и лучшие практики эксплуатации

Интеграция с центральной системой аутентификации повышает безопасность, но требует соблюдения определенных правил:

  • Всегда используйте LDAPS, а не LDAP. Это обязательное требование для любой корпоративной среды. LDAP передает данные в открытом виде.
  • Сервисная учетная запись Bind DN должна иметь только права на чтение (Read) в строго ограниченных OU. Никаких прав на изменение или удаление.
  • Регулярная ротация пароля сервисной учетной записи. Хотя пароль установлен как «неограниченный», его следует менять по графику (например, каждые 6 месяцев) и хранить в безопасном месте (например, в защищенном vault).
  • Ведение аудита. Отслеживайте попытки входа в Zabbix через его внутренние логи и события аутентификации в Active Directory.
  • Используйте вложенные группы AD для сложных сценариев. Например, создайте группу «Все администраторы», которая включает группы «Администраторы мониторинга» и «Администраторы сети». Это упрощает управление.
  • План действий при увольнении сотрудника. Доступ к Zabbix блокируется автоматически при удалении пользователя из соответствующих групп AD. Убедитесь, что этот процесс включен в вашу процедуру увольнения.
  • Регулярное тестирование восстановления. Периодически проверяйте работу аутентификации и наличие резервной локальной административной учетной записи в Zabbix на случай проблем с доменом. Резервная учетная запись должна быть защищена особенно надежно.

Следуя этим практикам, вы создаете не просто рабочую интеграцию, а безопасный, масштабируемый и управляемый механизм контроля доступа к критически важной системе мониторинга.

Если вам требуется настроить базовую инфраструктуру для размещения Zabbix или других систем, ознакомьтесь с практическим руководством по Linux для IT-специалистов, которое охватывает установку, базовое администрирование и настройку сетей.

Для сравнения Zabbix с другими популярными системами мониторинга и выбора оптимального решения для вашей инфраструктуры, рекомендуем ознакомиться с объективным анализом в статье Zabbix vs Prometheus + Grafana: сравнение и пошаговая настройка мониторинга Linux серверов в 2026.

Поделиться:
Сохранить гайд? В закладки браузера