<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0"
  xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
  xmlns:atom="http://www.w3.org/2005/Atom">

<channel>

<title>Блог: заметки с тегом yandex</title>
<link>https://utata.ru/tags/yandex/</link>
<description>konditerov.ru</description>
<author>Илья Кондитеров</author>
<language>ru</language>
<generator>E2 (v3877; Aegea)</generator>

<itunes:owner>
<itunes:name>Илья Кондитеров</itunes:name>
<itunes:email></itunes:email>
</itunes:owner>
<itunes:subtitle>konditerov.ru</itunes:subtitle>
<itunes:image href="" />
<itunes:explicit></itunes:explicit>

<item>
<title>Настройка отправки email уведомлений в zabbix 2.4</title>
<guid isPermaLink="false">19</guid>
<link>https://utata.ru/all/nastroyka-otpravki-email-uvedomleniy-v-zabbix-2-4/</link>
<pubDate>Mon, 09 May 2016 11:50:55 +0300</pubDate>
<author>Илья Кондитеров</author>
<comments>https://utata.ru/all/nastroyka-otpravki-email-uvedomleniy-v-zabbix-2-4/</comments>
<description>
&lt;p&gt;&lt;h1&gt;Введение&lt;/h1&gt;&lt;/p&gt;
&lt;p&gt;Поле установки сервер мониторинга Zabbix не настроен на отправку уведомлений о сработавших триггерах. Более того, штатный функционал по отправке оповещений на email не умеет авторизовываться на почтовом сервере. То есть вы сможете использовать эту возможность только если у вас есть свой собственный почтовый сервер, на котором вы разрешите заббиксу отправлять уведомления без авторизации.&lt;/p&gt;
&lt;p&gt;Использовать в такой ситуации публичные сервера не получится. Это неудобно и не практично. Мне зачастую не хочется возиться с настройкой почтового сервера, гораздо удобнее и быстрее воспользоваться готовым. Этим мы и займемся далее — научим zabbix отправлять email уведомления с авторизацией на smtp сервере.&lt;/p&gt;
&lt;p&gt;&lt;h2&gt;Настройка ssmtp для авторизации на почтовом сервере&lt;/h2&gt;&lt;/p&gt;
&lt;p&gt;Для отправки уведомлений на почту с помощью smtp авторизации нам понадобится почтовый клиент &lt;i&gt;ssmtp&lt;/i&gt;. Установим его:&lt;/p&gt;
&lt;pre&gt;sudo apt-get install -y ssmtp&lt;/pre&gt;
&lt;p&gt;Теперь нужно настроить почтовый клиент на отправку писем через указанную учетную запись. Для этого открываем файл &lt;i&gt;/etc/ssmtp/ssmtp.conf&lt;/i&gt; и приводим его к следующему виду для отправки через почтовый сервер Яндекса:&lt;/p&gt;
&lt;pre&gt;sudo mcedit ssmtp.conf&lt;/pre&gt;
&lt;pre&gt;root=zabbix@zeroxzed.ru
mailhub=smtp.yandex.ru:465
AuthUser=zabbix@zeroxzed.ru
AuthPass=password
AuthMethod=LOGIN
FromLineOverride=YES
UseTLS=YES
RewriteDomain=zeroxzed.ru
Hostname=zeroxzed.ru
Debug=YES
TLS_CA_File=/etc/pki/tls/certs/ca-bundle.crt&lt;/pre&gt;
&lt;blockquote&gt;&lt;p&gt;В данном примере я использую почтовый домен zeroxzed.ru, он у меня прикреплен к Яндексу и обслуживается им. Если у вас обычный почтовый ящик, используйте адрес вида &lt;i&gt;mailbox@yandex.ru&lt;/i&gt;.&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;Если вы хотите использовать учетную запись gmail то настройки ssmtp должны быть следующие:&lt;/p&gt;
&lt;pre&gt;root=mailbox@gmail.com
mailhub=smtp.gmail.com:587
RewriteDomain=gmail.com
AuthUser=mailbox
AuthPass=parolchik
Hostname=gmail.com
UseSTARTTLS=YES
AuthMethod=LOGIN
FromLineOverride=YES
UseTLS=YES
Debug=YES
TLS_CA_File=/etc/pki/tls/certs/ca-bundle.crt&lt;/pre&gt;
&lt;p&gt;И редактируем там же файл &lt;i&gt;revaliases&lt;/i&gt;, добавляя одну строку для яндекса:&lt;/p&gt;
&lt;pre&gt;root:zabbix@zeroxzed.ru:smtp.yandex.ru:465&lt;/pre&gt;
&lt;p&gt;И для gmail:&lt;/p&gt;
&lt;pre&gt;root:mailbox@gmail.com:smtp.gmail.com:587&lt;/pre&gt;
&lt;p&gt;Теперь проверим работу почтового клиента. Отправляем через консоль тестовое письмо:&lt;/p&gt;
&lt;pre&gt;
echo «test_message» | ssmtp -v zeroxzed@gmail.com

[&lt;-] 220 smtp3m.mail.yandex.net ESMTP
[-&gt;] EHLO zeroxzed.ru
[&lt;-] 250 ENHANCEDSTATUSCODES
[-&gt;] AUTH LOGIN
[&lt;-] 334 VXNlcb5hbDU6
[-&gt;] emFiYml4QEplcm94tmVkLnJ1
[&lt;-] 334 UGFzR3dvc2Q6
[&lt;-] 235 2.7.0 Authentication successful.
[-&gt;] MAIL FROM:&lt;zabbix@zeroxzed.ru&gt;
[&lt;-] 250 2.1.0 &lt;zabbix@zeroxzed.ru&gt; ok
[-&gt;] RCPT TO:&lt;zeroxzed@gmail.com&gt;
[&lt;-] 250 2.1.5 &lt;zeroxzed@gmail.com&gt; recipient ok
[-&gt;] DATA
[&lt;-] 354 Enter mail, end with "." on a line by itself
[-&gt;] Received: by zeroxzed.ru (sSMTP sendmail emulation); Thu, 05 Nov 2015 18:32:18 +0300
[-&gt;] From: «root» &lt;zabbix@zeroxzed.ru&gt;
[-&gt;] Date: Thu, 05 Nov 2015 18:32:18 +0300
[-&gt;] test_message
[-&gt;]
[-&gt;] .
[&lt;-] 250 2.0.0 Ok: queued on smtp3m.mail.yandex.net as 1446737539-AXVW9QixF9-WJAWKNV9
[-&gt;] QUIT
[&lt;-] 221 2.0.0 Closing connection.
&lt;/pre&gt;
&lt;blockquote&gt;&lt;p&gt;Когда писал статью, не думал, что мне будут приходить на почту тестовые письма. Но долгое время не мог понять, что за сообщения с текстом &lt;i&gt;test_message&lt;/i&gt; периодически прилетают в почту. Теперь понял, что это копипастом с этой статьи люди мне шлют тестовые письма. Не забывайте менять адрес получателя, мне ваши тестовые письма ни к чему :)&lt;/p&gt;
&lt;/blockquote&gt;&lt;p&gt;Все в порядке, письмо улетело. Если что, логи работы почтового клиента можно посмотреть в файле &lt;i&gt;/var/log/maillog&lt;/i&gt;.&lt;/p&gt;
&lt;p&gt;&lt;h2&gt;Email script для отправки оповещений&lt;/h2&gt;&lt;/p&gt;
&lt;p&gt;Отправлять почтовые уведомления из zabbix будем с помощью скрипта. Первым делом выясним, где наш заббикс хранит скрипты для оповещений. Для этого открываем файл конфигурации и ищем там строку &lt;b&gt;AlertScriptsPath&lt;/b&gt;:&lt;/p&gt;
&lt;pre&gt;cat /etc/zabbix/zabbix_server.conf | grep AlertScriptsPath
AlertScriptsPath=/usr/lib/zabbix/alertscripts&lt;/pre&gt;
&lt;p&gt;Идем в указанную папку и создаем там скрипт отправки уведомлений на почту:&lt;/p&gt;
&lt;pre&gt;mcedit /usr/lib/zabbix/alertscripts/mail.sh&lt;/pre&gt;
&lt;pre&gt;#!/bin/sh
export smtpemailfrom=zabbix@zeroxzed.ru
echo «To: $1» &gt; /tmp/mymailinput
echo «Subject: $2» &gt;&gt; /tmp/mymailinput
echo «Content-Type: text/plain; charset=»utf-8»» &gt;&gt; /tmp/mymailinput
echo «From: \«Zabbix Zeroxzed\«&lt;$smtpemailfrom&gt;» &gt;&gt; /tmp/mymailinput
echo «» &gt;&gt; /tmp/mymailinput
echo «$3» &gt;&gt; /tmp/mymailinput
/usr/sbin/ssmtp $1 -F $smtpemailfrom &lt; /tmp/mymailinput&lt;/pre&gt;
&lt;p&gt;Не забудьте указать свой почтовый адрес и поле отправителя From. Сохраняем скрипт и делаем его исполняемым:&lt;/p&gt;
&lt;pre&gt;chmod 0777 mail.sh&lt;/pre&gt;
&lt;p&gt;&lt;h2&gt;Настройка в Zabbix отправки уведомлений&lt;/h2&gt;&lt;br /&gt;
Теперь идем в web интерфейс zabbix и настраиваем отправку оповещений на почту с smtp авторизацией. Для этого переходим в раздел &lt;i&gt;Administration -&gt; Media types&lt;/i&gt; и нажимаем на ссылку &lt;i&gt;Email&lt;/i&gt;:&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://utata.ru/pictures/zabbix-notifications-01.png" width="935" height="353" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;Заполняем необходимые параметры как на картинке:&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://utata.ru/pictures/zabbix-notifications-02.png" width="935" height="364" alt="" /&gt;
&lt;/div&gt;
&lt;div class="e2-text-table"&gt;
&lt;table cellpadding="0" cellspacing="0" border="0"&gt;
&lt;tr&gt;
&lt;td&gt;Name&lt;/td&gt;
&lt;td&gt;Email&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Type&lt;/td&gt;
&lt;td&gt;Script&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Script name&lt;/td&gt;
&lt;td&gt;mail.sh&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p&gt;Сохраняем настройки, нажав Update. Дальше идем в раздел Administration -&gt; Users. Меняем отображение с групп на пользователей:&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://utata.ru/pictures/zabbix-notifications-03.png" width="934" height="327" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;Нажимаем на пользователя Admin и переходим на вкладку Media, там жмем на add. Откроется окно добавления источника оповещений. Заполняем как на картинке:&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://utata.ru/pictures/zabbix-notifications-04.png" width="392" height="285" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;Нажимаем Update. Затем в разделе Media пользователя Admin еще раз жмем Update для применения настроек:&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://utata.ru/pictures/zabbix-notifications-05.png" width="936" height="319" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;Теперь последний штрих, который лично я частенько забываю сделать, а потом долго разбираюсь, почему zabbix не отправляет оповещения на почту. Идем в раздел Configuration -&gt; Actions и в единственной строке Report problems to Zabbix administrators жмем на Disabled в столбце статус, чтобы он стал Enabled:&lt;/p&gt;
&lt;div class="e2-text-picture"&gt;
&lt;img src="https://utata.ru/pictures/zabbix-notifications-06.png" width="934" height="314" alt="" /&gt;
&lt;/div&gt;
&lt;p&gt;Теперь все готово. Надо ждать срабатывания тригера и проверять почту. После срабатывания тригера и отправки заббиксом письма, в системном почтовом логе /var/log/maillog должны появиться записи об этом.&lt;/p&gt;
&lt;p&gt;&lt;small&gt;Отсюда: &lt;a href="http://serveradmin.ru/nastroyka-email-opoveshheniy-v-zabbix/"&gt;http://serveradmin.ru/nastroyka-email-opoveshheniy-v-zabbix/&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;
</description>
</item>


</channel>
</rss>