PC6下载站

分类分类

在 Windows2000 环境下实现动态 DNS 的安全考虑

关注+2004-10-07作者:蓝点


            
             
              
             
            

               
               

            



            Windows2000 域名解析是基于动态DNS(Dynamic DNS)的。微软是基于RFC 2136实现动态DNS的。这关系到 BIND v8 和 v9。BIND v9 在由O’Reilly出版的Paul Albitz 和 Cricket Liu 撰写的第四版《DNS and BIND》里面有所阐述。

  在 Windows 2000 里,动态 DNS 是与 DHCP, WINS 和动态目录(Active Directory) 集成并且相关的。在 Windows 2000的域中有三种方法实现 DNS:动态目录集成、动态目录的主要DNS和非动态目录的辅助DNS、非动态目录的主DNS和非动态目录的辅助DNS。当 DNS 完全集成到动态目录中时,我们可以在一个 Windows 2000 网络中利用三种安全特性:安全动态更新、安全区域传输和对区域与资源记录的访问控制列表。

1.0 安全动态更新

  在动态DNS(DDNS)中最重要的安全特性之一就是安全更新特性。在实现安全更新特性中需主要考虑的,是由DNS条目组成记录的所有权。DHCP是如何配置的和支持哪个客户端决定了所有权。

  两种DNS资源记录关系到每一个客户端:A记录和PTR记录。A记录负责从名字解析到地址,而PTR记录解析地址到名字。地址是指一个客户端的IP地址。名字是指一个客户机完整的、有资格的域名。这应该是计算机名加上网络的域名。

  在Windows 2000环境中,当客户端通过DHCP请求一个IP时,客户端DNS记录就被注册。根据设置,客户端、DHCP服务器或者这两者都可以更新A和PTR记录来关联到客户端。这些记录的所有权依据谁注册了这个记录。

  这就是在Windows 2000网络中定义 A 和 PTR 记录所有权的选择。

1.1 Windows 2000 本机模式(Native Mode)

  在Windows 2000环境下,DHCP 服务器和 DHCP 客户端都可以通过 DNS 注册记录。当网络单纯由 Windows 2000 的服务器和客户端组成时,这种 Windows 2000 环境称之为"本机模式"(Native Mode)。

  当客户端是一个 Windows 2000 客户端,这个客户端的默认配置是在注册到网络过程中动态更新它自己的 A 记录。与此同时,DHCP 服务器更新客户端的 PTR 记录。所以,A 记录的所有权属于这个客户端,PTR 记录的所有权属于 DHCP 服务器。

  第二种可能的配置是 DHCP 服务器总是更新正向和反向的查找。在这种情况下,DHCP 服务器分别拥有A和PTR记录。

  第三种可能的配置是 DHCP 服务器被配置为不能执行动态更新。在这种情况下,客户端将会更新 A 记录和 PTR 记录,因此拥有这些记录。

1.2 Windows 2000 混杂模式(Mixed Mode)

  在混杂的环境下,DHCP 客户端不能通过 DNS 注册。当网络由 Windows 2000 服务器、客户端除了 Windows 2000 之外还由 Windows NT 4.0 或 Windows 98 组成时,这种混杂环境被称为"混杂模式"。

  以前的客户端,像 Windows NT 4.0 和 Windows 9x,不能直接通过 DNS 注册。因为只有 DHCP 服务器可以通过 DNS 注册记录,再混杂环境中唯一的选择是让 DHCP 注册 A 和 PTR 记录。在这种情况下,这个服务器拥有正向和反向查找的记录。

1.3 安全动态更新

  在 Windows 2000 网络中,安全动态更新是唯一可以用于与动态目录集成的 DNS 区域。所以安全动态更新意味着什么?在 Windows 2000 中,它意味着是用动态目录 ACL 制定用户和组的权限来修改 DNS 区域和/或它的资源记录。除了使用 ACL 外,安全更新为了允许更新 DNS 区域和/或它的资源记录,也使用安全通道和认证。

  微软 Windows 2000 支持使用在 IETF Internet-Draft "GSS Algorithm for TSIG (GSS-TSIG) 中定义的运算法则进行安全动态更新。这个算法使用 Kerberos v5 作为优先的认证协议。GSS-API 在 RFC 2078 中有定义。

2.0 区域

2.1 区域的类型

  Windows 2000 可以配置 DNS 区域为主要区域、辅助区域或活动目录集成。

  主要和辅助区域象在 Unix 环境和 NT 4.0 环境一样运作。另外数据库保持与其它数据库象 WINS 和 DHCP 数据库分开,并且复制也是分别从其它复制服务中设置。如果网络中任何服务器运行着一个 BIND 版本低于 8.1.2,则必须使用主要/辅助区域,因为在早先的版本中不支持动态更新。

  如果安装了活动目录,DNS 区域可以成为活动目录集成区域。这意味着 DNS 区域数据库成为活动目录数据库的一部分。每一个记录成为活动目录对象。每一个活动目录对象拥有它自己的ACL(访问控制列表)。

2.2 区域传输或复制的类型

  Windows 2000 DNS 可以支持 AXFR 或 IXFR。AXFR,或者所有的区域传输,是复制整个区域数据库文件。IXFR,或者增量区域传输,仅仅复制区域数据库的变化。如果区域类型设置成主要/辅助区域,那么可以应用这些区域复制方法。在版本8.2.1以及以上的 BIND 中支持IXFR。

  当 DNS 域活动目录集成时,所有的区域和资源记录将成为活动目录数据库中的对象。活动目录的复制是基于多主模型(multi-master model)的。

  多主模型的好处之一是没有单点失败的问题。这是可能的,因为包含 DNS 部分的活动目录数据库会被复制到所有域控制器上。因此 DNS 区域传输完全成为活动目录复制的一部分。

2.3 区域传输的安全

  如果 Windows 2000 网络运行着主要/辅助区域配置的 DNS,是不可以使用加密压缩的。为了兼容 BIND,Windows 2000 支持 AXFR 每个消息发送/接受一个或多个资源记录。BIND 在 4.9.4 以前的版本不支持每个消息传送多条资源记录。Windows 2000 支持 IXFR。相应的 BIND 版本是 8.2.1。Windows 2000 支持 DNS 通报(DNS Notify),相应的 BIND 版本是8.1.2。

  当 Windows 2000 DNS 配置为活动目录集成时,复制处理成为活动目录复制的一部分,因此将会自动使用加密和压缩。

  加密使用的是微软 Windows 2000 Kerberos v5。与控制器之间的通讯通道会自动加密。不需要管理配置。

  当活动目录更新在"桥头堡"(Bridgehead)服务器间传输时,会自动使用压缩。桥头堡服务器是从局域网其他服务器中自动选择的服务器。当广域网链路需要使用活动目录更新时,每个局域网的桥头堡服务器会与其它桥头堡服务器通讯。这会大量减少通过 WAN 链路德里流量。在这种情况下,为了节约带宽会自动使用压缩。

3. 活动目录集成DNS 区域

  因为在 Windows 2000 活动目录和 DDNS 集成,实现活动目录的安全是实现 DDNS 的安全的第一步。

3.1 文件系统

  使用NTFS。Windows 2000 的版本是 NTFS v5。这个版本允许设置文件和文件夹的安全性、加密文件系统和审核。NTFS v5 不兼容从前的 NTFS。在安装了 Service Pack 4 或者更高版本的 NT 4.0上只能读取NTFS v5。

  NTFS 权限可以设置文件夹和文件级别来限制网络或者本地访问文件。

  NTFS 和 共享权限可以被用来非常精确的控制权限和继承关系。

3.2 注册表

  使用注册表编辑器编辑 DACL 关系到每一个注册表Hive。细节可以参考 SANS 出版的 "Windows NT Security, Step-by-Step"。

3.3 EntERPrise管理员和Schema管理员组

  在 Windows 2000 网络建立之后,限制访问这两个管理员组。这些组出现在域的根并且含有不受限制的管理能力。根据域的结构,管理可以被委派到下面的域结构,因此管理可以被限制到单个域。

3.4 加密文件系统

  Windows 2000 NTFS 提供了使用加密文件系统的选择。EFS 使用基于公共密钥(public key)的技术来进一步限制文件的未授权访问。

3.5 活动目录中的DNS

  安装DNS会扩展活动目录Schema包含DNSUpdateProxy组。这是非常强大的组,允许创建对象,这是不安全的。当这种情况发生,任何认证的用户可以用这种方式创建属于自己的那些对象。

  在 Windows 2000 DHCP 处理过程中,DNS 会象上面详细描述的那样更新客户端记录 A 和 PTR。当客户端和服务器都是 Windows 2000时,安全动态更新可以完全使用默认安装。当其他的客户端需要支持,除非 DHCP 服务器添加到 DNSUpdateProxy 组,否则不能使用安全动态更新。这就允许 DHCP 服务器为早期的客户端执行动态更新。

  如果 DHCP 服务在一个域控制器(Domain Control)上运行的话必须特别考虑。在这种情况下,添加 DHCP 服务器到 DNSUpdateProxy 组,那么所有用户或计算机都可以完全控制相应的域控制器的 DNS 记录。

3.6 资源记录的所有权

  DHCP 服务器不能在早期的客户端上执行安全动态更新,这在 Windows 2000 网络中是很重要的。如果这种情况发生,会出现不能完全更新活动记录的情况。举例而言,一个NT 4.0的客户端通过 DHCP 服务器在 DNS 中注册了一个名字。这台机器升级到 Windows 2000 客户端。因为升级是操作系统的升级所以名字不变。从它最初注册这个名字开始,DHCP 服务器便拥有这个名字的资源记录所有权。Windows 2000 客户端不能更新它自己的名字。

3.7 WINS 查找

  作为 Windows 2000 的最终的告诫,我将说明 WINS 将很有可能是所有 Windows 2000 网络中必须的部分。为什么呢?NetBios 解析仍是所有非 Windows 2000 客户端所必需的。同样,所有需要NetBios的程序也需要 WINS 来做名字解析。WINS 通过两种专门的资源记录直接集成到 DNS 中:WINS 和 WINS-R。这分别给 WINS 做正向和反向的记录查找。

4.0 结论

总之,理解 Windows 2000 使用 DNS 的过程是非常重要的。这些考虑在这篇论文的1.0章 安全动态更新和2.0章 区域中有了一个简述。理解一些 Windows 2000 的"gotcha's"和"caveats"也是非常重要的。3.0章 活动目录集成DNS 区域列举了一些这样的条目。

展开全部

相关文章

更多+相同厂商

热门推荐

  • 最新排行
  • 最热排行
  • 评分最高
排行榜

    点击查看更多

      点击查看更多

        点击查看更多

        说两句网友评论

          我要评论...
          取消