Pas dy vjetësh zhvillim, konsorciumi ISC prezantoi versionin e parë stabil të degës së re të serverit DNS BIND 9.18. Mbështetje për degën 9.18 do të ofrohet për tre vjet deri në tremujorin e dytë të vitit 2025 si pjesë e një cikli të zgjeruar mbështetjeje. Mbështetje për degën 9.11 do të ndalojë në mars, ndërsa për degën 9.16 në mes të vitit 2023. Për zhvillimin e funksionaliteteve të versionit tjetër stabil të BIND është formuar një degë eksperimentale BIND 9.19.0.
Lëshimi i BIND 9.18.0 është i rëndësishëm për implementimin e mbështetjes për teknologjitë "DNS mbi HTTPS" (DoH, DNS over HTTPS) dhe DNS mbi TLS (DoT, DNS over TLS), si dhe mekanizmit XoT (XFR-over-TLS) për transferimin e sigurt të përmbajtjes së zonave DNS midis serverëve (mbështetet si dërgimi ashtu edhe pranimi i zonave përmes XoT). Edhe me konfigurimet përkatëse, një proces named tani mund të shërbejë jo vetëm kërkesat tradicionale të DNS, por edhe kërkesat e dërguara duke përdorur DNS-over-HTTPS dhe DNS-over-TLS. Mbështetja për klientët e DNS-over-TLS është e integruar në mjetin dig, i cili mund të përdoret për të dërguar kërkesa përmes TLS duke specifikuar flakën "+tls".
Implementimi i protokollit HTTP/2, që përdoret në DoH, bazohet në përdorimin e bibliotekës nghttp2, e cila është përfshirë në grupin e varësive të ndërtimit të mundshme. Sertifikatat për DoH dhe DoT mund të sigurohen nga përdoruesi ose të krijohen automatikisht gjatë nisjes.
Trajtimi i kërkesave me përdorimin e DoH dhe DoT aktivizohet përmes shtimit të opsioneve «http» dhe «tls» në direktivën listen-on. Për të mbështetur DNS-over-HTTP të pakriptuar, duhet specifikuar «tls none» në konfigurime. Çelësat përcaktohen në seksionin «tls». Portet standarde rrjetë 853 për DoT, 443 për DoH dhe 80 për DNS-over-HTTP mund të tejkalohen përmes parametrave tls-port, https-port dhe http-port. Për shembull:
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;}; }
Një nga veçoritë e implementimit të DoH në BIND është mundësia e transferimit të operacioneve të enkriptimit për TLS në një server tjetër, gjë që mund të jetë e nevojshme kur ruajtja e certifikatave TLS bëhet në një sistem tjetër (p.sh., në infrastrukturën me serverë web) dhe menaxhohet nga një personel tjetër. Mbështetja e DNS-over-HTTP të pa enkriptuar është realizuar për të thjeshtuar debugging-un dhe si një nivel për kalimin në një server tjetër brenda rrjetit të brendshëm (për transferimin e enkriptimit në një server të veçantë). Në serverin e veçantë për formimin e trafikut TLS mund të përdoret nginx, ngjashëm me mënyrën si organizohet mbështjellja HTTPS për faqet web.
Një veçori tjetër është integrimi i DoH si një transport i zakonshëm, i cili mund të përdoret jo vetëm për përpunimin e kërkesave të klientëve ndaj rezolverit, por edhe gjatë shkëmbimit të të dhënave midis serverëve, gjatë transferimit të zona nga serveri DNS autoritativ dhe gjatë përpunimit të çdo kërkese mbështetur nga transportet e tjera DNS.
Nga disavantazhet që mund të kompensohen duke çaktivizuar ndërtimin me DoH/DoT ose duke transferuar enkriptimin në një server tjetër, spikat komplikuar e përgjithshme e kodit - në përbërje shtohet një server HTTP i integruar dhe një bibliotekë TLS, të cilat potencialisht mund të përmbajnë dobësi dhe të shërbejnë si vektora shtesë për sulme. Gjithashtu, përdorimi i DoH rrit trafikun.
Kujtojmë se DNS-over-HTTPS mund të jetë e dobishme për të eliminuar rrjedhjen e informacioneve rreth emrave të hosteve që kërkohen përmes serverëve DNS të ofruesve, për të luftuar sulmet MITM dhe ndërrimin e trafikut DNS (për shembull, gjatë lidhjes me Wi-Fi publike), dhe për t'u përballur me bllokimet në nivel DNS (DNS-over-HTTPS nuk mund të zëvendësojë) VPN në fushën e anashkalimit të bllokimeve që zbatohen në nivelin DPI) ose për të organizuar funksionimin në rastin e pamundësisë për t'u drejtuar drejpërdrejt te serverët DNS (p.sh., kur punoni përmes një prokse). Në një situatë normale, kërkesat DNS dërgohen drejtpërdrejt te serverët DNS të caktuar në konfigurimin e sistemit, ndërsa në rastin e DNS-over-HTTPS, kërkesa për përcaktimin IP të përkushtuar e hostit inkorporohet në trafikun HTTPS dhe dërgohet në serverin HTTP, në të cilin rezolvuesi përpunon kërkesat përmes Web API.
«DNS over TLS» ndryshon nga «DNS over HTTPS» përmes përdorimit të protokollit standard DNS (zakonisht përdoret porta rrjetit 853), i futur në një kanal të enkriptuar të komunikimit, e organizuar përmes protokollit TLS me verifikimin e vlefshmërisë së hostit përmes certifikatave TLS/SSL, të verifikuara nga një autoritet certifikimi. Standarti ekzistues DNSSEC përdor enkriptimin vetëm për autentifikimin e klientit dhe serverit, por nuk mbron trafikun nga kapja dhe nuk garanton privatësinë e kërkesave.
Disa risitë e tjera:
- Janë shtuar parametrat tcp-receive-buffer, tcp-send-buffer, udp-receive-buffer dhe udp-send-buffer për të caktuar madhësitë e bufferave që përdoren gjatë dërgimit dhe pranimit të kërkesave për TCP dhe UDP. Në serverat e ngarkuar, rritja e bufferave të hyrjes do të ndihmojë në shmangien e humbjes së paketave në momentet e trafikëve maksimale, ndërsa ulja do të ndihmojë në shpëtimin e memorjes nga kërkesat e vjetra.
- Është shtuar një kategori e re log-eve "rpz-passthru", e cila lejon të regjistrohen veprimet e kalimit të RPZ (Response Policy Zones) veçmas.
- Në seksionin response-policy është shtuar opsioni "nsdname-wait-recurse", i cili, kur vendoset në vlerën "jo", e bën rregullin RPZ NSDNAME të aplikohet vetëm nëse për kërkesën janë gjetur serverë të autoritetit të emrave në cache, përndryshe rregulli RPZ NSDNAME injorohet, por informacioni nxirret në sfond dhe aplikohet për kërkesat e mëvonshme.
- Për shënimet me llojet HTTPS dhe SVCB është realizuar përpunimi i seksionit "ADDITIONAL".
- Janë shtuar lloje të personalizuara të rregullave update-policy — krb5-subdomain-self-rhs dhe ms-subdomain-self-rhs, që lejojnë kufizimin e përditësimit të shënimeve SRV dhe PTR. Në blloqet update-policy është shtuar gjithashtu mundësia për të vendosur kufizime të numrit të shënimeve, të veçanta për çdo lloj.
- Në daljen e utilitarit dig janë shtuar të dhëna mbi protokollin e transportit (UDP, TCP, TLS, HTTPS) dhe prefixet DNS64. Për qëllime të defektit, në dig është shtuar mundësia për të specifikuar një identifikues të veçantë të kërkesës (dig +qid=<num>).
- Është shtetur mbështetje për bibliotekën OpenSSL 3.0.
- Për të zgjidhur problemet me fraksionimin IP gjatë përpunimit të mesazheve DNS me madhësi të madhe, të cilat u njoftuan në iniciativën DNS Flag Day 2020, kodi që përmbante rregullimin e madhësisë së buferit EDNS në rastet e mungesës së përgjigjes nga kërkesa është eliminuar nga resolveri. Madhësia e buferit EDNS tani vendoset si e pandryshueshme (edns-udp-size) për të gjitha kërkesat dalëse.
- Sistemi i ndërtimit është kaluar në përdorimin e paketës nga autoconf, automake dhe libtool.
- Mbështetja për skedarët e zonës në formatin «map» (masterfile-format map) është ndaluar. Përdoruesve të këtij formati u rekomandohet të konvertojnë zonat në formatin raw përmes utilitarit named-compilezone.
- Mbështetja për drejtuesit e vjetër DLZ (Zona e Ngarkueshme Dinamikisht) është ndaluar, dhe në vend të tyre, janë futur modulet DLZ.
- Mbështetja për ndërtimin dhe ekzekutimin për platformën Windows është ndaluar. Degën më të fundit që mund të instalohet në Windows mbetet BIND 9.16.
Burimi: opennet.ru
