4 MFA
Обзор
Многофакторная аутентификация (MFA) может использоваться для входа в Zabbix, обеспечивая дополнительный уровень безопасности помимо одного только имени пользователя и пароля.
При использовании MFA пользователь должен существовать в Zabbix, должен указывать учетные данные Zabbix при входе в систему, а также должен подтвердить свою личность другим способом, обычно с помощью кода, сгенерированного приложением-аутентификатором на телефоне пользователя.
Доступно несколько методов MFA, что позволяет пользователям выбрать вариант, который лучше всего соответствует их требованиям к безопасности и предпочтениям. Эти методы: одноразовый пароль на основе времени (TOTP) и Duo Universal Prompt.
Конфигурация

Параметры конфигурации:
| Parameter | Description |
|---|---|
| Enable multi-factor authentication | Установите флажок, чтобы включить многофакторную аутентификацию. |
| Methods | Нажмите Add, чтобы настроить метод MFA (см. конфигурация метода ниже). |
Настройка метода

Параметры настройки метода:
| Параметр | Описание |
|---|---|
| Тип | Выберите тип метода MFA: TOTP - используйте приложение-аутентификатор для генерации одноразовых паролей на основе времени; Duo Universal Prompt - используйте службу аутентификации Duo для обеспечения многофакторной аутентификации. |
| Имя | Введите имя, которое будет отображаться как имя учетной записи для всех пользователей MFA в приложениях-аутентификаторах (например, "Zabbix"). |
| Функция хеширования | Выберите функцию хеширования (SHA-1, SHA-256 или SHA-512) для генерации кодов TOTP. Этот параметр доступен, если тип метода MFA установлен в "TOTP". Обратите внимание, что выбор SHA-256 или SHA-512 может значительно ограничить совместимость, поскольку многие приложения в настоящее время не поддерживают эти функции. |
| Длина кода | Выберите длину кода подтверждения (6 или 8). Этот параметр доступен, если тип метода MFA установлен в "TOTP". |
| Имя хоста API | Введите имя хоста API, предоставленное службой аутентификации Duo. Этот параметр доступен, если тип метода MFA установлен в "Duo Universal Prompt". |
| ID клиента | Введите ID клиента, предоставленный службой аутентификации Duo. Этот параметр доступен, если тип метода MFA установлен в "Duo Universal Prompt". |
| Секрет клиента | Введите секрет клиента, предоставленный службой аутентификации Duo. Этот параметр доступен, если тип метода MFA установлен в "Duo Universal Prompt". |
Примеры конфигурации
В этом разделе приведены примеры настройки MFA с использованием Time-Based One-Time Password (TOTP) и Duo Universal Prompt.
TOTP
Для TOTP пользователи должны подтвердить свою личность с помощью приложения-аутентификатора (например, приложения Google Authenticator).
1. Перейдите в настройки MFA в Zabbix в разделе Users → Authentication и включите многофакторную аутентификацию.
2. Добавьте новый MFA метод со следующей конфигурацией:
- Type: TOTP
- Name: Zabbix TOTP
- Hash function: SHA-1
- Code length: 6
3. Нажмите кнопку Add, а затем кнопку Update.
4. Перейдите в Users → User groups и создайте новую группу пользователей со следующей конфигурацией:
- Group name: TOTP group
- Users: Admin
- Multi-factor authentication: Default (или "Zabbix TOTP", если она не задана как значение по умолчанию)
5. Выйдите из Zabbix и войдите снова, используя свои учетные данные. После успешного входа вам будет предложено зарегистрироваться в MFA; при этом будет отображаться QR-код и секретный ключ.

6. Отсканируйте QR-код или введите секретный ключ в приложение Google Authenticator. Приложение сгенерирует код подтверждения, который нужно ввести, чтобы завершить процесс входа.
7. При последующих входах получите код подтверждения в приложении Google Authenticator и введите его при входе.
Duo Universal Prompt
Для Duo Universal Prompt пользователи должны подтвердить свою личность с помощью приложения-аутентификатора Duo Mobile.
Метод MFA Duo Universal Prompt требует установки расширения php-curl, доступа к Zabbix по HTTPS и разрешения на исходящие подключения к серверам Duo. Кроме того, если вы включили Content Security Policy (CSP) на веб-сервере, убедитесь, что добавили "duo.com" в директиву CSP в файле конфигурации вашего виртуального хоста.
1. Зарегистрируйте бесплатную учетную запись администратора Duo на Duo Signup.
2. Откройте панель Duo Admin Panel, перейдите в Applications → Protect an Application, найдите приложение Web SDK и нажмите Protect.
3. Запишите учетные данные (Client ID, Client secret, API hostname), необходимые для настройки метода MFA в Zabbix.
4. Перейдите в настройки MFA в Zabbix в разделе Users → Authentication и включите многофакторную аутентификацию.
5. Добавьте новый MFA метод со следующей конфигурацией:
- Type: Duo Universal Prompt
- Name: Zabbix Duo
- API hostname: (use API hostname from Duo)
- Client ID: (use Client ID from Duo)
- Client secret: (use Client secret from Duo)
6. Нажмите кнопку Add, а затем кнопку Update.
7. Перейдите в Users → User groups и создайте новую группу пользователей со следующей конфигурацией:
- Group name: Duo group
- Users: Admin
- Multi-factor authentication: Default (or "Zabbix Duo" if it is not set as default)
8. Выйдите из Zabbix и войдите снова, используя свои учетные данные. После успешного входа вам будет предложено зарегистрироваться в MFA, после чего вы будете перенаправлены в Duo. Завершите настройку Duo и подтвердите пользователя с помощью приложения Duo на телефоне, чтобы войти в систему.
9. Для последующих входов используйте соответствующий метод MFA, предоставляемый приложением Duo (например, получение кода подтверждения, ответ на push-уведомления или использование аппаратных ключей), и введите требуемую информацию во время входа.