如何配置 Unbound 来验证 DNS over TLS 服务器的证书?

如何配置 Unbound 来验证 DNS over TLS 服务器的证书?

我已使用以下配置将 Unbound 配置为使用 DNS over TLS。如何配置 Unbound 以根据主机名验证上游证书?

forward-zone:
        name: "."
        forward-addr: 1.1.1.1@853
        forward-addr: 1.0.0.1@853
        forward-addr: 2606:4700:4700::1111@853
        forward-addr: 2606:4700:4700::1001@853
        forward-tls-upstream: yes

答案1

添加对验证上游 DNS 服务器证书的支持的错误报告已于 2018 年 4 月 19 日解决。

改编自评论 9

server:
        tls-cert-bundle: "/etc/pki/tls/certs/ca-bundle.crt"
forward-zone:
        name: "."
        forward-addr: 1.1.1.1#cloudflare-dns.com
        forward-addr: 1.0.0.1#cloudflare-dns.com
        forward-addr: 2606:4700:4700::1111#cloudflare-dns.com
        forward-addr: 2606:4700:4700::1001#cloudflare-dns.com
        forward-tls-upstream: yes

还解释了它的工作原理 - 标签名称允许为存根区域设置 tls 身份验证名称,并使用 unbound-control 转发控制命令。'@' 和 '#' 周围不应有空格。

答案2

不幸的是,你不能。有一个未解决的错误:

在转发配置中使用 TLS 不绑定不会验证服务器的证书

因此,使用 TLS 上的 Unbounds DNS 您的请求可能会被拦截。

答案3

“在转发配置中使用 TLS 解除绑定不会验证服务器的证书”的错误已于 2018 年 4 月 19 日解决:

转发器的 TLS 身份验证。

语法是 forward-addr: [@port][#tls-authentication-name] 并且可以使用以下方式设置 ca 包:tls-cert-bundle:“ca-bundle.pem”(或 ca-bundle.crt 文件)。

示例服务器:tls-cert-bundle:“/etc/pki/tls/certs/ca-bundle.crt”forward-zone:name:“。”forward-tls-upstream:yesforward-addr:9.9.9.9@853#dns.quad9.netforward-addr:1.1.1.1@853#cloudflare-dns.com

主题标签名称技巧使得 tls 身份验证名称也可以为 stub-zones 和 unbound-control 转发控制命令设置。在代码中也更容易。'@' 和 '#' 周围不应有空格。

当您指定 tls authname 时,端口号为 [...] 853。(对于其他端口号仍为 53)。

参考:评论 9

相关内容