4 MFA

概述

多因素认证(MFA)可用于登录 Zabbix,提供比仅使用用户名和密码更高的安全层级。

使用 MFA,用户必须在 Zabbix 中存在,登录时必须提供 Zabbix 凭据,并且还必须通过其他手段证明其身份,通常是用户手机上认证器应用生成的代码。

多种 MFA 方法可供选择,允许用户选择最符合其安全需求和偏好的选项。 这些方法包括基于时间的一次性密码(TOTP)和 Duo Universal Prompt。

配置

配置参数:

参数 描述
启用多因素认证 勾选此框以启用多因素认证。
方法 点击 添加 来配置一个多因素认证方法(参见下面的 方法配置)。

方法配置

方法配置参数:

参数 描述
Type 选择MFA方法的类型:
TOTP - 使用身份验证应用程序生成基于时间的一次性密码;
Duo Universal Prompt - 使用Duo身份验证服务提供多因素身份验证。
Name 输入在身份验证应用程序中显示为所有MFA用户帐户名称的名称(例如,“Zabbix”)。
Hash function 选择散列函数(SHA-1, SHA-256, 或 SHA-512)以生成TOTP代码。
如果MFA方法类型设置为“TOTP”,此参数可用。
请注意,选择SHA-256或SHA-512可能会显著限制兼容性,因为许多应用程序目前不支持这些函数。
Code length 选择验证码长度(6或8)。
如果MFA方法类型设置为“TOTP”,此参数可用。
API hostname 输入由Duo身份验证服务提供的API主机名。
如果MFA方法类型设置为“Duo Universal Prompt”,此参数可用。
Client ID 输入由Duo身份验证服务提供的客户端ID。
如果MFA方法类型设置为“Duo Universal Prompt”,此参数可用。
Client secret 输入由Duo身份验证服务提供的客户端密钥。
如果MFA方法类型设置为“Duo Universal Prompt”,此参数可用。

配置示例

本节提供了使用基于时间的一次性密码(TOTP)和Duo Universal Prompt配置MFA的示例。

TOTP

对于TOTP,用户必须使用身份验证器应用(例如,Google Authenticator应用)验证其身份。

  1. 导航至Zabbix中的MFA设置,在用户认证下启用多因素认证。

  2. 添加一个新的MFA method,配置如下:

  • 类型:TOTP
  • 名称:Zabbix TOTP
  • 哈希函数:SHA-1
  • 代码长度:6
  1. 点击添加按钮,然后点击更新按钮。

  2. 导航至用户User groups并创建一个新的用户组,配置如下:

  • 组名称:TOTP组
  • 用户:管理员
  • 多因素认证:默认(或“Zabbix TOTP”,如果未设置为默认)
  1. 退出Zabbix并使用您的凭据重新登录。 成功登录后,您将被提示注册MFA,显示一个二维码和一个密钥。

  1. 扫描二维码或在Google Authenticator应用中输入密钥。 应用将生成一个验证码,您应输入该验证码以完成登录过程。

  2. 对于后续登录,从Google Authenticator应用中获取验证码并在登录时输入。 #### TOTP

对于时间一次性密码(TOTP),用户必须使用身份验证器应用(例如,Google Authenticator应用)验证其身份。

  1. 请导航至Zabbix的MFA设置,在用户认证下启用多因素认证。

  2. 请添加一个新的MFA method,配置如下:

  • 类型:TOTP
  • 名称:Zabbix TOTP
  • 哈希函数:SHA-1
  • 代码长度:6
  1. 请点击添加按钮,然后点击更新按钮。

  2. 请导航至用户User groups并创建一个新的用户组,配置如下:

  • 组名称:TOTP组
  • 用户:管理员
  • 多因素认证:默认(或“Zabbix TOTP”,如果未设置为默认)
  1. 请退出Zabbix并使用您的凭据重新登录。 成功登录后,您将被提示注册MFA,显示一个二维码和一个密钥。

  1. 请扫描二维码或在Google Authenticator应用中输入密钥。 应用将生成一个验证码,您应输入该验证码以完成登录过程。

  2. 对于后续登录,请从Google Authenticator应用中获取验证码并在登录时输入。

Duo通用提示

对于Duo通用提示,用户必须使用Duo Mobile身份验证应用程序验证其身份。

Duo通用提示MFA方法需要安装php-curl扩展,通过HTTPS访问Zabbix,并允许向外连接到Duo服务器。 此外,如果您有enabled Content Security Policy (CSP) on the web server,请确保在您的虚拟主机配置文件中CSP指令添加“duo.com”。

  1. 请在Duo Signup注册免费的Duo管理员账户。

  2. 打开Duo管理员面板,导航至应用程序Protect an Application,搜索Web SDK应用程序,并点击保护

  3. 记录下配置Zabbix MFA方法所需的凭据(客户端ID,客户端密钥,API主机名)。

  4. 请在Zabbix的用户认证下前往MFA设置,并启用多因素认证。

  5. 添加一个新的MFA method,配置如下:

  • 类型:Duo通用提示
  • 名称:Zabbix Duo
  • API主机名:(使用Duo的API主机名)
  • 客户端ID:(使用Duo的客户端ID)
  • 客户端密钥:(使用Duo的客户端密钥)
  1. 点击添加按钮,然后点击更新按钮。

  2. 请前往用户User groups并创建一个新的用户组,配置如下configuration

  • 组名:Duo组
  • 用户:管理员
  • 多因素认证:默认(或“Zabbix Duo”,如果未设置为默认)
  1. 请退出Zabbix,然后使用您的凭证重新登录。 成功登录后,您将被提示注册MFA并重定向至Duo。 完成Duo设置,并使用您的手机Duo应用程序验证您的用户以登录。

  2. 对于后续登录,请使用Duo应用程序提供的适当MFA方法(如检索验证码,响应推送通知,或使用硬件密钥),并在登录时输入所需信息。