Die Browser Chrome und Firefox möchten in kommenden Versionen DNS-over-HTTPS (DoH) implementieren. Im Grunde ist es, wie der Name schon andeutet, DNS in HTTPS. Ich persönlich empfinde es als ziemlichen overhead. DNS wird erst in TLS und dann nochmal HTTP gekapselt. Warum lässt man nicht einfach den HTTP Kram weg und bleibt bei TSL wie es der alternative DNS-over-TLS Vorschlag vorsieht?
Aber zurück zum Thema. Firefox und Chrome aktivieren DNS-over-HTTPS.
Firefox
Mozilla möchte bei Firefox noch im September DNS-over-HTTPS zuerst für Benutzer in Amerika aktivieren. Wenn es nicht abgeschaltet wird, werden standardmäßig die DoH Server von Cloudflare genutzt und erst im Fallback die Resolver vom OS. Alle Anfragen werden also erst mal an ein amerikanisches Unternehmen geschickt...
Nicht nur aus Vertrauenssicht, sondern auch technisch halte ich das für eine ganz blöde Idee. Wenn der DNS Resolver des OS ignoriert wird, ist z.B. Split DNS, gängiges Szenario in Unternehmen und einigen "HomeLab"ern, nicht mehr ohne zusätzlichen Aufwand möglich.
DoH zentral im Firefox deaktivieren
Die einfachste, aber bisher zumindest wenig kommunizierte, Variante DoH im Firefox zu deaktivieren, ist, im eigenen DNS Server die Domain use-application-dns.net mit NXDOMAIN antworten zu lassen. Firefox fragt vor Benutzung von DoH diesen Record ab. Wenn mit NXDOMAIN geantwortet wird, macht Firefox die DNS Auflösung wie gewohnt mit Unterstützung des OS Resolvers und ohne DoH. Gefunden habe ich diese Möglichkeit in der Mozilla Knowledgebase "Configuring Networks to Disable DNS over HTTPS".
Beispiel für einen nxdomain Eintrag in dnsmasq:
address=/use-application-dns.net/
Allerdings ist dies kein Standard sondern Firefox spezifisch. Denn Chrome...
Chrome
Denn Chrome geht ab dem experimentellen Build 78 (Branch: 5. September / Voraussichtlicher Stable Release: 22. Oktober) andere Wege und macht es in der Standardeinstellung meiner Meinung nach ein bisschen besser als Firefox. Laut dem DoH Eintrag im Chromium Developers Wiki wird Chrome eine kleine Liste mitbringen, in der steht, für welchen normalen DNS Server ein DoH equivalenter DNS Server zur Verfügung steht. Sprich, wenn das OS Cloudflares DNS Server nutzt, wird Chrome die DNS Auflösung "upgraden" und den DoH Server von Cloudflare nutzen. Steht kein equivalenter DoH Server zur Verfügung, wird der DNS Server vom OS genutzt. Allerdings soll Chrome bisher keine use-application-dns.net Abfrage unterstützen...
Fazit
Technisch versucht DNS-over-HTTPS mehr Vertrauen in DNS zu schaffen in dem es die DNS Anfragen verschlüsselt. Allerdings gibt es noch keinen standardisierten Weg DoH zu (de-)aktivieren / konfigurieren. Um DoH zentral konfigurieren zu können wollen beide Browser für Active Directory (AD) verwaltete Windows Systeme Gruppenrichtlinien anbieten. Aber *nix Systeme, Smartphones, Umgebungen mit Split DNS ohne AD, etc... , sind außen vor.
Mozilla versucht einen zentralen Ansatz mit der use-application-dns.net Domain. Aber ohne globale Unterstützung ist das nur eine Insellösung. Besser fände ich Lösungen, die bestehende Konfigurationsprotokolle nutzen, wie DHCPv4, DHCPv6 oder Router Advertisments. Dafür sind sie da.
Oder, wenn man schon jetzt für jedes Gerät im Netzwerk verschlüsseltes DNS anbieten möchte, man konfiguriert als Upstream für den internen DNS Server z.B. unbound der wiederum über DNS-over-TLS auflöst. So habe ich es für mich privat gelöst.