多因素认证(MFA)可用于登录 Zabbix,提供比仅使用用户名和密码更高的安全层级。
使用 MFA,用户必须在 Zabbix 中存在,登录时必须提供 Zabbix 凭据,并且还必须通过其他手段证明其身份,通常是用户手机上认证器应用生成的代码。
多种 MFA 方法可供选择,允许用户选择最符合其安全需求和偏好的选项。 这些方法包括基于时间的一次性密码(TOTP)和 Duo Universal Prompt。
参数 | 描述 |
---|---|
启用多因素认证 | 勾选此框以启用多因素认证。 |
方法 | 点击 添加 来配置一个多因素认证方法(参见下面的 方法配置)。 |
方法配置参数:
参数 | 描述 |
---|---|
类型 | 选择多因素认证方法的类型: TOTP - 使用认证器应用生成基于时间的一次性密码; Duo Universal Prompt - 使用Duo认证服务提供多因素认证。 |
名称 | 输入一个名称,该名称将显示为认证器应用中所有多因素认证用户的帐户名称(例如,“Zabbix”)。 |
哈希函数 | 选择用于生成TOTP代码的哈希函数(SHA-1、SHA-256或SHA-512)。 此参数仅在多因素认证方法类型设置为“TOTP”时可用。 |
代码长度 | 选择验证码长度(6或8)。 此参数仅在多因素认证方法类型设置为“TOTP”时可用。 |
API主机名 | 输入Duo认证服务提供的API主机名。 此参数仅在多因素认证方法类型设置为“Duo Universal Prompt”时可用。 |
客户端ID | 输入Duo认证服务提供的客户端ID。 此参数仅在多因素认证方法类型设置为“Duo Universal Prompt”时可用。 |
客户端密钥 | 输入Duo认证服务提供的客户端密钥。 此参数仅在多因素认证方法类型设置为“Duo Universal Prompt”时可用。 |
本节提供了使用基于时间的一次性密码(TOTP)和Duo Universal Prompt配置MFA的示例。
对于TOTP,用户必须使用身份验证应用程序(例如Google Authenticator应用程序)验证其身份。
1. 进入Zabbix中的MFA设置,路径为 用户 → 身份验证,启用多因素身份验证。
2. 添加一个新的MFA 方法,具体配置如下:
3. 转到 用户 → 用户组 并创建一个新的用户组,具体配置如下:
4. 退出Zabbix,然后使用您的凭据重新登录。 成功登录后,系统将提示您进行MFA注册,并显示一个QR码和一个密钥。
5. 扫描QR码或将秘密密钥输入到Google Authenticator应用程序中。 应用程序将生成一个验证代码,您需要在登录过程中输入该代码以完成登录。
6. 对于后续登录,请从Google Authenticator应用程序中获取验证代码,并在登录时输入。
对于Duo Universal Prompt,用户必须使用Duo Mobile身份验证应用程序验证其身份。
Duo Universal Prompt MFA方法要求安装php-curl扩展,通过HTTPS访问Zabbix,并允许向Duo服务器进行出站连接。 此外,如果在Web服务器上启用了内容安全策略(CSP),请确保在虚拟主机配置文件的CSP指令中添加"duo.com"。
1. 在Duo Signup注册一个免费的Duo管理员账户。
2. 打开Duo管理面板,转到 应用 → 保护一个应用,搜索 Web SDK 应用程序,并点击 保护。
3. 记下配置MFA方法所需的凭据(Client ID、Client secret、API hostname)。
4. 进入Zabbix中的MFA设置,路径为 用户 → 身份验证,启用多因素身份验证。
5. 添加一个新的MFA 方法,具体配置如下:
6. 转到 用户 → 用户组 并创建一个新的用户组,具体配置如下:
7. 退出Zabbix,然后使用您的凭据重新登录。 成功登录后,系统将提示您进行MFA注册并重定向到Duo。 完成Duo设置并使用手机上的Duo应用程序验证用户以登录。
8. 对于后续登录,请使用Duo应用程序提供的适当MFA方法(例如获取验证代码、响应推送通知或使用硬件密钥),并在登录时输入所需的信息。