Добрый день.
Пытаюсь подружить 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 Но таких инструкций с тем же конфигом много. Не сочтите за рекламу, если так нельзя, я удалю ссылку и оставлю только конфиги.