我在主 DNS 服务器上运行 BIND 9.16.3-Ubuntu (ISC PPA),并设置了内部和外部视图的拆分视图。所有区域都使用内联签名和自动 DNSSEC 维护进行签名。几周前,我为每个区域进行了有史以来第一次 ZSK 和 KSK 轮转,在我看来,这是经过精心规划和执行的,进展顺利。旧密钥取消发布后,我已将其删除。现在我注意到 bind 抱怨缺少内部区域的密钥:
02-Jun-2020 20:00:35.893 general: warning: dns_dnssec_keylistfromrdataset: error reading /etc/bind/keys/Ksomefqdn.com.+008+62538.private: file not found
02-Jun-2020 20:00:35.893 general: warning: dns_dnssec_keylistfromrdataset: error reading /etc/bind/keys/Ksomefqdn.com.+008+21337.private: file not found
02-Jun-2020 20:00:35.893 general: warning: dns_dnssec_findzonekeys2: error reading /etc/bind/keys/Ksomefqdn.com.+008+62538.private: file not found
02-Jun-2020 20:00:35.893 general: warning: dns_dnssec_findzonekeys2: error reading /etc/bind/keys/Ksomefqdn.com.+008+21337.private: file not found
每次key event
(每小时)bind 提示为 时,都会发生这种情况reconfiguring zone keys
。重新启动 bind 时,我发现它显然为已签名区域加载了过期的区域序列号。然后,我在未签名区域文件中增加了序列号,删除了该区域的所有jbk
、jnl
和文件,用 刷新了缓存(可能没有必要,因为我稍后重新启动了),然后重新启动 bind。signed
signed.jnl
rndc flush
序列号过时的问题仍然存在:
13-Jun-2020 18:39:31.364 zoneload: info: zone somefqdn.com/IN/internal-view (unsigned): loaded serial 2020061301
13-Jun-2020 18:39:31.364 zoneload: info: zone somefqdn.com/IN/internal-view (signed): loaded serial 2020052919 (DNSSEC signed)
之后 bind 会抱怨缺少密钥。我没有发现其他错误消息。是否还有其他缓存需要清空、数据库需要刷新或另一个文件需要删除?