DNSSEC

来自 ArchWiki

来自 DNSSEC 维基百科文章

域名系统安全扩展(DNSSEC)是一套互联网工程任务组(IETF)规范,用于保护域名系统(DNS)在互联网协议(IP)网络上使用时提供的某些类型的信息。它是一组 DNS 的扩展,为 DNS 客户端(解析器)提供 DNS 数据的来源身份验证、经过身份验证的存在性否定和数据完整性,但不提供可用性或机密性。

基本 DNSSEC 验证

注意: 默认情况下,您的 DNS 查找需要进一步设置 DNSSEC。 请参阅 #Install a DNSSEC 验证解析器#Enable DNSSEC in specific software

安装

安装 ldns 软件包,它提供了 drilldrill 工具可用于基本 DNSSEC 验证。

有关其他可用工具,请参阅 域名解析#查找实用程序

使用 DNSSEC 验证查询

然后要使用 DNSSEC 验证查询,请使用 -D 标志

$ drill -D example.com

测试

作为测试,请使用以下域,添加 -T 标志,该标志从根域名服务器跟踪到要解析的域。

结果应以以下行结尾,表明 DNSSEC 签名是伪造的

$ drill -DT badsig.go.dnscheck.tools
[B] badsig.go.dnscheck.tools.   1       IN      A       142.93.10.179
;; Error: Bogus DNSSEC signature
;;[S] self sig OK; [B] bogus; [T] trusted; [U] unsigned

现在要测试受信任的签名,结果应以以下行结尾,表明签名是受信任的

$ drill -DT go.dnscheck.tools
[T] go.dnscheck.tools.  1       IN      A       142.93.10.179
;;[S] self sig OK; [B] bogus; [T] trusted; [U] unsigned

安装 DNSSEC 验证解析器

要在系统范围内使用 DNSSEC,您可以使用能够验证 DNSSEC 记录的 DNS 解析器,以便所有 DNS 查找都通过它。 有关可用选项,请参阅 域名解析#DNS 服务器。 请注意,每个选项都需要特定的选项才能启用其 DNSSEC 验证功能。

如果您尝试访问具有伪造(欺骗)IP 地址的站点,则验证解析器将阻止您接收无效的 DNS 数据,并且您的浏览器(或其他应用程序)将被告知没有这样的主机。 由于所有 DNS 查找都通过验证解析器,因此在使用此选项时,您不需要内置 DNSSEC 支持的软件。

在特定软件中启用 DNSSEC

如果您选择不 #Install a DNSSEC 验证解析器,则需要使用内置 DNSSEC 支持的软件。 通常,这意味着您必须自己修补软件。 希望最终(2020 年 12 月)在 [1] 处找到已修补应用程序的完整列表。 此外,一些 Web 浏览器(其中一些在 [2] 中提到)具有可以安装的扩展程序或附加组件,以实现 DNSSEC 而无需修补程序。

参见

https://github.com/gene-git/dns_tools || dns_toolsAUR