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 server для обработки исходящих сообщений.
Это поле доступно, если в качестве поставщика email выбран Generic SMTP.
SMTP server port Укажите порт SMTP server для обработки исходящих сообщений.
Это поле доступно, если в качестве поставщика email выбран Generic SMTP.
Email Адрес, указанный здесь, будет использоваться как адрес From для отправляемых сообщений.
Поддерживается добавление отображаемого имени отправителя (например, "Zabbix_info" в Zabbix_info <[email protected]> на скриншоте выше) вместе с фактическим адресом email.
В Zabbix для email существуют некоторые ограничения на отображаемые имена по сравнению с тем, что разрешено RFC 5322, как показано в примерах:
Допустимые примеры:
[email protected] (только адрес email, угловые скобки не нужны)
Zabbix_info <[email protected]> (отображаемое имя и адрес email в угловых скобках)
∑Ω-monitoring <[email protected]> (символы UTF-8 в отображаемом имени)
Недопустимые примеры:
Zabbix HQ [email protected] (отображаемое имя присутствует, но адрес email не заключен в угловые скобки)
"Zabbix@<H(comment)Q>" <[email protected]> (хотя это допустимо по RFC 5322, в email Zabbix не поддерживаются quoted pairs и комментарии)
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 server.
Значение директивы конфигурации сервера "SSLCALocation" должно быть передано в CURLOPT_CAPATH для проверки сертификата.
Это задает параметр cURL CURLOPT_SSL_VERIFYPEER.
SSL verify host Установите флажок, чтобы проверить, что поле Common Name или поле Subject Alternate Name сертификата SMTP server совпадает.
Это задает параметр 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 tokens.
Это поле доступно только если в поле Authentication выбрано "OAuth".
Message format Выберите формат сообщения:
HTML - отправлять как HTML
Plain text - отправлять как обычный текст

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

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

OAuth tokens

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

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

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 для обмена кода авторизации на токены доступа и обновления.
Token parameters Введите параметры для токена доступа.

Получение OAuth-токенов имеет автоматизированные функции для почтовых провайдеров 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.

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

Чтобы проверить, что настроенный тип медиа для электронной почты работает корректно:

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

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

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

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