不受约束的 DNS:使用 ssl-upstream 选项和/或 vpn 接口进行故障排除

不受约束的 DNS:使用 ssl-upstream 选项和/或 vpn 接口进行故障排除

我最近想设置 unbound 来代替 dnscrypt 来解决我 rasp 上的 pi-hole 的查询。

目前 Raspbian 上可用的 unbound 版本是 1.6.0。

激活选项时

ssl-upstream: yes
ssl-service-key: "/etc/ssl/certs/ca-certificates.crt"

unbound 停止工作,我们在日志中看到类似这样的内容:

[1556709926] unbound[4394:0] info: server stats for thread 0: 23 queries, 7 answers from cache, 16 recursions, 0 prefetch
[1556709926] unbound[4394:0] info: server stats for thread 0: requestlist max 13 avg 1.875 exceeded 0 jostled 0
[1556709926] unbound[4394:0] info: mesh has 0 recursion states (0 with reply, 0 detached), 0 waiting replies, 16 recursion replies sent, 0 replies dropped, 0 states jostled out
[1556709926] unbound[4394:0] info: average recursion processing time 0.948223 sec
[1556709926] unbound[4394:0] info: histogram of recursion processing times
[1556709926] unbound[4394:0] info: [25%]=0.32768 median[50%]=0.603573 [75%]=0.920715
[1556709926] unbound[4394:0] info: lower(secs) upper(secs) recursions
[1556709926] unbound[4394:0] info:    0.000000    0.000001 1
[1556709926] unbound[4394:0] info:    0.008192    0.016384 1
[1556709926] unbound[4394:0] info:    0.016384    0.032768 1
[1556709926] unbound[4394:0] info:    0.262144    0.524288 4
[1556709926] unbound[4394:0] info:    0.524288    1.000000 6
[1556709926] unbound[4394:0] info:    1.000000    2.000000 1
[1556709926] unbound[4394:0] info:    2.000000    4.000000 2
[1556709926] unbound[4394:0] debug: cache memory msg=33040 rrset=33040 infra=17292 val=40931
[1556709926] unbound[4394:0] debug: switching log to stderr

我也尝试在 rasp 本身上设置 unbound 以通过 vpn 连接发送查询,但我显然无法通过 vpn 连接进行解析。我尝试通过从 vpn 连接硬编码 ip 地址来设置它,结果相同。我尝试分别使用 udp 和 tcp,结果相同

我是不是漏掉了什么?我通过 VPN 建立了连接,所以这显然不是问题所在。而且,一旦我停用 VPN 连接,问题就会消失。还是说这一切都应该在 1.6 中发生?

有人对此有想法吗?

提前致谢。

答案1

这些看起来像是错误的选项,至少ssl-service-key应该指定实例的私钥(而不是受信任 CA 的列表!),并且您总是会将它与 中的公钥结合使用ssl-service-pem,否则您不应该使用它。对于我的 Debian Stretch,以下配置允许在所有地址(对于 IPv4 和 IPv6)上侦听端口 53 上的普通 DNS 查询以及端口 853 上的 DoT(DNS-over-TLS)查询。

server:
  #verbosity: 2
  interface: 0.0.0.0
  interface: ::0
  interface: 0.0.0.0@853
  interface: ::0@853
  #tls-cert-bundle: /etc/ssl/certs/ca-certificates.crt
  ssl-service-key: "/var/lib/acme/live/your.domain.example.com/privkey"
  ssl-service-pem: "/var/lib/acme/live/your.domain.example.com/fullchain"
  ssl-port: 853

这是最终解析器的示例,因此它不使用转发器(您需要forward-zone为此进行阻止。此外,您可以查看/usr/share/doc/unbound/examples/unbound.conf带有说明的示例配置。在我的示例中,我使用acmetool自动生成密钥/证书/var/lib/acme/live,但您可以使用任何您想要的方式(如果您不关心安全性,甚至可以省略它)。

相关内容