Windows AD DNS 会自动为 CNAME 添加 PTR 记录,我希望这种情况停止

Windows AD DNS 会自动为 CNAME 添加 PTR 记录,我希望这种情况停止

前言:我不是 Windows 管理员。我是 Linux 管理员。

我有一台带有 AD DNS 的 Windows 2016 服务器,可以处理内部 DNS 正向和反向查找。

不知何故,某个进程会自动为 CNAME 添加 PTR 反向查找记录。这会破坏我们在服务器之间进行 SSH 的 Kerberos 身份验证,因为对具有 CNAME 的主机进行规范查找将返回过多的 FQDN 和 Kerberos 错误。

当我删除 CNAME 反向查找时,Kerberos SSH 问题就解决了。

然后,第二天,所有的 PTR -> CNAME 条目都回到了 AD DNS 中

例如,从顶部开始(我已将名称更改为通用名称,但整体设置相同):

运行 SMTP 和 Squid 代理的一对网络操作框具有 A 记录

netops01.example.com -> 10.1.2.3
netops02.example.com -> 10.4.5.6

同一盒子有 C​​NAME

netops
proxy
mailserver

由于某种原因,AD DNS 中存在如下反向查找条目:

3.2.1.10.in-addr.arpa. 3600 IN  PTR netops.example.com
3.2.1.10.in-addr.arpa. 3600 IN  PTR proxy.example.com
3.2.1.10.in-addr.arpa. 3600 IN  PTR mailserver.example.com
3.2.1.10.in-addr.arpa. 3600 IN  PTR netops01.example.com

最后一条记录是该主机的 A 记录。其他所有记录都是该 A 记录 + 第二台主机的另一个 A 记录的 CNAME。

我或其他负责操作的管理员都没有创建这些。我们也没有设置任何计划任务来重新创建反向查找。我也想不出有什么好理由让反向查找指向 CNAME 或多个结果。(也许有好的理由?不过,我以前从未这样做过)

因此,我删除了除 A 记录之外的所有反向查找。Kerberos SSH 可以正常工作!

第二天,记录全部返回。

我甚至不确定如何在 Windows 上进行故障排除(因此我在顶部写了序言)

  • 我如何在 Windows 日志中找到执行此操作的内容?
  • Windows DNS 中是否有可以自动执行此操作的功能?(为 CNAME 创建 PTR)
  • 有办法关掉它吗?
  • 我还遗漏了什么吗?

答案1

回答我自己

我找到了我所缺少的东西。两件事:

  1. 事实上,这些并不是 CNAME。它们是出于负载平衡目的而列出的多个主机的 A 记录。

    由于它们是 A 记录,因此它们确实有一个复选框,内容是“自动创建相关的 PTR 记录”

    我取消了对这些记录的检查。这实际上似乎并没有解决这里描述的问题:PTR 记录仍然每天早上重建。

  2. 然而无论如何,这不是我想要的解决方案。根本问题是 Kerberos 不起作用。好吧,这个问题很容易解决,只需将此“rdns”设置添加到 /etc/krb5.conf

    [libdefaults]

    rdns = false

答案2

默认情况下,Windows 始终尝试使用动态 DNS 注册正向和反向查找。

您可以在注册自己的客户端或 DNS 服务器上禁用此功能,或者同时禁用两者。解决当前问题的最快方法是禁用相关反向查找区域的动态 DNS 支持。从长远来看,根据您的情况,您可能还希望在正向区域中禁用它。

我找到了一张显示 DNS 服务器相关设置的截图这里。您要选择“无”。

有关在客户端上禁用动态更新的更多信息这里这里。这不是必需的,但否则客户端将生成定期的事件日志消息,因为动态 DNS 请求被服务器拒绝。

注意:您不应禁用 Active Directory 域控制器或 Active Directory 区域(例如_msdcs域控制器用于存储有关域基础结构的信息的区域)的动态更新。这将破坏 Active Directory。

相关内容