Почему не работает email-оповещение в Zabbix? Ubuntu server 14.04. Zabbix 2.4.2. Настраивал оповещения через внешний скрипт.#!/bin/sh export smtpemailfrom="zbxyandex.ru" export zabbixemailto="$1" export zabbixsubject="$2" export zabbixbody="$3" export smtpserver=smtp.yandex.ru export smtplogin=zbxyandex.ru export smtppass=MegaPass export logfile=/var/log/mail.log
/usr/local/bin/sendEmail -l $logfile -f $smtpemailfrom -t $zabbixemailto -u $zabbixsubject -m $zabbixbody -s $smtpserver -xu $smtplogin -xp $smtppass Скрипт лежит там где надо. Даны права 755. Если запускать через консоль, то все отправляет и приходит. А вот через zabbix никак. Показывает, что "отправлено", но писем нет и в логах ничего тоже.
Вероятно, проблема связана с тем, что Zabbix работает от имени пользователя zabbix, а не от вашего пользователя, который успешно отправляет письма через консоль.
Попробуйте добавить пользователя zabbix в группу, которая имеет права доступа к скрипту. Для этого выполните команду:
sudo usermod -a -G yourgroup zabbix
Где yourgroup - это группа, которая имеет права доступа к скрипту.
Также убедитесь, что в настройках Zabbix указан правильный путь к вашему скрипту и что Zabbix имеет права на его выполнение.
Если после этого проблема не решится, попробуйте добавить ошибку в вывод скрипта, чтобы увидеть, что именно может вызывать проблему:
Вероятно, проблема связана с тем, что Zabbix работает от имени пользователя zabbix, а не от вашего пользователя, который успешно отправляет письма через консоль.
Попробуйте добавить пользователя zabbix в группу, которая имеет права доступа к скрипту. Для этого выполните команду:
sudo usermod -a -G yourgroup zabbixГде yourgroup - это группа, которая имеет права доступа к скрипту.
Также убедитесь, что в настройках Zabbix указан правильный путь к вашему скрипту и что Zabbix имеет права на его выполнение.
Если после этого проблема не решится, попробуйте добавить ошибку в вывод скрипта, чтобы увидеть, что именно может вызывать проблему:
#!/bin/shexport smtpemailfrom="zbxyandex.ru"
export zabbixemailto="$1"
export zabbixsubject="$2"
export zabbixbody="$3"
export smtpserver=smtp.yandex.ru
export smtplogin=zbxyandex.ru
export smtppass=MegaPass
export logfile=/var/log/mail.log
/usr/local/bin/sendEmail -l $logfile -f $smtpemailfrom -t $zabbixemailto
-u $zabbixsubject -m $zabbixbody -s $smtpserver -xu
$smtplogin -xp $smtppass 2>&1 >> /var/log/mail_error.log
Этот скрипт будет записывать любые ошибки в файл /var/log/mail_error.log для дальнейшего анализа.