1. Email
Обзор
Чтобы настроить email в качестве канала доставки сообщений, вам необходимо настроить email как способ оповещений и назначить соответствующие адреса пользователям.
Несколько оповещений по одному событию группируются вместе в одной ветке email сообщений.
Конфигурация
Чтобы настроить email как тип медиа:
- Перейдите в Оповещения > Типы медиа.
- Нажмите Создать тип медиа (или нажмите 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. |
| Адрес, указанный здесь, будет использоваться как адрес 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:
-
Открывается всплывающее окно браузера, которое перенаправляет пользователя к Authorization endpoint.
-
Пользователь авторизует Zabbix в службе OAuth.
-
Служба OAuth перенаправляет пользователя на действие веб-интерфейса Zabbix
oauth.authorizeс кодом авторизации и значением scope. -
В ответ Zabbix отправит запрос к Token endpoint, чтобы обменять код авторизации на access и refresh token.
Тестирование
Чтобы проверить корректность работы способа оповещения по email с заданными настройками:
- Найдите соответствующий email в списке способов оповещений.
- Нажмите Тест (Test) в последнем столбце (откроется окно тестирования).
- Введите адрес получателя в поле Отправлять на (Send to), укажите текст сообщения и, если необходимо, тему.
- Нажмите Тест (Test) для отправки тестового сообщения.
В этом же окне появится сообщение об успешной или неуспешной отправке:

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