Izdanje DNS poslužitelja BIND 9.18.0 s podrškom za DNS-over-TLS i DNS-over-HTTPS

Po dveh letih razvoja je konzorcij ISC predstavil prvo stabilno različico nove pomembne veje DNS strežnika BIND 9.18. Podpora veji 9.18 bo omogočena tri leta do drugega trimesečja 2025 v okviru razširjenega življenjskega cikla podpore. Podpora veji 9.11 se bo končala marca, veji 9.16 pa sredi leta 2023. Za nadaljnji razvoj funkcionalnosti naslednje stabilne različice BIND je bila oblikovana poskusna veja BIND 9.19.0.

Izdaja BIND 9.18.0 je pomembna zaradi uvedbe podpore tehnologijam "DNS čez HTTPS" (DoH, DNS over HTTPS) in DNS čez TLS (DoT, DNS over TLS), pa tudi mehanizma XoT (XFR-over-TLS) za varno prenos vsebine DNS con vmes med strežniki (podpira tako oddajo kot sprejem con po XoT). Ob ustreznih nastavitvah lahko en proces named zdaj obravnava ne le tradicionalne DNS poizvedbe, temveč tudi poizvedbe, poslane z uporabo DNS-over-HTTPS in DNS-over-TLS. Klientska podpora DNS-over-TLS je vgrajena v orodje dig, ki ga je mogoče uporabiti za pošiljanje poizvedb preko TLS z uporabo zastavice " +tls".

Implementacija protokola HTTP/2, ki se uporablja v DoH, temelji na knjižnici nghttp2, ki je vključena med obvezne odvisnosti pri sestavljanju. Certifikati za DoH in DoT lahko zagotovi uporabnik ali se samodejno ustvarijo ob zagonu.

Obravnava poizvedb z uporabo DoH in DoT se omogoči z dodajanjem možnosti "http" in "tls" v direktivi listen-on. Za podporo nešifriranemu DNS-over-HTTP je treba v nastavitvah navesti "tls none". Ključi so določeni v razdelku "tls". Standardne omrežne porte 853 za DoT, 443 za DoH in 80 za DNS-over-HTTP je mogoče prekoračiti z nastavitvami tls-port, https-port in http-port. Na primer:

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;}; }

Med značilnostmi implementacije DoH v BIND izstopa možnost prenosa dešifriranja za TLS na drug strežnik, kar je lahko potrebno v situacijah, kjer se TLS certifikati hranijo na drugem sistemu (na primer v infrastrukturi z web strežniki) in jih upravlja drugo osebje. Podpora za nezapleten DNS-over-HTTP je реализирана za olajšanje odpravljanja napak in kot raven za usmerjanje na drug strežnik v notranji mreži (za prenos dešifriranja na ločen strežnik). Na prenosnem strežniku za generiranje TLS prometa se lahko uporablja nginx, podobno kot se organizira obkrožitev HTTPS za spletna mesta.

Druga značilnost je integracija DoH kot skupnega transporta, ki se lahko uporablja ne le za obdelavo zahtevkov strankam do resolverja, ampak tudi pri izmenjavi podatkov med strežniki, pri prenosu con med avtoritativnim DNS strežnikom in pri obdelavi vseh zahtevkov, ki jih podpirajo drugi DNS transporti.

Med slabostmi, ki jih je mogoče odpraviti z izklopom gradnje z DoH/DoT ali prenosom dešifriranja na drug strežnik, izstopa splošna zapletenost kode — v sestavo se dodata vgrajeni HTTP strežnik in TLS knjižnica, ki lahko potencialno vsebujejo ranljivosti in delujejo kot dodatni vektorji za napade. Prav tako se ob uporabi DoH povečuje promet.

Podsjećamo da DNS-over-HTTPS može biti koristan za isključivanje curenja informacija o traženim nazivima poslužitelja putem DNS poslužitelja pružatelja usluga, borbu protiv MITM napada i zamjene DNS prometa (na primjer, prilikom povezivanja na javne Wi-Fi mreže), te protiv blokada na razini DNS (DNS-over-HTTPS ne može zamijeniti VPN u području zaobilaženja blokada, implementiranih na razini DPI) ili za organizaciju rada kada nije moguće izravno pristupiti DNS poslužiteljima (na primjer, prilikom rada putem proxyja). Ako se u uobičajenom scenariju DNS upiti izravno šalju na određene DNS poslužitelje navedene u konfiguraciji sustava, tada se u slučaju DNS-over-HTTPS upit za određivanje IP-naslove naziva ugrađuje u HTTPS promet i šalje na HTTP poslužitelj, gdje resolver obrađuje upite putem Web API-ja.

«DNS over TLS» razlikuje se od «DNS over HTTPS» primjenom standardnog DNS protokola (obično koristi mrežni port 853), omotanog u šifrirani komunikacijski kanal, organiziran uz pomoć TLS protokola s provjerom valjanosti poslužitelja putem TLS/SSL certifikata koje je ovjerio certifikacijski autoritet. Postojeći standard DNSSEC koristi šifriranje samo za autentifikaciju klijenta i poslužitelja, ali ne štiti promet od presretanja i ne jamči povjerljivost upita.

Nekatere druge novosti:

  • Dodane so nastavitve tcp-receive-buffer, tcp-send-buffer, udp-receive-buffer in udp-send-buffer za določitev velikosti predpomnilnikov, ki se uporabljajo pri pošiljanju in prejemanju zahtevkov po TCP in UDP. Na obremenjenih strežnikih povečanje vhodnih predpomnilnikov preprečuje zavračanje paketov v trenutkih vršne obremenitve, medtem ko zmanjšanje pomaga odpraviti zamašitev pomnilnika s starimi zahtevki.
  • Dodana je nova kategorija logov „rpz-passthru“, ki omogoča ločeno beleženje dejanj prenosa RPZ (Response Policy Zones).
  • V razdelku response-policy je dodana možnost „nsdname-wait-recurse“, pri čemer se ob nastavitvi na „no“ pravila RPZ NSDNAME uporabljajo le, če so za zahtevo najdene prisotne v predpomnilniku avtoritativne imenske strežnike, sicer se pravilo RPZ NSDNAME ignorira, vendar se informacije v ozadju izvlečejo in uporabe za naslednje zahteve.
  • Za zapise z vrstami HTTPS in SVCB je реализиран obdelava razdelka „ADDITIONAL“.
  • Dodane so prilagodljive vrste pravil update-policy — krb5-subdomain-self-rhs in ms-subdomain-self-rhs, ki omogočajo omejevanje posodobitev zapisov SRV in PTR. V blokih update-policy je bila dodana tudi možnost nastavitve omejitev števila zapisov, posebej za vsako vrsto.
  • V izhod orodja dig so dodane informacije o transportnem protokolu (UDP, TCP, TLS, HTTPS) in predponah DNS64. Za namene odpravljanja napak je v dig dodana možnost določanja posebne identifikacijske številke zahteve (dig +qid=).
  • Dodana je podpora za knjižnico OpenSSL 3.0.
  • Za reševanje težav z IP-fragmentacijo pri obdelavi DNS-sporočil velike velikosti, označenih z iniciativo DNS Flag Day 2020, je bilo iz resolverja odstranjeno kodo, ki je izvajala prilagoditev velikosti predpomnilnika EDNS v primeru odsotnosti odgovora na zahtevo. Velikost predpomnilnika EDNS je zdaj nastavljena kot stalna (edns-udp-size) za vse odhodne zahteve.
  • Sistem sestavljanja je bil prenesen na uporabo kombinacije autoconf, automake in libtool.
  • Podpora za datoteke con v formatu „map“ (masterfile-format map) je bila prekinjena. Uporabnikom tega formata je priporočeno, da pretvorijo cone v format raw s pomočjo orodja named-compilezone.
  • Podpora za stare gonilnike DLZ (Dynamically Loadable Zones) je bila prekinjena, na njihovem mestu pa so prišli moduli DLZ.
  • Podpora za sestavljanje in zagon na platformi Windows je bila prekinjena. Zadnja različica, ki jo je mogoče namestiti v Windows, ostaja BIND 9.16.

Izvor: opennet.ru

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster