1. Email

Обзор

Чтобы настроить email в качестве канала доставки сообщений, вам необходимо настроить email как способ оповещений и назначить соответствующие адреса пользователям.

Несколько оповещений по одному событию группируются вместе в одной ветке email сообщений.

Конфигурация

Чтобы настроить email как тип медиа:

  1. Перейдите в Оповещения > Типы медиа.
  2. Нажмите Создать тип медиа (или нажмите Email в списке предопределенных типов медиа).

Вкладка Тип медиа содержит общие атрибуты типа медиа:

Все обязательные поля ввода отмечены красной звездочкой.

Пароль экспортируется в открытом виде при экспорте конфигурации типа медиа email.

Следующие параметры специфичны для типа медиа email:

Parameter Description
Email provider Выберите поставщика email: Generic SMTP, Gmail, Gmail relay, Office365 или Office365 relay.
Если вы выберете параметры, связанные с Gmail/Office365, вам нужно будет указать только адрес email отправителя и пароль; такие параметры, как SMTP server, SMTP server port, SMTP helo и Connection security, будут автоматически заполнены Zabbix. См. также: Автоматизированные типы медиа Gmail/Office365.
SMTP server Укажите SMTP-сервер для обработки исходящих сообщений.
Это поле доступно, если в качестве поставщика email выбран Generic SMTP.
SMTP server port Укажите порт SMTP-сервера для обработки исходящих сообщений.
Это поле доступно, если в качестве поставщика email выбран Generic SMTP.
Email Адрес, указанный здесь, будет использоваться как адрес From для отправляемых сообщений.
Поддерживается добавление отображаемого имени отправителя (например, "Zabbix_info" в Zabbix_info zabbix\@company.com на снимке экрана выше) вместе с фактическим адресом email.
В Zabbix для отображаемых имен в email есть некоторые ограничения по сравнению с тем, что разрешено RFC 5322, как показано в примерах:
Допустимые примеры:
zabbix\@company.com (только адрес email, угловые скобки не нужны)
Zabbix_info zabbix\@company.com (отображаемое имя и адрес email в угловых скобках)
∑Ω-monitoring zabbix\@company.com (символы UTF-8 в отображаемом имени)
Недопустимые примеры:
Zabbix HQ zabbix\@company.com (отображаемое имя присутствует, но адрес email не заключен в угловые скобки)
"Zabbix\@\<H(comment)Q\>" zabbix\@company.com (хотя это допустимо по RFC 5322, экранированные пары и комментарии не поддерживаются в email Zabbix)
SMTP helo Укажите корректное значение SMTP helo, обычно доменное имя.
Если поле пустое, будет отправлено доменное имя email (то есть часть после @ в поле Email). Если получить доменное имя невозможно, в журнал будет записано предупреждение уровня debug, а в качестве домена для команды HELO будет отправлено имя хоста сервера.
Это поле доступно, если в качестве поставщика email выбран Generic SMTP.
Connection security Выберите уровень безопасности соединения:
None - не использовать параметр CURLOPT_USE_SSL
STARTTLS - использовать параметр CURLOPT_USE_SSL со значением CURLUSESSL_ALL
SSL/TLS - использование CURLOPT_USE_SSL необязательно
SSL verify peer Установите флажок, чтобы проверить SSL-сертификат SMTP-сервера.
Значение директивы конфигурации сервера "SSLCALocation" должно быть передано в CURLOPT_CAPATH для проверки сертификата.
Это задает параметр cURL CURLOPT_SSL_VERIFYPEER.
SSL verify host Установите флажок, чтобы проверить, что поле Common Name или поле Subject Alternate Name сертификата SMTP-сервера совпадает.
Это задает параметр cURL CURLOPT_SSL_VERIFYHOST.
Authentication Выберите уровень аутентификации:
None - параметры cURL не задаются
Username and password - подразумевает "AUTH=*", оставляя выбор механизма аутентификации на усмотрение cURL
OAuth - аутентификация OAuth
Аутентификация OAuth не поддерживается для поставщика email Office365 relay.
Username Имя пользователя, используемое для аутентификации.
Это задает значение CURLOPT_USERNAME.
Поддерживаются макросы пользователя.
Password Пароль, используемый для аутентификации.
Это задает значение CURLOPT_PASSWORD.
Поддерживаются макросы пользователя.
Указанное здесь значение экспортируется без изменений при экспорте конфигурации типа медиа. Чтобы не раскрывать конфиденциальные учетные данные в экспортируемых файлах, используйте макрос пользователя (например {$EMAIL_SMTP_PASSWORD}) вместо буквального пароля — ссылка на макрос будет экспортирована, а секретное значение должно быть (пере)настроено на целевой системе.
OAuth tokens Нажмите Configure, чтобы в новом окне задать параметры для получения токенов OAuth.
Это поле доступно только если в поле Authentication выбран вариант "OAuth".
Message format Выберите формат сообщения:
HTML - отправлять как HTML
Plain text - отправлять как обычный текст

Чтобы включить аутентификацию SMTP, сервер Zabbix должен быть собран с опцией сборки --with-libcurl, для которой требуется libcurl (см. требования к серверу для сведений о версиях).

См. также общие параметры типа медиа для получения сведений о настройке сообщений по умолчанию и параметров обработки оповещений.

OAuth tokens

Для получения OAuth tokens требуются следующие параметры:

Parameter Description
Redirection endpoint Введите URL веб-интерфейса Zabbix, на который служба OAuth будет перенаправлять ответ после авторизации OAuth (в формате https://<zabbix-frontend-url>/zabbix.php?action=oauth.authorize).
Он автоматически задается для нового типа медиа email, если определен URL веб-интерфейса.
Client ID Введите уникальный идентификатор клиентского приложения, зарегистрированного на сервере авторизации OAuth.
Client secret Введите закрытый секрет клиентского приложения, зарегистрированного на сервере авторизации OAuth.
Authorization endpoint Введите URL сервера авторизации OAuth для запроса авторизации пользователя.
Authorization parameters Введите параметры для конечной точки авторизации.
Authorization code Введите код авторизации:
Automatic - код будет получен автоматически через страницу перенаправления
Manual - введите код вручную, если автоматическое получение не удалось
Token endpoint Введите URL сервера авторизации OAuth для обмена кода авторизации на access и refresh tokens.
Token parameters Введите параметры для access token.

Получение OAuth tokens имеет автоматизированные возможности для почтовых провайдеров Gmail, Gmail relay и Office365. В этом случае требуется указать только значения параметров Redirection endpoint, Client ID и Client secret. Zabbix автоматически заполнит остальные необходимые значения (см. значения URL OAuth по умолчанию для провайдеров).

Получение access и refresh token OAuth

После отправки параметров OAuth:

  1. Открывается всплывающее окно браузера, которое перенаправляет пользователя к Authorization endpoint.

  2. Пользователь авторизует Zabbix в службе OAuth.

  3. Служба OAuth перенаправляет пользователя на действие веб-интерфейса Zabbix oauth.authorize с кодом авторизации и значением scope.

  4. В ответ Zabbix отправит запрос к Token endpoint, чтобы обменять код авторизации на access и refresh token.

Тестирование

Чтобы проверить корректность работы способа оповещения по email с заданными настройками:

  1. Найдите соответствующий email в списке способов оповещений.
  2. Нажмите Тест (Test) в последнем столбце (откроется окно тестирования).
  3. Введите адрес получателя в поле Отправлять на (Send to), укажите текст сообщения и, если необходимо, тему.
  4. Нажмите Тест (Test) для отправки тестового сообщения.

В этом же окне появится сообщение об успешной или неуспешной отправке:

Оповещение пользователей

После того, как email способ оповещения настроен, перейдите в раздел Пользователи → Пользователи (Users → Users) и измените профиль пользователя, назначьте оповещение по email этому пользователю. Шаги по настройке оповещений пользователей, общие для всех способов оповещений, описаны на странице Способы оповещений.