在阅读了有关 Windows Server 2008 R2 中的 DNSSEC 实现之后,在我看来,它增加了额外的复杂性,但并不完全安全(我确实知道,在大多数情况下,更高的安全性总是意味着更多的复杂性)。
第一个 DNS 客户端不知道 DNSSEC,并要求解析记录的同一服务器检查此记录的有效性,并且仅在存在 NRPT 表的情况下才执行此操作(您需要额外配置 - 没有表则不检查;在 WS 2012/Win 8 中仍然如此)。除了在架构方面看起来有些笨拙之外,问题是客户端没有任何选项来验证 DNS 服务器(要在这方面 100% 安全,您需要在 Windows 网络中部署 IPSec,这会增加更多复杂性)。
那么考虑到所有这些因素,在现实世界中部署 DNSSEC 是否值得?它真的能提高安全性还是只会增加不必要的复杂性?
在企业 Windows 网络中是否真的有人使用这项技术?
答案1
一种看法是,它是否“值得”并不重要。在某些必须遵守某些审计政策(如 FISMA 和 FedRAMP)的环境中,它是强制性的。(阅读 NIST 特别出版物 800-53 SC-20 和 SC-21。)
如果您没有这些要求,那么只有您才能决定它是否值得。DNSSEC 和 IPsec 确实会带来复杂性。在内部/私有区域中使用 DNSSEC 而不将其与 IPsec 结合使用确实价值有限。就内部/私有 DNS 区域而言,只有当客户端可以相信他或她正在与真实、正确的 DNS 服务器通信时,DNSSEC 才真正有用。并且验证该身份验证通常也需要 IPsec。
另外,考虑不是在 Windows Server 2012 以下的任何版本上使用 DNSSEC。Server 2008 R2 上的 DNSSEC 只能使用 SHA-1,而不能使用 SHA-2。由于互联网根区域(即.
)使用 RSA/SHA-256 签名,这意味着 Server 2008 R2 作为互联网区域的验证器将毫无用处。Server 2012 及更高版本解决了此问题。
这种复杂性对于您或您的公司来说是否太过难以处理,或者增加的利益是否值得……这太过主观,我们无法为您解答。