RRSIG 查询
查询 RRSIG 记录以验证 DNSSEC 签名与验证状态
本页提供关于 RRSIG 记录查询的原创、经人工审校的内容,解释签名生效与过期时间、密钥标签,以及 RRSIG 过期如何破坏 DNSSEC 校验。
RRSIG (Resource Record Signature) records are cryptographic signatures used in DNSSEC (DNS Security Extensions) to authenticate DNS data. They provide integrity and authenticity verification for DNS responses, protecting against DNS spoofing and cache poisoning attacks.
核心组成部分:
- 覆盖的类型:该签名覆盖的 DNS 记录类型(A、MX、NS 等)
- 算法:用于签名的加密算法(RSA/SHA-256、ECDSA 等)
- 签名过期时间:签名何时过期以及何时需要续期
- 密钥标签:用于创建此签名的 DNSKEY 标识符
- 签名:实际的加密签名数据
RRSIG 记录的工作原理:
- DNS 区域所有者创建包含公钥的 DNSKEY 记录
- 私钥用于签名 DNS 记录,生成 RRSIG 记录
- 解析器使用对应的 DNSKEY 记录验证签名
- 通过父区域的 DS 记录建立信任链
基本 DNSSEC 配置流程:
1. 生成 DNSSEC 密钥
2. 签名区域
3. 向父区域提交 DS 记录
常用 DNSSEC 工具:
BIND(named)
内置 DNSSEC 支持,具有自动签名能力
PowerDNS
自动化的 DNSSEC 签名和密钥管理
Knot DNS
支持 DNSSEC 的高性能权威 DNS 服务器
签名过期
RRSIG records have expiration dates. Expired signatures cause DNSSEC validation failures.
解决方案:实施自动化签名续期和监控。
缺少 RRSIG 记录
Some record types are signed while others are not, causing inconsistent DNSSEC validation.
解决方案:确保区域中的所有记录类型都已正确签名。
密钥轮换问题
Improper key rollover procedures can break the chain of trust.
解决方案:仔细遵循 RFC 6781 密钥轮换流程。
算法不匹配
Using deprecated or unsupported cryptographic algorithms.
解决方案:使用 RSA/SHA-256 或 ECDSA 等现代算法。
时钟同步
Signature validation depends on accurate time. Clock drift can cause validation failures.
解决方案:确保所有 DNS 服务器时钟同步(NTP)。
RRSIG 记录应该多久续期一次?
RRSIG 记录通常有效期为 30 天,但应每周续期,以留出安全余量。强烈建议自动续期。
RRSIG 验证失败会怎样?
当 DNSSEC 验证失败时,强制执行 DNSSEC 的解析器将返回 SERVFAIL,导致用户无法访问该域名。不进行验证的解析器可能仍会返回结果。
可以只签名部分记录类型吗?
不可以。要正常运行 DNSSEC,签名区域中的所有记录类型都必须有对应的RRSIG 记录。部分签名可能导致验证失败。
如何验证我的 DNSSEC 配置是否正常?
使用 'dig +dnssec' 或在线 DNSSEC 验证器等工具。在响应中查找 RRSIG 记录,并验证从根到你的域名的信任链。
ZSK 和 KSK 有什么区别?
区域签名密钥(ZSK)签名区域数据并生成 RRSIG 记录。密钥签名密钥(KSK)签名 DNSKEY 记录,并用于在父区域中创建 DS 记录。
DNSSEC 应该使用 RSA 还是 ECDSA?
只要正确实施,两者都是安全的。ECDSA 的密钥和签名更小,而 RSA 兼容性更广。RSA/SHA-256 和 ECDSA P-256 都是推荐选择。
