DNS-serveri BIND arendajad teatasid, et nad on eksperimendiversioonis 9.17 lisanud serveripoolse toe tehnoloogiatele 'DNS HTTPS kaudu' (DoH, DNS over HTTPS) ja DNS TLS kaudu (DoT, DNS over TLS), samuti mehhanismi XFR-over-TLS DNS-zone sisu turvaliseks edastamiseks serverite vahel. DoH on testimiseks saadaval versioonis 9.17.10, samas kui DoT tugi on saadaval alates versioonist 9.17.7. Pärast stabiliseerumist kantakse DoT ja DoH tugi tagasi stabiilsesse versiooni 9.16.
HTTP/2 protokolli, mida kasutatakse DoH-is, põhineb nghttp2 teegi kasutamisel, mis kuulub projektide sõltuvuste hulka (tulevikus plaanitakse teegi liigutamist valikuliste sõltuvuste hulka). Toetatakse nii krüpteeritud (TLS) kui ka krüpteerimata ühendusi HTTP/2 kaudu. Vastava seadistuse korral võib üks named protsess teenindada mitte ainult traditsioonilisi DNS-päringuid, vaid ka päringuid, mis on saadetud DoH (DNS-over-HTTPS) ja DoT (DNS-over-TLS) abil. HTTPS-i tugi kliendi poolel (dig) pole veel rakendatud. XFR-over-TLS toetus on saadaval nii sissetulevate kui ka väljaminevate päringute jaoks.
Kasutades DoH ja DoT-i, lülitatakse päringute töötlemine sisse, lisades http ja tls valikud käsu listen-on alla. Krüpteerimata DNS-over-HTTP toetamiseks tuleb seadistustes märkida „tls none“. Võtmed määratakse sektsioonis „tls“. Standardsed võrgupordid 853 DoT-i, 443 DoH-i ja 80 DNS-over-HTTP jaoks saab üle kirjutada parameetrite tls-port, https-port ja http-port kaudu. Näiteks: tls local-tls { key-file "/path/to/priv_key.pem"; cert-file "/path/to/cert_chain.pem"; }; http local-http-server { endpoints { "/dns-query"; }; }; options { https-port 443; listen-on port 443 tls local-tls http myserver {any;}; }
DoH rakenduse eripära BIND-is on see, et see integreerib ühisena transporti, mida saab kasutada mitte ainult kliendipäringute töötlemiseks resolverile, vaid ka andmete vahetamiseks serverite vahel, tsoonide edastamiseks autoriteetse DNS-serveriga ja mis tahes päringute töötlemiseks, mida toetatakse teiste DNS-i transpordiga.
Teine omadus on TLS-krüpteerimise operatsioonide edastamine teisele serverile, mis võib olla vajalik olukordades, kus TLS-sertifikaatide salvestamine toimub teises süsteemis (näiteks veebiserverite infrastruktuuris) ja seda haldab teine personal. Toetust mittekrüpteeritud DNS-over-HTTP on rakendatud tõrkeotsingu lihtsustamiseks ja see toimib tasemena edastamiseks sisemises võrgus, mille alusel saab teises serveris korraldada krüpteerimist. TLS-liikluse genereerimiseks võib edastusserveris kasutada nginx'i, sarnaselt sellele, kuidas HTTPS-i ümbritsemine veebisaitide jaoks on organiseeritud.
Tuletame meelde, et DNS-over-HTTPS võib olla kasulik, et vältida andmete leket päringute nimekirjast DNS-teenuse pakkujate kaudu, võidelda MITM-rünnakute ja DNS-liikluse asendamisega (näiteks avaliku Wi-Fi kaudu ühenduse loomisel), samuti vastu seista DNS-i taseme blokeerimisele (DNS-over-HTTPS ei saa asendada VPN DPI-taseme blokeeringute ületamisel või töö korraldamisel, kui ei ole võimalik otse DNS-serveritega ühendust saada (nt proxy kaudu töötamisel). Kui tavaliselt DNS-päringud saadetakse otse süsteemi konfigureeritud DNS-serveritele, siis DNS-over-HTTPS korral on hosti määramine kaasatud HTTPS-i liiklusesse ja saadetud HTTP-serverile, kus resolver käitleb päringud Web API kaudu. IP-aadressid Päring hosti määramiseks on saadetud HTTPS-i liikluses ja suunatud HTTP-serverisse, kus resolver töötleb päringud Web API kaudu.
DNS over TLS erineb DNS over HTTPS-ist, kuna kasutab tavapärast DNS-protokolli (tavaliselt kasutatakse võrgupesa 853), mis on krüpteeritud TLS-protokolli abil loodud sidekanalis ja mille käigus kontrollitakse hosti kehtivust TLS/SSL-sertifikaatide kaudu, mis on allkirjastatud sertifitseerimiskeskuse poolt. Olemasolev DNSSEC standard kasutab krüptimist ainult kliendi ja serveri autentimiseks, kuid ei kaitse liiklust pealtkuulamise eest ega garanteeri päringute konfidentsiaalsust.
Allikas: opennet.ru
