четверг, 20 августа 2009 г.

Zabbix and LDAP

В продолжении изучения и осваивания системы мониторинга Zabbix добавил возможность аутенитфикации в домене, который достался по наследству.
Действия просты:
  • Так как мой акаунт уже есть в AD, то добавлять его не будем )), конечно если такового нет то необходимо добавить согласно корпаративного стандарта;
  • Опережая события скажи что надо на сервер, на котором стоит Zabbix server постивать php5-ldap, иначе будет ошибка в далнейшем и его придётся всё таки ставить.
  • Сначала посмотрим установлен ли этот пакет:
dpkg --get-selections | grep -v "deinstall"

ищем там php5-ldap, если есть то переходим следующему пункту, если нет то

apt-get install php5-ldap

и переходим следующему пункту.

  • Согласно документации на Zabbix сначала надо создать пользователя, а потом уже сделать ему аутентификацию через LDAP.
  • Заходим в Admininstration->Users, далее создаём пользователя Create User.
  • В меню создания пользователя все так же как и если бы это была локальная аутентификация, есть только одно но, Alias - это должен быть логин пользователя в AD, пароль не имеет значения (например - 1), так как далее будет использоваться только пароль из AD. И ещё, создать перванаперва акаунт с параметрами User type - ZABBIX Super Admin и Groups - Zabbix administrators. Просто после включения аутентификации через LDAP, внутреняя будет не доступна, но не надолго (но про это в конце).
  • Далее заходим под этой учёткой с паролем который задали (1) и идём в Administation-> Authentication. Выбираем Default authentication - LDAP, LDAP Host - ваш.AD.сервер, Port - 389, Base DN - cn=Users,dc=чччч,dc=чч (где ледат пользователи), Search attribute - sAMAccountName (это конкретно для AD), Bind DN* - cn=пользователь,cn-Users,dc=чччч,dc=чч (это учётка которая будет шерстить AD, создана должна быть заранее), Bind Password* - пароль этой учётки из Bind DN*.
  • Далее не ставим пока галочку LDAP Authentication Enable, а вводим пароль этой учётки (которую мы создали тремя рунктами ранее, кстати она должна появиться в поле Login) из AD. b нажимаем кнопку Test. Должна появиться полоска LDAP Login successful.
  • Теперь вводим ещё раз пароль из учётки AD и жмакам Save.
Делам Logout и теперь уже логинимся с параметрами учётки как в AD.

А теперь про "Просто после включения аутентификации через LDAP, внутреняя будет не доступна, но не надолго". А что же будет если LDAP будет недоступен. Этот вопрос у меня всплыл сразу.... Почитав ещё раз man и поэксперементировав - вывел следующее. То что мы сделали в Administation-> Authentication относиться к GUI access - System default. Что плохо при потере доступа к LDAP.
Если зайти в Admininstration->Users и выбрать User groups, можно увитеть список всех доступных групп. в колонке GUI access указан тип доступа, нажимая на этот параметр можно изменить его для соответствующей группы (System default, Internal, Disable).
Но находясь в самой группе, нельзя сменить тип доступа для неё.
Так что выход прост, меняем группу для своей учётки на например Guest (параметр Groups) не в коем случае не меняем User type - ZABBIX Super Admin (будет закрыто меню Admininstration). Логинимся под этой учёткой и меняем пареметр GUI access для группы
Zabbix administrators на Internal. То есть оставляем себе возможность зайти если что )).

Конечно возможны разного рода реализации, с созданием ещё одной группы, что то типа Super Zabbix administrators, и переносом туда резервного акаунта и внутренней аутентификацией, но это уже дело каждого.
Вот и все!

Тут обновился до версии 1.8, но не стал замарачиваться с замарочным upgrade'ом просто экспортировал настройки все, убил версию 1.6.5 и поставил 1.8. Так вот тут выяснилась интересная штука. Аккаун admin был неприкреплён ни к одной группе. Так, что надо не забывать его занести в ту группу, которая будет аутентироваться внутренней (забиксовой) аутентификацией.

Комментариев нет: