如何配置我的缓存名称服务器来验证 DNSSEC?

如何配置我的缓存名称服务器来验证 DNSSEC?

由于 DNS 树的根已经,如何更改我的缓存 DNS 服务器以开始验证DNSSEC签名?

答案1

正常安装并设置您的名称服务器(bind9包),然后只需将以下节添加到/etc/bind/named.conf.options

managed-keys {
  "." initial-key 257 3 8
    "AwEAAagAIKlVZrpC6Ia7gEzahOR+9W29euxhJhVVLOyQbSEW0O8gcCjF
     FVQUTf6v58fLjwBd0YI0EzrAcQqBGCzh/RStIoO8g0NfnfL2MTJRkxoX
     bfDaUeVPQuYEhg37NZWAJQ9VnMVDxP/VHL496M/QZxkjf5/Efucp2gaD
     X6RS6CXpoY68LsvPVjR0ZSwzz1apAzvN9dlzEheX7ICJBBtuA6G3LQpz
     W5hOA2hzCTMjJPJ8LbqF6dsV6DoBQzgul0sGIcGOYl7OyQdXfZ57relS
     Qageu+ipAdTTJ25AsRTAoub8ONGcLmqrAmRLKBP1dfwhYB4N7knNnulq
     QxA+Uk1ihz0=";
};

然后重新启动服务(sudo service bind9 restart)。

为了确保它正常工作,请尝试解决“www.dnssec-failed.org",它应该会失败:

$ host www.dnssec-failed.org
Host www.dnssec-failed.org not found: 3(NXDOMAIN)

如果它给出了 IP 地址,则 DNSSEC 验证不起作用。

答案2

您至少可以选择两种可能的缓存名称服务器:bind9未绑定

使用当前根密钥配置和测试每个密钥的说明 (首次创建2010 年 7 月)位于 Debian wiki 中:

您应该小心验证添加到配置中的实际密钥,不要信任您在未使用 SSL (https) 或没有安全管理其内容的网站中找到的内容。例如,在这里发布实际密钥可能不明智,而且它无论如何都会随着时间的推移而改变。unbound 网站上的建议“未绑定锚”看起来不错,当该命令作为 Ubuntu 版本的一部分安全可用时,它看起来将是一个不错的选择。它似乎自 unbound 版本 1.4.9-1 以来就已启用,目前是 Oneric 版本的一部分。更多信息请参见Debian 错误 #594911

对于 bind9,请按照bind9(Ubuntu)中的 Bug #782614:“使配置 DNSSEC 验证更容易”以简化此过程。实际上,将当前密钥作为 bind9 的 Ubuntu 打包的一部分,或添加某种更新机制(如 unbound-anchor)似乎很有意义,以方便用户并保护用户。

相关内容