1.6. 将身份管理 DNS 与 GSS-TSIG 身份验证集成
如果您使用身份管理来集中管理域中的主机,您可以将身份管理 DNS 服务集成到 Satellite 服务器中。该集成可让您继续使用现有的身份管理 DNS 服务,Satellite 在其生命周期内管理主机的 DNS 记录。
如果 Satellite 服务器或胶囊服务器是身份管理域的成员,请使用通用安全服务事务签名(GSS-TSIG)身份验证。与 TSIG 身份验证相比,此方法提高了安全性和低的关键管理工作。
1.6.1. 配置身份管理以用于 Satellite 服务器 复制链接链接已复制到粘贴板!
在集成现有的身份管理 DNS 服务器前,您必须准备身份管理环境。准备工作可让 Satellite 服务器使用通用安全服务事务签名(GSS-TSIG)身份验证来更新 DNS 条目。
先决条件
- 身份管理域已部署和功能。
- 身份管理配置了其集成的 DNS 服务。
- 身份管理服务器上的防火墙允许访问所需的端口。如需更多信息,请参阅 Red Hat Enterprise Linux 9 安装身份管理 中的 IdM 的端口要求。
流程
在作为身份管理域成员的主机上,为
admin
用户获取 Kerberos ticket:kinit admin
# kinit admin
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在身份管理服务器上创建一个新的 Kerberos 主体 Satellite 服务器用于身份验证:
ipa service-add capsule/satellite.example.com
# ipa service-add capsule/satellite.example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 可选:添加一个 forward DNS 区:
ipa dnszone-add example.com
# ipa dnszone-add example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 显示转发区的 BIND 更新策略:
ipa dnszone-show example.com --all | \ grep "BIND update policy"
# ipa dnszone-show example.com --all | \ grep "BIND update policy"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例:
BIND update policy: grant EXAMPLE.COM krb5-self * A; grant EXAMPLE.COM krb5-self * AAAA; grant EXAMPLE.COM krb5-self * SSHFP;
BIND update policy: grant EXAMPLE.COM krb5-self * A; grant EXAMPLE.COM krb5-self * AAAA; grant EXAMPLE.COM krb5-self * SSHFP;
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 请注意设置的值。
更新 forward 区设置:
ipa dnszone-mod example.com \ --dynamic-update=TRUE \ --allow-sync-ptr=TRUE \ --update-policy="<existing_policy> grant smartproxy\047foreman.example.com@EXAMPLE.COM wildcard * ANY;"
# ipa dnszone-mod example.com \ --dynamic-update=TRUE \ --allow-sync-ptr=TRUE \ --update-policy="<existing_policy> grant smartproxy\047foreman.example.com@EXAMPLE.COM wildcard * ANY;"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 这个命令修改区设置,如下所示:
- 启用动态区更新。
- 如果在转发区中更新 A 或 AAAA 记录,身份管理会更新反向 DNS 区域中对应的 PTR 记录。
- 上一步中创建的 Kerberos 主体有权修改任何类型的任何数据记录。请注意,您必须将此设置附加到现有值中。
可选:添加反向 DNS 区:
ipa dnszone-add 0.168.192.in-addr.arpa
# ipa dnszone-add 0.168.192.in-addr.arpa
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 显示反向区的 BIND 更新策略:
ipa dnszone-show 0.168.192.in-addr.arpa --all | \ grep "BIND update policy"
# ipa dnszone-show 0.168.192.in-addr.arpa --all | \ grep "BIND update policy"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例:
BIND update policy: grant EXAMPLE.COM krb5-subdomain 0.168.192.in-addr.arpa. PTR;
BIND update policy: grant EXAMPLE.COM krb5-subdomain 0.168.192.in-addr.arpa. PTR;
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 请注意设置的值。
更新反向区设置:
ipa dnszone-mod 0.168.192.in-addr.arpa \ --dynamic-update=TRUE \ --update-policy="<existing_policy> grant smartproxy\047foreman.example.com@EXAMPLE.COM wildcard * ANY;"
# ipa dnszone-mod 0.168.192.in-addr.arpa \ --dynamic-update=TRUE \ --update-policy="<existing_policy> grant smartproxy\047foreman.example.com@EXAMPLE.COM wildcard * ANY;"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 请注意,您必须将更新策略附加到现有值中。
1.6.2. 配置用于身份管理的 Capsules 复制链接链接已复制到粘贴板!
准备身份管理 DNS 服务器后,如 第 1.6.1 节 “配置身份管理以用于 Satellite 服务器” 所述,将 DNS 服务器集成到 Satellite 服务器或 Capsule 服务器中。
先决条件
- 您可以将主机的 DNS 搜索域设置为 Identity Management DNS 域。
-
您知道主机应该用来向身份管理 DNS 服务器进行身份验证的 Kerberos 主体,如
capsule/satellite.example.com
。
流程
如果您的 Satellite 服务器或 Capsule 服务器还没有是身份管理域的成员:
安装
ipa-client
软件包:satellite-maintain packages install ipa-client
# satellite-maintain packages install ipa-client
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 安装身份管理客户端:
ipa-client-install
# ipa-client-install
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 按照屏幕提示进行操作。
为
admin
用户获取 Kerberos ticket:kinit admin
# kinit admin
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 删除
/etc/foreman-proxy/dns.keytab
文件:rm --force /etc/foreman-proxy/dns.keytab
# rm --force /etc/foreman-proxy/dns.keytab
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为您的胶囊获取 Kerberos keytab 文件,并将其存储在
/etc/foreman-proxy/dns.keytab
文件中:ipa-getkeytab -p capsule/satellite.example.com@EXAMPLE.COM \ -k /etc/foreman-proxy/dns.keytab
# ipa-getkeytab -p capsule/satellite.example.com@EXAMPLE.COM \ -k /etc/foreman-proxy/dns.keytab
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要当将 keytab 添加到与服务中原始系统相同的主机名时,请将
-r
选项传给ipa-getkeytab
命令,以防止生成新凭证并在原始系统上呈现凭证无效。将
/etc/foreman-proxy/dns.keytab
的所有者和组设置为foreman-proxy
:chown foreman-proxy:foreman-proxy /etc/foreman-proxy/dns.keytab
# chown foreman-proxy:foreman-proxy /etc/foreman-proxy/dns.keytab
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证
/etc/foreman-proxy/dns.keytab
文件是否有效:使用该文件获取 Kerberos ticket:
kinit -kt /etc/foreman-proxy/dns.keytab \ capsule/satellite.example.com@EXAMPLE.COM
# kinit -kt /etc/foreman-proxy/dns.keytab \ capsule/satellite.example.com@EXAMPLE.COM
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 显示 Kerberos ticket:
klist
# klist
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例:
Ticket cache: KCM:0:50473 Default principal: smartproxy/satellite.example.com@EXAMPLE.COM Valid starting Expires Service principal 05/20/2025 12:12:35 05/21/2025 11:54:31 krbtgt/EXAMPLE.COM@EXAMPLE.COM
Ticket cache: KCM:0:50473 Default principal: smartproxy/satellite.example.com@EXAMPLE.COM Valid starting Expires Service principal 05/20/2025 12:12:35 05/21/2025 11:54:31 krbtgt/EXAMPLE.COM@EXAMPLE.COM
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
配置 Satellite 服务器或 Capsule 服务器以连接到身份管理 DNS 服务:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 对于每个受影响的胶囊,在卫星 Web UI 中更新该胶囊的配置。如需更多信息,请参阅 第 1.8 节 “将 DNS 服务与域和子网关联”。