zabbix_agentd от имени пользователя root

Недавно столкнулся с проблемой в работе zabbix_agentd на FreeBSD системах где в целях безопасности в sysctl запрещено пользователям и группам видеть чужие процессы:

security.bsd.see_other_gids: 0
security.bsd.see_other_uids: 0

В этом случае zabbix_agentd при проверке proc.num[имя процесса] всегда выдавал значение 0.

Для этого нужно пересобрать zabbix-agent с небольшими изменениями.

Проследуем по пути:

cd /usr/ports/net-mgmt/zabbix-agent

Извлекаем исходники:

make extract

Редактируем файл daemon.c:

ee work/zabbix-1.8.3/src/libs/zbxnix/daemon.c

Находим строку:

char user[7] = "zabbix";

И заменяем имя пользователя zabbix на root:

char user[7] = "root";

Собираем и устанавливаем порт:

make install clean

Теперь zabbix-agent будет запускатся от имени пользователя root и будет иметь доступ ко всем необходимым данным.

PS: всё это применимо на версии zabbix 1.8.3 и Freebsd 7, 8, CURRENT на момент публикации статьи.

You may also like...

Добавить комментарий