添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
想出家的墨镜  ·  11.2. Configuring the ...·  1 周前    · 
想出家的柠檬  ·  man L·  1 月前    · 
豪爽的生菜  ·  Environment variables·  1 月前    · 
帅气的枇杷  ·  认证和授权 | Red Hat ...·  1 月前    · 
求醉的牛排  ·  25.3.5. Log Rotation ...·  1 月前    · 
沉稳的萝卜  ·  SPI_BaudRatePrescaler_ ...·  2 周前    · 
坚强的玉米  ·  模型云_百度百科·  5 月前    · 
犯傻的韭菜  ·  Dash · Dash·  11 月前    · 

3 身份验证

Administration → Authentication(管理 → 身份验证) 验证中,可以指定对Zabbix的全局用户身份验证方法。可用的方法有内部,HTTP,LDAP和SAML身份验证。

请注意,可以在用户组级别上微调身份验证方法。

默认情况下,全局使用内部Zabbix身份验证。改变:

  • 到HTTP-导航到“ HTTP设置”标签并输入身份验证详细信息;
  • 到LDAP-选择LDAP作为默认身份验证,然后在LDAP设置标签中输入身份验证详细信息;
  • 到SAML-导航到“ SAML设置”标签,然后输入身份验证详细信息。
  • 完成后,单击表单底部的“更新”。

    HTTP认证

    基于HTTP或Web服务器的身份验证(例如:基本身份验证,NTLM / Kerberos)可用于检查用户名和密码。请注意,用户也必须存在于Zabbix中,但是不会使用其Zabbix密码。

    当心!在打开Web服务器身份验证之前,请确保已对其进行配置并正常工作。

    配置参数:

    Default login form
    (默认登录表单)
    **Zabbi 指定是否将未经身份验证的用户定向到:
    login form -标准Zabbix登录页面。
    HTTP login form**-HTTP登录页面。
    建议 index_http.php 仅对页面启用基于Web服务器的身份验证。如果将默认登录表单设置为“ HTTP登录页面”,并且Web服务器身份验证模块将在 $_SERVER 变量中设置有效的用户登录名,则该用户将自动登录。
    支持 $_SERVER PHP_AUTH_USER REMOTE_USER AUTH_USER Case sensitive login
    (区分大小写的登录)
    例如,禁用区分大小 取消选中该复选框可禁用用户名区分大小写的登录(默认情况下启用)。
    的登录并使用“ ADMIN”用户登录,即使Zabbix用户为“ Admin”。
    请注意,如果区分大小写的登录禁用,则Zabbix数据库中存在多个具有相似别名(例如Admin,admin)的用户时,将拒绝登录。

    对于无法使用HTTP凭据(默认设置为HTTP登录格式)登录的内部用户,导致401错误,您可能需要 ErrorDocument 401 /index.php?form=default 在基本身份验证指令中添加一行,它将重定向到常规Zabbix登录格式。

    LDAP验证

    外部LDAP身份验证可用于检查用户名和密码。请注意,用户也必须存在于Zabbix中,但是不会使用其Zabbix密码。

    全局设置LDAP身份验证后,Zabbix仍可以对某些用户组进行身份验证。这些组必须将 前端访问权限 设置为“内部”。反之亦然,如果全局使用内部身份验证,则可以指定LDAP身份验证详细信息,并将其用于 前端访问 设置为LDAP的特定用户组。

    Zabbix LDAP身份验证至少与Microsoft Active Directory和OpenLDAP一起使用。

    配置参数:

    LDAP host LDAP服务器名称。例如:ldap: ldap.zabbix.com
    对于安全的LDAP服务器,请使用ldaps协议。
    ldaps:
    ldap.zabbix.com
    在OpenLDAP 2.xx和更高版本中,可以使用格式为ldap:// hostname:port或ldaps:// hostname:port的完整LDAP URI。 LDAP服务器的端口。默认值为389。
    对于安全LDAP连接,端口号通常为636。
    使用完整LDAP URI时不使用。 Base DN 搜索帐户的基本路径:
    ou =用户,ou =系统(对于OpenLDAP),
    DC =公司,DC = com(对于Microsoft Active Directory) Search attribute 用于搜索的LDAP帐户属性:
    uid(对于OpenLDAP),
    sAMAccountName(对于Microsoft Active Directory) Bind DN 用于在LDAP服务器上进行绑定和搜索的LDAP帐户,例如:
    uid = ldap_search,ou = system(对于OpenLDAP),
    CN = ldap_search,OU = user_group,DC = company,DC = com(对于Microsoft Active Directory)
    匿名绑定也是支持的。 Case-sensitive login 取消选中该复选框可禁用用户名区分大小写的登录(默认情况下启用)。
    例如,禁用区分大小写的登录并使用“ ADMIN”用户登录,即使Zabbix用户为“ Admin”。
    请注意,如果区分大小写的登录禁用,则Zabbix数据库中存在多个具有相似别名(例如Admin,admin)的用户时,将拒绝登录。 Bind password 用于绑定和搜索LDAP服务器的帐户的LDAP密码。 Test authentication 测试部分的标题 Login 测试用户的名称(当前已在Zabbix前端中登录)。该用户名必须存在于LDAP服务器中。
    如果Zabbix无法认证测试用户,则不会激活LDAP认证。 User password 测试用户的LDAP密码。

    <note Warning> 万一证书出现问题,为了使LDAP连接(ldaps)正常工作,您可能需要TLS_REQCERT allow在/etc/openldap/ldap.conf配置文件中添加一行。这可能会降低与LDAP目录连接的安全性。 :::

    建议创建一个单独的LDAP帐户(Bind DN),以使用LDAP中的最小特权在LDAP服务器上执行绑定和搜索,而不要使用真实的用户帐户(用于登录Zabbix前端)。
    这样的方法提供了更高的安全性,并且在用户更改LDAP服务器中自己的密码时不需要更改“绑定”密码。
    在上表中是ldap_search帐户名。

    SAML身份验证

    SAML 2.0身份验证可用于登录Zabbix。请注意,用户必须存在于Zabbix中,但是不会使用其Zabbix密码。如果身份验证成功,则Zabbix将匹配本地用户名(别名)与SAML返回的用户名属性。

    如果启用了SAML身份验证,则用户将能够在本地登录或通过SAML单一登录之间进行选择。

    设置身份提供者

    为了使用Zabbix,需要以以下方式配置SAML身份提供程序( onelogin.com auth0.com okta.com 等)

  • 断言使用者URL应设置为 <path_to_zabbix_ui>/index_sso.php?acs
  • 单一登出网址应设置为 <path_to_zabbix_ui>/index_sso.php?sls
  • <path_to_zabbix_ui> 示例:

    设置ZABBIX

    如果要在前端使用SAML身份验证,则需要安装php-openssl。

    要使用SAML身份验证,应按以下方式配置Zabbix:

    1.除非 zabbix.conf.php 中提供了自定义路径,否则私钥和证书应存储在ui/conf/certs/中。

    默认情况下,Zabbix将在以下位置查找:

  • ui/conf/certs/sp.key-SP 私钥文件
  • ui/conf/certs/sp.crt-SP 证书文件
  • ui/conf/certs/idp.crt-IDP 证书文件
  • 2.所有最重要的设置都可以在Zabbix前端中进行配置。但是,可以在 配置文件 中指定其他设置。

    在Zabbix前端中可用的配置参数:

    Username attribute 登录到Zabbix时用作用户名的SAML属性。
    支持的值列表由身份提供商确定。

    示例:
    Examples:
    uid
    userprincipalname
    samaccountname
    username
    userusername
    urn:oid:0.9.2342.19200300.100.1.1
    urn:oid:1.3.6.1.4.1.5923.1.1.1.13
    urn:oid:0.9.2342.19200300.100.1.44 SP entity ID SAML服务提供者的唯一标识符。 SP name ID format 定义应使用的名称标识符格式。

    示例:
    urn:oasis:names:tc:SAML:2.0:nameid-format:persistent
    urn:oasis:names:tc:SAML:2.0:nameid-format:transient
    urn:oasis:names:tc:SAML:2.0:nameid-format:kerberos
    urn:oasis:names:tc:SAML:2.0:nameid-format:entity
    标记复选框以选择应为其启用SAML签名的实体:
    Messages(消息)
    Assertions(断言)
    AuthN requests(AuthN请求)
    Logout requests(注销请求)
    Logout responses(注销响应) Encrypt 标记复选框以选择应为其启用SAML加密的实体:
    Assertions(断言)
    Name ID(名称ID) Case-sensitive login 选中该复选框以启用区分大小写的登录名(默认情况下禁用)。
    例如,禁用区分大小写的登录并使用“ ADMIN”用户登录,即使Zabbix用户为“ Admin”。
    请注意,如果区分大小写的登录禁用,则Zabbix数据库中存在多个具有相似别名(例如Admin,admin)的用户时,将拒绝登录。

    可以在Zabbix前端配置文件( zabbix.conf.php )中配置其他SAML参数:

  • $ SSO ['SP_KEY'] ='<SP私钥文件的路径>';
  • $ SSO ['SP_CERT'] ='<SP证书文件的路径>';
  • $ SSO ['IDP_CERT'] ='<IDP证书文件的路径>';
  • $ SSO ['SETTINGS']
  • Zabbix使用 OneLogin的SAML PHP工具包 库(版本3.4.1)。$ SSO ['SETTINGS']部分的结构应类似于库使用的结构。有关配置选项的说明,请参见官方库 文档

    只能将以下选项设置为$ SSO ['SETTINGS']的一部分:

  • strict(严格的)
  • compress(压缩)
  • contactPerson(联系人)
  • organization(组织)
  • sp(仅此列表中指定的选项)
  • 安全性(仅此列表中指定的选项)
  • signMetadata(符号元数据)
  • wantNameId(想要的名称标识)
  • requestAuthnContext(请求认证上下文)
  • requestAuthnContextComparison(请求认证上下文比较)
  • wantXMLValidation(想要的XML验证)
  • RelaxDestinationValidation(目的验证)
  • destinationStrictlyMatches(严格匹配)
  • rejectUnsolicitedResponsesWithInResponseTo(拒绝未经请求的响应)
  • signatureAlgorithm(签名算法)
  • digestAlgorithm(摘要算法)
  • lowercaseUrlencoding
  • 所有其他选项将从数据库中获取,并且不能被覆盖。在调试选项将被忽略。

    配置示例: