什么是 DNSSEC?
DNS 在设计时没有任何办法检查应答是否真实,这使得缓存投毒和欺骗攻击成为可能。DNSSEC(DNS Security Extensions,DNS 安全扩展)为 DNS 记录添加了数字签名。区域会把自己的公钥发布为 DNSKEY 记录,并用 RRSIG 为每个记录集签名。上级区域(例如 .com)会发布一条 DS 记录,其中包含子区域密钥签名密钥的哈希。沿着 DS → DNSKEY → RRSIG 的链接一路向上直到根区,就形成了验证型解析器可以验证的信任链。阅读我们的 DNSSEC 指南。
本检测工具会验证什么
- 上级区域的 DS:注册局是否为该域名发布了 DS 记录。
- 区域内的 DNSKEY:已发布的密钥、它们的角色(KSK 或 ZSK)和算法。
- DS ↔ DNSKEY 匹配:我们自己重新计算每个密钥的标签和摘要,并确认 DS 记录指向的是一个真实存在的密钥。
- 实时验证:我们向验证型解析器(Cloudflare 1.1.1.1)查询该域名,检查已认证数据(AD)标志,以及解释失败原因的扩展 DNS 错误(如有)。
如何启用 DNSSEC
- 在您的 DNS 托管服务商处开启 DNSSEC 签名。大多数主流 DNS 服务商只需点击一下即可完成。
- 复制它们提供给您的 DS 记录(密钥标签、算法、摘要类型和摘要)。
- 把它添加到域名注册商的 DNSSEC 设置中。如果注册商同时托管您的 DNS,有些注册商会自动完成这一步。
- 等待上级区域的 TTL 过期,然后再次运行此检测。
要更换 DNS 服务商?请在切换名称服务器之前先在域名注册商处删除 DS 记录,否则旧的 DS 将与新服务商的密钥不匹配,使用验证型解析器的用户将无法解析您的整个域名。
常见问题
DNSSEC 会加密 DNS 吗?
不会。DNSSEC 证明应答是真实的,但不会隐藏应答。加密来自 DNS-over-HTTPS 或 DNS-over-TLS。
应该使用哪种算法?
采用 SHA-256 的 ECDSA P-256(算法 13)是现代的默认选择:体积小、速度快,并且得到广泛支持。在支持的情况下,Ed25519(算法 15)也很好。
为什么有些大型网站不使用 DNSSEC?
出于运维风险和复杂性的考虑,尤其是对于大型的多服务商部署。DNSSEC 的采用率因顶级域和服务商而差异很大。
更新于
评论
登录后即可为此工具评分。
分享技巧、提出问题,或说说这个工具对您是否有用。
还没有评论,来分享您的使用体验吧。