DNSSec NSEC3 是否需要注册商、DNS 服务器或两者的支持?

DNSSec NSEC3 是否需要注册商、DNS 服务器或两者的支持?

我有兴趣让我的域名 getvalid.com 获得 NSEC3 支持,这样我就可以防止名称遍历。

动态似乎不支持 NSEC3,很明显BIND和DNS服务器需要支持NSEC3的能力......但我不确定底层注册商是否对NSEC3支持有任何影响。

我需要向 NSEC3 注册商做些什么吗?

答案1

在 DNSSEC 中,根名称服务器和中间名称服务器的作用是提供信任链,直到到达您所在区域的权威名称服务器。除了托管DS与您的签名区域相关的公钥外,它们在 NSEC3 验证中没有任何作用。

要使 NSEC3 正常运行,您需要使用强制支持该功能的算法对您的区域进行签名。较旧的算法通过包含标识符的变体得到支持-NSEC3-。除非以这种方式宣传支持,否则解析器不会尝试使用较新的功能。如果区域已正确签名,您需要做的就是按照常规步骤将密钥DS摘要发布到授权链中紧接在您之前的名称服务器。

RFC5155

为了帮助部署,该规范使用信令技术来防止不了解 NSEC3 的解析器尝试验证来自 NSEC3 签名区域的响应。

本规范为此分配了两个新的 DNSKEY 算法标识符。算法 6,DSA-NSEC3-SHA1 是算法 3,DSA 的别名。算法 7,RSASHA1-NSEC3-SHA1 是算法 5,RSASHA1 的别名。这些不是新算法,而是现有算法的附加标识符。

根据本规范签名的区域必须仅将这些算法标识符用作其 DNSKEY RR。由于这些新标识符对于现有的、不支持 NSEC3 的解析器来说是未知算法,因此这些解析器会将来自 NSEC3 签名区域的响应视为不安全的,如 [RFC4035] 第 5.2 节所述。

答案2

只要注册商允许您DS向区域委派中添加任何您想要的有效记录,注册商就不会成为一个因素。

注册商可能采取的一些会导致问题的行为包括:

  • 如果他们不允许您添加DS任何记录,那么您根本无法获得签名的委托(作为DLV一种潜在的解决方法),这不是 NSEC3 的问题,而是 DNSSEC 的问题

  • 如果他们对记录的值DS(特别是算法字段)施加限制,可能会迫使您使用早于 NSEC3 的算法。


我没有遇到过算法的局限性,但至少从理论上讲,有人可能会使用过时的验证代码或类似的东西。

相关内容