5.4. 配置 DNS 服务发现

DNS 服务发现使应用程序能够检查给定域中特定类型的特定服务的 SRV 记录,然后返回与所需类型匹配的服务器。如果在 /etc/sssd/sssd.conf 文件中未明确定义身份或身份验证服务器,SSSD 可以使用 DNS 服务发现动态发现服务器。

例如,如果 sssd.conf 包含 id_provider = ldap 设置,但是 ldap_uri 选项没有指定任何主机名或 IP 地址,SSSD 会使用 DNS 服务发现来动态发现服务器。

注意

SSSD 无法动态发现备份服务器,只有主服务器。

先决条件

  • root 访问权限

步骤

  1. 打开 /etc/sssd/sssd.conf 文件:
  2. 将主服务器值设置为 _srv_

    对于 LDAP 供应商,使用 ldap_uri 选项设置主服务器:

    [domain/your-domain-name]
    id_provider = ldap
    ldap_uri = _srv_
  3. 设置服务类型,在密码更改供应商中启用服务发现:

    [domain/your-domain-name]
    id_provider = ldap
    ldap_uri = _srv_
    
    chpass_provider = ldap
    ldap_chpass_dns_service_name = ldap
  4. 可选:默认情况下,服务发现使用系统主机名的域部分作为域名。要使用不同的 DNS 域,请使用 dns_discovery_domain 选项指定域名。
  5. 可选:默认情况下,针对 LDAP 服务类型的服务发现扫描。要使用不同的服务类型,请使用 ldap_dns_service_name 选项指定类型。
  6. 可选:默认情况下,SSSD 尝试查找 IPv4 地址。如果尝试失败,SSSD 会尝试查找 IPv6 地址。要自定义此行为,请使用 lookup_family_order 选项。
  7. 对于您要使用服务发现的每个服务,在 DNS 服务器中添加 DNS 记录:

    _service._protocol._domain TTL priority weight port host_name

其他资源