Wie konfiguriere ich Unbound, um das Zertifikat eines DNS-über-TLS-Servers zu validieren?

Wie konfiguriere ich Unbound, um das Zertifikat eines DNS-über-TLS-Servers zu validieren?

Ich habe Unbound so konfiguriert, dass es DNS über TLS mit der folgenden Konfiguration verwendet. Wie kann ich Unbound so konfigurieren, dass das Upstream-Zertifikat anhand eines Hostnamens validiert wird?

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

Antwort1

Der Fehlerbericht zum Hinzufügen von Unterstützung für die Validierung des Zertifikats des Upstream-DNS-Servers wurde am 19. April 2018 behoben.

Anpassung des Beispiels ausKommentar 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

Es gibt auch eine Erklärung, wie es funktioniert – der Hashtag-Name ermöglicht die Festlegung des TLS-Authentifizierungsnamens für Stub-Zonen und mit unbound-control-Forward-Control-Befehlen. Um das „@“ und „#“ herum sollten keine Leerzeichen stehen.

Antwort2

Leider ist das nicht möglich. Es gibt hierfür einen ungelösten Fehler:

unbound mit TLS in einer Weiterleitungskonfiguration überprüft das Zertifikat des Servers nicht

Mit Unbounds DNS über TLS können Ihre Anfragen also abgefangen werden.

Antwort3

Der Fehler „Unbound mit TLS in einer Weiterleitungskonfiguration überprüft das Zertifikat des Servers nicht“ wurde am 19. April 2018 behoben:

TLS-Authentifizierung für Weiterleitungen.

Die Syntax lautet „forward-addr: [@port][#tls-authentication-name]“. Und das CA-Bundle kann mit „tls-cert-bundle: "ca-bundle.pem" (oder der Datei ca-bundle.crt)“ festgelegt werden.

Beispielserver: tls-cert-bundle: "/etc/pki/tls/certs/ca-bundle.crt" Forward-Zone: Name: "." Forward-TLS-Upstream: Ja Forward-Adresse: 9.9.9.9@853#dns.quad9.net Forward-Adresse: 1.1.1.1@853#cloudflare-dns.com

Der Hashtag-Namenstrick ermöglicht es, dass der TLS-Authentifizierungsname auch für z. B. Stub-Zonen und mit unbound-control-Forward-Control-Befehlen festgelegt werden kann. Es war auch im Code einfacher. Es sollten keine Leerzeichen um das „@“ und „#“ stehen.

Die Portnummer ist [...] 853, wenn Sie einen TLS-Authentifizierungsnamen angeben. (Und weiterhin 53 für andere).

Referenz:Kommentar 9.

verwandte Informationen