在我们的组织中,我们有两个独立的组,它们共享网络地址空间和一个域。一些 /24 片段分配给我的组,其余的分配给我们的内部 IT 团队。
我们不希望能够管理他们那部分的 DNS,但我们需要能够管理我们那部分的 DNS。
问题在于,出于政治/历史原因(在我任职之前),我们建立了基于 Linux 的 DNS 服务器,并维护了自己的记录,并将所有服务器和设备指向该服务器。同时,整个组织的用户和开发人员都指向 IT 团队的 DNS 服务器。
为了确保一切在任何情况下都能正常工作,我们必须在服务器中输入 DNS 记录,然后向我们的 IT 团队提交工单,以便在 Active Directory 环境中创建记录。这超出了平衡范围,是一场管理噩梦。
此外,我们有数百台使用共享的服务器和应用程序domain.com
,并且必须创建subdomain.domain.com
和更新数百台服务器和应用程序,这并不是我们所希望的。
因此,有没有办法授予信任和权限来更新domain.com
/16 中少数几个 /24 中的记录?可以接受与 Active Directory 绑定的第三方解决方案。
答案1
我可能误读了这一点,但看起来每天运行一次或两次的计划任务是可行的。
- 读取 DNS 记录
- 如果记录 IP 地址符合条件
- 检查管理该地址的安全组的 ACE 的安全 ACL
- 如果不存在 ACE,则添加。
以下是如何访问区域并执行更新的代码的一个示例:
http://www.adamtheautomator.com/fix-dynamic-dns-record-permissions-automagically/
该代码用于修复孤立的动态 DNS 记录,但它应该为您指明正确的方向。
答案2
您肯定已经注意到,在管理方面,DNS 并不关心子网。DNS 基础架构中的典型管理单元是“区域”,它至少对应一个域。因此,如果您想委派管理任务,您可以委派管理整个区域,因此至少委派整个域。
Windows AD DNS 服务器确实为单个记录条目提供了一些额外的访问控制和委派功能 - 即,您可以为区域内的每个单个记录为给定用户或组设置“修改”权限,而无需委派整个区域管理。但是,没有任何委派和 ACL 功能包括“子网”之类的管理单元,如果您需要在 ACE 中反映这一点,则需要在外部修复它们。
话虽如此,但情况可能并没有听起来那么糟糕,因为 Windows DNS ACL 也具有记录“创建者”的概念,并且能够仅委托在区域中创建新记录,而无需更改其他区域特定数据或其他记录的权限。 “创建者”成为记录的所有者,并隐式获得更改其权限的权利,从而间接获得“完全控制”。 此外,如果需要,可以在容器上明确定义在创建新记录时要继承的“CREATOR-OWNER”ACE(但无法撤销更改权限的隐式权利)。 因此,基本项目大纲可能如下所示:
- 请求 AD DNS 团队授予您组在区域中创建新记录的权限
- 要求 AD DNS 团队委托属于您组的资源记录的修改权限
- 开始自行在 AD DNS 中创建和修改您的组的资源记录
- 建议创建一个经常运行的管理脚本,该脚本将检查您的团队创建的记录是否符合委派策略(即指向您域中的主机)
- 重新配置您的 Linux DNS 服务器,以便简单地将查询转发到 AD DNS 服务器,或者通过将区域数据从其中一个 AD DNS 主服务器中提取出来充当辅助服务器(如果 DNS 区域是 AD 集成的,则所有 AD DNS 服务器都将充当主服务器)
答案3
我无法说出如何配置 Active Directory 以允许您使用远程管理和自动化域nsupdate
。
我能NS
告诉你的是,你可以通过对单个记录使用相互的委托来减少一些麻烦,并且永远不会为你的团队不管理的数据定义静态A
或记录。CNAME
假设 Active Directory 中有以下内容:
example.com. SOA dc1.example.com. hostmaster.example.com. 2015022400 28800 7200 604800 300
IN NS dc1.example.com.
IN NS dc2.example.com.
IN MX 10 mail.example.com.
www IN NS ns1
ftp IN NS ns1
mail IN A 198.18.0.10
dc1 IN A 198.18.0.150
ns1 IN A 198.18.0.250
mail
、、ns1
和dc1
是静态定义的记录。www
并ftp
已被委托给ns1.example.com.
,我们称其为权威的 Linux DNS 服务器。- 由于 DC 通常充当混合 DNS 服务器角色(既是递归服务器又是权威服务器),因此对
www
和 的请求ftp
将触发递归,并导致ns1.example.com
需要咨询答案。只要有防火墙允许来自 DC 的流量到达 ,此操作就会成功ns1
。
这仍然很麻烦:你无法逃避在远程服务器上定义记录的需要。你是实现的是单个记录的所有权。如果其中一个记录的 IP 地址需要更改,则不必在围栏的两侧进行此更改。这将起作用,至少在有人想sub.ftp.example.com
在 DC 上定义之前。由于ftp
已被委派,sub.ftp
也被委派,并且无法在本地管理它。