DNS over TLS
DNS over TLS (DoT) ist ein Protokoll, mit dem DNS-Abfragen, d. h. vor allem Abfragen zur Auflösung von Hostnamen in IP-Adressen und umgekehrt, über das Transport-Layer-Security-Protokoll verschlüsselt übertragen werden. Es handelt sich um einen von der Internet Engineering Task Force vorgeschlagenen Standard, RFC 7858.[1]
| DoT (DNS over TLS) | |||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Familie: | Internetprotokollfamilie | ||||||||||||||||||||||||
| Einsatzgebiet: | verschlüsseltes DNS | ||||||||||||||||||||||||
| Port: | 853/TCP | ||||||||||||||||||||||||
| |||||||||||||||||||||||||
| Standards: | RFC 7858 (2016) RFC 8310 (2018) | ||||||||||||||||||||||||
Protokoll
Bei DNS over TLS werden DNS-Anfragen und Antworten über eine mit TLS gesicherte Verbindung übertragen, die zwischen dem Client wie bspw. dem Webbrowser und dem Server des DNS-Anbieters aufgebaut wird. TLS (Transport Layer Security, weitläufiger bekannt unter der Vorgängerbezeichnung Secure Sockets Layer SSL) ist ein Verschlüsselungsprotokoll zur sicheren Datenübertragung im Internet. Der für DNS over TLS zum Verbindungsaufbau von der IETF standardisierte Port ist 853.[2]
Sicherheit
Die DNS-Abfrage ist in diesem Fall über das Verschlüsselungsprotokoll Transport Layer Security (TLS) gesichert und – im Gegensatz zum ungesicherten DNS – gegen Ausspähung und Manipulation durch einen Man-in-the-Middle-Angriff geschützt. Dadurch soll sowohl die Privatsphäre der Anwender vor Lauschern geschützt als auch die Einschleusung manipulierter DNS-Informationen verhindert werden. Zudem sollen damit Denial-of-Service-Attacken erschwert werden.[3]
Implementierungen
Auf Client-Seite wird DNS over TLS von Android ab Android P ohne Zusatzprogramme vom Betriebssystem direkt unterstützt.[4] Dabei erlaubt das Android Pie dem Nutzer, den bevorzugten DoT-Server explizit in den Einstellungen einzutragen. Das Betriebssystem Windows hat z. Z. keinen[5] eigenen Support für DoT, weswegen hier auf lokale DNS-Resolver gesetzt werden muss, die die DNS-Anfragen mittels dem Localhost zuerst intern auf dem Client umleiten und dann zu den entsprechenden öffentlichen Servern weiterleiten. Auf Server-Seite wird es von verschiedenen Programmen unterstützt. So wird es in DNSDist von PowerDNS in der aktuellen Version 1.3.0. unterstützt.[6] Name Server Daemon unterstützt DoT seit Version 4.2.[7] Bei BIND ist es in Kombination mit dem Tool stunnel möglich, DNS over TLS zu verwenden.[8] Technitium DNS Servers hat bekannt gegeben, dass sie DNS over TLS seit Version 1.3 unterstützen.[9]
DNS over TLS wird mittlerweile frei verfügbar von mehreren öffentlichen DNS-Provider angeboten.[10]
Unterschiede zu anderen Protokollen
Standardmäßig werden DNS-Anfragen und Antworten unverschlüsselt mit UDP übertragen.
Für die Implementierung einer Verschlüsselung gibt es aktuell vor allem drei Optionen, nämlich:
- DNS over TLS (DoT)
- DNS over HTTPS (DoH)
- DNSCrypt
Bei DNS over TLS werden normale DNS-Anfragen über einen TLS-Tunnel geschickt, während bei DNS over HTTPS eine HTTPS-Verbindung aufgebaut wird, über die die Kommunikation erfolgt. Dies führt dazu, dass – falls der DNS-Provider auf Port 443 zusätzlich eine Website anbietet – für einen Lauscher im Gegensatz zu DNS over TLS auch nicht ersichtlich ist, ob DNS-Anfragen gestellt oder Webinhalte abgerufen werden. Dafür ist DNS over TLS deutlich schneller. Drittens gibt es noch DNSCrypt, bei dem Anfragen und Antworten verschlüsselt direkt per UDP oder TCP übertragen werden.[11][12]
Literatur
- Mark E. Jeftovic: Managing Mission - Critical Domains and DNS. S. 303 eingeschränkte Vorschau in der Google-Buchsuche
- Michael Dooley, Timothy Roone: DNS Security Management. S. 168 eingeschränkte Vorschau in der Google-Buchsuche
Weblinks
- DNS Privacy Project: dnsprivacy.org
- Duane Wessels, John Heidemann, Liang Zhu, Allison Mankin, Paul Hoffman: RFC 7858 – Specification for DNS over Transport Layer Security (TLS) [Errata: RFC 7858]. Mai 2016. (aktualisiert durch RFC 8310, englisch)
Einzelnachweise
- Duane Wessels, John Heidemann, Liang Zhu, Allison Mankin, Paul Hoffman: RFC 7858 – Specification for DNS over Transport Layer Security (TLS). Mai 2016. (englisch)
- Duane Wessels, John Heidemann, Liang Zhu, Allison Mankin, Paul Hoffman: RFC 7858 – Specification for DNS over Transport Layer Security (TLS). Mai 2016. Abschnitt 3: Establishing and Managing DNS-over-TLS Sessions. (englisch)
- DNS mit Privacy und Security vor dem Durchbruch heise.de
- Erik Kline, Ben Schwartz: DNS over TLS support in Android P Developer Preview. In: Android Developers Blog. 13. April 2018, abgerufen am 30. Juli 2018.
- Windows will improve user privacy with DNS over HTTPS. 18. November 2019, abgerufen am 16. Oktober 2020 (englisch).
- DNS-over-TLS. Abgerufen am 31. Juli 2018 (englisch).
- News - NSD 4.2.0 released. Abgerufen am 11. Oktober 2019 (englisch).
- Bind - DNS over TLS.
- Configuring DNS Server For Privacy & Security. In: blog.technitium.com. Abgerufen am 19. Juli 2018 (englisch).
- Troubleshooting DNS over TLS.
- Tenta DNS over TLS vs DNSCrypt. In: Tenta Browser Blog. (tenta.com [abgerufen am 5. August 2018]).
- Home page of the DNSCrypt project [DNS security]. Abgerufen am 5. August 2018 (englisch).