4.4. 使用外部 IdM DNS 配置 Capsule 服务器
当 Satellite 服务器为主机添加 DNS 记录时,首先确定哪个 Capsule 为该域提供 DNS。然后,它将与配置为为您的部署提供 DNS 服务的 Capsule 通信并添加记录。此过程中不涉及该主机。因此,您必须在 Satellite 或 Capsule 上安装和配置 IdM 客户端,该客户端当前配置为为您要使用 IdM 服务器管理的域提供 DNS 服务。
Capsule 服务器可以配置为使用红帽身份管理(IdM)服务器来提供 DNS 服务。有关红帽身份管理的更多信息,请参阅 Linux 域身份、身份验证和策略指南。
要将 Capsule 服务器配置为使用红帽身份管理(IdM)服务器来提供 DNS 服务,请使用以下流程之一:
要恢复到内部 DNS 服务,请使用以下流程:
您不需要使用 Capsule 服务器来管理 DNS。当您使用 Satellite 的域注册功能时,置备的主机会自动注册到 IdM,ipa-client-install
脚本会为客户端创建 DNS 记录。使用外部 IdM DNS 和域注册配置 Capsule 服务器是互斥的。有关配置域注册的更多信息,请参阅 管理 Red Hat Satellite 指南中的置备主机 的 外部身份验证。
4.4.1. 使用 GSS-TSIG 身份验证配置动态 DNS 更新 复制链接链接已复制到粘贴板!
您可以将 IdM 服务器配置为将通用安全服务算法用于 RFC3645 中定义的 secret 密钥事务(GSS-TSIG)技术。要将 IdM 服务器配置为使用 GSS-TSIG 技术,您必须在 Capsule 服务器基础操作系统上安装 IdM 客户端。
先决条件
- 您必须确保 IdM 服务器已部署,并且基于主机的防火墙已正确配置。如需更多信息,请参阅 Linux 域身份、身份验证和策略指南 中的 端口要求。
- 您必须联系 IdM 服务器管理员,以确保获取 IdM 服务器上的帐户,并有权在 IdM 服务器上创建区域。
- 您应该创建回答文件的备份。如果回答文件损坏,您可以使用备份将其恢复到其原始状态。如需更多信息,请参阅配置 Satellite 服务器。
流程
要使用 GSS-TSIG 身份验证配置动态 DNS 更新,请完成以下步骤:
在 IdM 服务器上创建 Kerberos 主体
为从 IdM 管理员获取的帐户获取 Kerberos 票据:
kinit idm_user
# kinit idm_user
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 为 Capsule 服务器创建一个新的 Kerberos 主体,用于在 IdM 服务器上进行身份验证。
ipa service-add capsule.example.com
# ipa service-add capsule.example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
安装和配置 IdM 客户端
在管理部署的 DNS 服务的 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 运行安装脚本并遵循屏幕提示来配置 IdM 客户端:
ipa-client-install
# ipa-client-install
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 获取Kerberos ticket:
kinit admin
# kinit admin
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 删除任何已存在的
keytab
:rm /etc/foreman-proxy/dns.keytab
# rm /etc/foreman-proxy/dns.keytab
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 获取此系统的
keytab
:ipa-getkeytab -p capsule/satellite.example.com@EXAMPLE.COM \ -s idm1.example.com -k /etc/foreman-proxy/dns.keytab
# ipa-getkeytab -p capsule/satellite.example.com@EXAMPLE.COM \ -s idm1.example.com -k /etc/foreman-proxy/dns.keytab
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意将 keytab 添加到与服务原始系统相同的主机名的备用系统中时,添加
r
选项以防止生成新凭证并在原始系统上呈现凭据无效。对于
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 可选: 要验证
keytab
文件是否有效,请输入以下命令: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
在 IdM Web UI 中配置 DNS 区域
创建并配置您要管理的区:
- 进入 Network Services > DNS > DNS Zones。
-
选择 Add 并输入区域名称。例如:
example.com
。 - 点 Add and Edit。
点 Settings 选项卡,在 BIND 更新策略 框中,将以下内容添加到分号分开的列表中:
grant capsule/047satellite.example.com@EXAMPLE.COM wildcard * ANY;
grant capsule/047satellite.example.com@EXAMPLE.COM wildcard * ANY;
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 将 Dynamic update 设置为 True。
- 启用 Allow PTR 同步。
- 点 Save 保存更改。
创建并配置反向区:
- 进入 Network Services > DNS > DNS Zones。
- 点击 Add。
- 选择 Reverse zone IP network 并使用 CIDR 格式添加网络地址来启用反向查找。
- 点 Add and Edit。
点 Settings 选项卡,在 BIND 更新策略 框中,将以下内容添加到分号分开的列表中:
grant capsule\047satellite.example.com@EXAMPLE.COM wildcard * ANY;
grant capsule\047satellite.example.com@EXAMPLE.COM wildcard * ANY;
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 将 Dynamic update 设置为 True。
- 点 Save 保存更改。
配置管理域的 DNS 服务的 Satellite 或 Capsule 服务器
使用
satellite-installer
命令配置管理域的 DNS 服务的 Satellite 或 Capsule:在 Satellite 中输入以下命令:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 Capsule 中输入以下命令:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
运行 satellite-installer
命令对 Capsule 配置进行任何更改后,您必须在 Satellite Web UI 中更新每个受影响的 Capsule 的配置。
在 Satellite Web UI 中更新配置
- 在 Satellite Web UI 中,导航到 Infrastructure > Capsules,找到 Capsule Server,并从 Actions 列中的列表,选择 Refresh。
配置域:
- 在 Satellite Web UI 中,导航到 Infrastructure > Domains 并选择域名。
- 在 Domain 选项卡中,确保将 DNS Capsule 设置为子网连接的 Capsule。
配置子网:
- 在 Satellite Web UI 中,导航到 Infrastructure > Subnets 并选择子网名称。
- 在 子网 选项卡中,将 IPAM 设置为 None。
- 在 Domains 选项卡中,选择您要使用 IdM 服务器管理的域。
- 在 Capsules 选项卡中,确保将 Reverse DNS Capsule 设置为子网连接的 Capsule。
- 点 Submit 保存更改。
4.4.2. 使用 TSIG 身份验证配置动态 DNS 更新 复制链接链接已复制到粘贴板!
您可以将 IdM 服务器配置为对使用 rndc.key
密钥文件的 DNS (TSIG)技术进行 secret 密钥事务身份验证。TSIG 协议在 RFC2845 中定义。
先决条件
- 您必须确保 IdM 服务器已部署,并且基于主机的防火墙已正确配置。如需更多信息,请参阅 Linux 域身份、身份验证和策略指南 中的 端口要求。
-
您必须在 IdM 服务器上获取
root
用户访问权限。 - 您必须确认 Satellite 服务器或 Capsule 服务器是否已配置为为您的部署提供 DNS 服务。
- 您必须在管理部署的 DNS 服务的 Satellite 或 Capsule 的基础操作系统上配置 DNS、DHCP 和 TFTP 服务。
- 您必须创建回答文件的备份。如果回答文件损坏,您可以使用备份将其恢复到其原始状态。如需更多信息,请参阅配置 Satellite 服务器。
流程
要使用 TSIG 身份验证配置动态 DNS 更新,请完成以下步骤:
在 IdM 服务器中启用对 DNS 区的外部更新
在 IdM 服务器上,将以下内容添加到
/etc/named.conf
文件的顶部:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重新载入
named
服务以使更改生效:systemctl reload named
# systemctl reload named
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 IdM Web UI 中,导航到 Network Services > DNS > DNS Zones,然后点击区的名称。在 Settings 选项卡中,应用以下更改:
在
BIND 更新策略框中添加以下内容
:grant "rndc-key" zonesub ANY;
grant "rndc-key" zonesub ANY;
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 将 Dynamic update 设置为 True。
- 点 Update 保存更改。
将
/etc/rndc.key
文件从 IdM 服务器复制到 Satellite 服务器的基本操作系统。使用以下命令:scp /etc/rndc.key root@satellite.example.com:/etc/rndc.key
# scp /etc/rndc.key root@satellite.example.com:/etc/rndc.key
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要为
rndc.key
文件设置正确的所有权、权限和 SELinux 上下文,请输入以下命令:restorecon -v /etc/rndc.key chown -v root:named /etc/rndc.key chmod -v 640 /etc/rndc.key
# restorecon -v /etc/rndc.key # chown -v root:named /etc/rndc.key # chmod -v 640 /etc/rndc.key
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 手动将
foreman-proxy
用户分配给named
组。通常,satellite-installer 确保foreman-proxy
用户属于named
UNIX 组,但是在这种情况下,Satellite 不管理用户和组,因此您需要手动将foreman-proxy
用户分配给named
组。usermod -a -G named foreman-proxy
# usermod -a -G named foreman-proxy
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 Satellite 服务器上,输入以下
satellite-installer
命令将 Satellite 配置为使用外部 DNS 服务器:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
测试 IdM 服务器中的 DNS 区的外部更新
确保 Satellite 服务器上的
/etc/rndc.key
文件中的密钥与 IdM 服务器中使用的密钥文件相同:key "rndc-key" { algorithm hmac-md5; secret "secret-key=="; };
key "rndc-key" { algorithm hmac-md5; secret "secret-key=="; };
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 Satellite 服务器上,为主机创建一个测试 DNS 条目。例如,在
192.168.25.1
的 IdM 服务器上的 A 记录192.168.25.20
的主机test.example.com
。echo -e "server 192.168.25.1\n \ update add test.example.com 3600 IN A 192.168.25.20\n \ send\n" | nsupdate -k /etc/rndc.key
# echo -e "server 192.168.25.1\n \ update add test.example.com 3600 IN A 192.168.25.20\n \ send\n" | nsupdate -k /etc/rndc.key
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 Satellite 服务器上,测试 DNS 条目:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 要查看 IdM Web UI 中的条目,请导航到 Network Services > DNS > DNS Zones。单击区域的名称,再按名称搜索主机。
如果成功解析,请删除 test DNS 条目:
echo -e "server 192.168.25.1\n \ update delete test.example.com 3600 IN A 192.168.25.20\n \ send\n" | nsupdate -k /etc/rndc.key
# echo -e "server 192.168.25.1\n \ update delete test.example.com 3600 IN A 192.168.25.20\n \ send\n" | nsupdate -k /etc/rndc.key
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 确认 DNS 条目已被删除:
nslookup test.example.com 192.168.25.1
# nslookup test.example.com 192.168.25.1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以上
nslookup
命令失败,并在成功删除记录时返回SERVFAIL
错误消息。
4.4.3. 恢复到内部 DNS 服务 复制链接链接已复制到粘贴板!
您可以恢复到使用 Satellite 服务器和 Capsule 服务器作为 DNS 提供程序。您可以使用配置外部 DNS 之前创建的回答文件的备份,或者您可以创建回答文件的备份。有关回答文件的更多信息,请参阅配置 Satellite 服务器。
流程
在您要配置为管理域的 DNS 服务的 Satellite 或 Capsule 服务器上,完成以下步骤:
将 Satellite 或 Capsule 配置为 DNS 服务器
如果您在配置外部 DNS 前创建了回答文件的备份,请恢复回答文件,然后输入
satellite-installer
命令:satellite-installer
# satellite-installer
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如果您没有回答文件的合适的备份,请立即创建回答文件的备份。要在不使用回答文件的情况下将 Satellite 或 Capsule 配置为 DNS 服务器,请在 Satellite 或 Capsule 中输入以下
satellite-installer
命令:satellite-installer \ --foreman-proxy-dns=true \ --foreman-proxy-dns-managed=true \ --foreman-proxy-dns-provider=nsupdate \ --foreman-proxy-dns-server="127.0.0.1"
# satellite-installer \ --foreman-proxy-dns=true \ --foreman-proxy-dns-managed=true \ --foreman-proxy-dns-provider=nsupdate \ --foreman-proxy-dns-server="127.0.0.1"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 如需更多信息,请参阅在 Capsule 服务器上配置 DNS、DHCP 和 TFTP。
运行 satellite-installer
命令对 Capsule 配置进行任何更改后,您必须在 Satellite Web UI 中更新每个受影响的 Capsule 的配置。
在 Satellite Web UI 中更新配置
- 在 Satellite Web UI 中,导航到 Infrastructure > Capsules。
- 对于您要更新的每个 Capsule,请从 Actions 列表中选择 Refresh。
配置域:
- 在 Satellite Web UI 中,导航到 Infrastructure > Domains,然后点击您要配置的域名。
- 在 Domain 选项卡中,将 DNS Capsule 设置为子网连接的 Capsule。
配置子网:
- 在 Satellite Web UI 中,导航到 Infrastructure > Subnets 并选择子网名称。
- 在 子网 选项卡中,将 IPAM 设置为 DHCP 或 内部 DB。
- 在 Domains 选项卡中,选择您要使用 Satellite 或 Capsule 管理的域。
- 在 Capsules 选项卡中,将 Reverse DNS Capsule 设置为子网连接的 Capsule。
- 点 Submit 保存更改。