34.7. 在活动目录 DNS 域中配置 IdM 客户端
如果您在由活动目录控制的 DNS 域中有客户端系统,并且您需要这些客户端能够加入 IdM 服务器以从其 RHEL 功能中受益,则可以配置用户,来使用活动目录 DNS 域的主机名访问客户端。
这不是推荐的配置,存在一些限制。红帽建议始终将 IdM 客户端部署在与活动目录拥有的区域不同的 DNS 区域中 ,并通过其 IdM 主机名访问 IdM 客户端。
您的 IdM 客户端配置取决于您是否需要使用 Kerberos 单点登录。
34.7.1. 配置没有 Kerberos 单点登录的 IdM 客户端
如果 IdM 客户端位于活动目录 DNS 域中,密码身份验证是唯一可供用户访问 IdM 客户端上资源的身份验证方法。按照以下流程配置没有 Kerberos 单点登录的客户端。
流程
使用
--domain=IPA_DNS_Domain
选项安装 IdM 客户端,来确保系统安全服务守护进程(SSSD)可以与 IdM 服务器进行通信:[root@idm-client.ad.example.com ~]# ipa-client-install --domain=idm.example.com
这个选项禁用了活动目录 DNS 域的 SRV 记录自动检测。
打开
/etc/krb5.conf
配置文件,并在[domain_realm]
部分中找到活动目录域的现有映射。.ad.example.com = IDM.EXAMPLE.COM ad.example.com = IDM.EXAMPLE.COM
将这两个行替换为将活动目录 DNS 区域中 Linux 客户端的完全限定域名(FQDN)映射到 IdM 域的条目:
idm-client.ad.example.com = IDM.EXAMPLE.COM
通过替换默认映射,您可以防止 Kerberos 将其对活动目录域的请求发送到 IdM Kerberos 分发中心(KDC)。相反,Kerberos 使用通过 SRV DNS 记录的自动发现来定位 KDC。
34.7.2. 请求没有单点登录的 SSL 证书
基于 SSL 的服务需要带有 dNSName
扩展记录的证书,该扩展记录涵盖所有系统主机名,因为原始(A/AAAA)和 CNAME 记录都必须在证书里。目前,IdM 只对 IdM 数据库中的主机对象颁发证书。
在描述的没有单点登录的设置中,IdM 已在数据库中有 一个 FQDN 主机对象,并且 certmonger
可以使用此名称来请求证书。
先决条件
- 按照 配置没有 Kerberos 单点登录的 IdM 客户端 中的流程来安装和配置 IdM 客户端。
流程
使用
certmonger
来请求使用 FQDN 的证书:[root@idm-client.ad.example.com ~]# ipa-getcert request -r \ -f /etc/httpd/alias/server.crt \ -k /etc/httpd/alias/server.key \ -N CN=ipa-client.ad.example.com \ -D ipa-client.ad.example.com \ -K host/idm-client.ad.example.com@IDM.EXAMPLE.COM \ -U id-kp-serverAuth
certmonger
服务使用存储在 /etc/krb5.keytab
文件中的默认主机密钥来验证 IdM 证书颁发机构(CA)。
34.7.3. 配置带有 Kerberos 单点登录的 IdM 客户端
如果您需要 Kerberos 单点登录来访问 IdM 客户端上的资源,则该客户端必须在 IdM DNS 域中,如 idm-client.idm.example.com
。您必须在指向 IdM 客户端的 A/AAAA 记录的活动目录 DNS 域中创建一个 CNAME 记录 idm-client.ad.example.com
。
对于基于 Kerberos 的应用服务器,MIT Kerberos 支持一种方法,来允许接受应用程序的 keytab 中任何基于主机的主体。
流程
在 IdM 客户端上,通过在
/etc/krb5.conf
配置文件的[libdefaults]
部分中设置以下选项,来禁用针对 Kerberos 服务器的 Kerberos 主体的严格检查:ignore_acceptor_hostname = true
34.7.4. 请求带有单点登录的 SSL 证书
基于 SSL 的服务需要带有 dNSName
扩展记录的证书,该扩展记录涵盖所有系统主机名,因为原始(A/AAAA)和 CNAME 记录都必须在证书里。目前,IdM 只对 IdM 数据库中的主机对象颁发证书。
按照以下流程,在 IdM 中为 ipa-client.example.com
创建主机对象,并确保实际的 IdM 机器的主机对象可以管理此主机。
先决条件
- 您已禁用了针对 Kerberos 主机的 Kerberos 主体的目严格检查,如 配置带有 Kerberos 单点登录的 IdM 客户端 中所述。
流程
在 IdM 服务器上创建一个新的主机对象:
[root@idm-server.idm.example.com ~]# ipa host-add idm-client.ad.example.com --force
使用
--force
选项,因为主机名是 CNAME,而不是 A/AAAA 记录。在 IdM 服务器上,允许 IdM DNS 主机名来管理 IdM 数据库中的活动目录主机条目:
[root@idm-server.idm.example.com ~]# ipa host-add-managedby idm-client.ad.example.com \ --hosts=idm-client.idm.example.com
现在,您可以为您的 IdM 客户端请求一个 SSL 证书,并带有在活动目录 DNS 域中其主机名称的
dNSName
扩展记录:[root@idm-client.idm.example.com ~]# ipa-getcert request -r \ -f /etc/httpd/alias/server.crt \ -k /etc/httpd/alias/server.key \ -N CN=`hostname --fqdn` \ -D `hostname --fqdn` \ -D idm-client.ad.example.com \ -K host/idm-client.idm.example.com@IDM.EXAMPLE.COM \ -U id-kp-serverAuth