LINUX.ORG.RU

Мониторинг Exim в Zabbix

 ,


0

1

Добрый день.

Пытаюсь подружить exim и zabbix. Нашел шаблон и скрипт, немного подправил и запустил. Но в zabbix на моем сервере элементы данных из шаблона находятся то в состоянии активировано, то в состоянии не поддерживается.

Если на сервере с exim запустить команду «bash /opt/zexim4.sh \frozen» (ключ любой из тех, что используются в скрипте), то мне возвращается результат в виде 1-3 цифр т.е. все в порядке.

А вот при запуске с прокси-сервера, который собирает данные результат запуска очень странный. То тоже возвращаются цифры, то несколько ошибок доступа и цифры. Выглядит это так:

it@srv-01:~$ zabbix_get -s 10.199.0.15 -p 10050 -k "exim[complete]"
153

it@srv-01:~$ zabbix_get -s 10.199.0.15 -p 10050 -k "exim[complete]"
153

it@srv-01:~$ zabbix_get -s 10.199.0.15 -p 10050 -k "exim[complete]"
tail: невозможно открыть «/var/log/exim4/main-20181105.log» для чтения: Отказано в доступе
awk: cannot open /var/log/exim4/main-20181105.log (Permission denied)
/opt/zexim4.sh: line 78: /tmp/exim_log_pars.txt: Отказано в доступе
exim: permission denied
Couldn't opendir /var/spool/exim4/input: Отказано в доступе
exim: permission denied
Error closing pipe:
/opt/zexim4.sh: line 99: /tmp/stats.txt: Отказано в доступе
153

На сервере с exim файл sudoers выглядит вот так:

root@ex2:/opt# cat /etc/sudoers
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

zabbix ALL=(ALL) NOPASSWD: /sbin/iptables -L INPUT -n

zabbix ALL=(ALL) NOPASSWD: /sbin/iptables -S fail2ban-permanent

zabbix ALL=(ALL) NOPASSWD: /sbin/iptables -S fail2ban-banned

zabbix ALL=(ALL) NOPASSWD: /usr/sbin/exim -bp

zabbix ALL=(ALL) NOPASSWD: /usr/sbin/dmidecode

zabbix ALL=(ALL) NOPASSWD: /usr/bin/stat

zabbix ALL=(ALL) NOPASSWD: /usr/bin/md5sum

zabbix ALL=(ALL) NOPASSWD: /usr/bin/du

Defaults:zabbix        !requiretty

zabbix ALL=(ALL) NOPASSWD: /opt/zexim4.sh

zabbix ALL=(ALL) NOPASSWD: /var/log/exim4

zabbix ALL=(ALL) NOPASSWD: /tmp/

zabbix ALL=(ALL) NOPASSWD: /var/spool/exim4

Заметил такую закономерность, что если запускать скрипт на сервере с exim, а потом выполнять на zabbix proxy, то сначала все ок, а через минуту появляются ошибки доступа. И ошибки будут идти пока не запущу вручную скрипт на exim. chmod +x /opt/zexim4.sh делал.

Скрипт и шаблон, а так же инструкцию, брал отсюда tentorium.net/index.php?/topic/64-monitoring-exim4-cherez-zabbix Но таких инструкций с тем же конфигом много. Не сочтите за рекламу, если так нельзя, я удалю ссылку и оставлю только конфиги.

zabbix ALL=(ALL) NOPASSWD: /var/log/exim4

zabbix ALL=(ALL) NOPASSWD: /tmp/

zabbix ALL=(ALL) NOPASSWD: /var/spool/exim4

Кто-то походу не понимает, что делают записи в этом файле.

что если запускать скрипт на сервере с exim, а потом выполнять на zabbix proxy

На сервере скрипт запускаешь от рута?

Как долго выполняется скрипт?

Deleted ()
Ответ на: комментарий от Deleted

Кто-то походу не понимает, что делают записи в этом файле.

Позволяют заходить с правами рута в указанные директории без ввода пароля? Я так понял эти права тут и не нужны. Добавлял их чтобы проверить исчезнет ли проблема.

На сервере скрипт запускаешь от рута?
Как долго выполняется скрипт?

Да, от рута. По времени точно не могу сказать, я просто запускаю с указанием любого ключа. Следующие секунд 20 я могу получить нормальный вывод по любому ключу на сервере с прокси. Дальше получаю ошибку доступа.

KOTOXJle6 ()
Ответ на: комментарий от KOTOXJle6

Позволяют заходить с правами рута в указанные директории без ввода пароля?

Нет. В sudoers указываются команды, которые может выполнять пользователь с повышенными привилегиями, а не права на файлы и каталоги.

Да, от рута.

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

Deleted ()
Ответ на: комментарий от Deleted

В общем, проблема была в том, что zabbix запускал скрипт командой «bash /opt/zexim4.sh», а нужно было «sudo bash /opt/zexim4.sh».

Спасибо за помощь!

KOTOXJle6 ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.