este DNSSEC util?
La asta nu se poate răspunde (pentru orice cuvânt ai pune în loc de „DNSSEC” în acea propoziție) până când nu începi să descrii împotriva a ceea ce vrei să aperi.
Când ai lista riscurilor/vulnerabilităților/amenințărilor față de care vrei să te aperi atunci poți afla ce soluții există și poți stabili pentru fiecare soluție cât de utilă este sau nu.
DNSSEC este util împotriva unor probleme DNS, dar nu pentru toate. Se introduce probleme noi (întreținerea continuă a semnăturilor și cheilor pentru unul), dar și funcții noi (memorizarea agresivă în cache a tot ce se află sub un NXDOMAIN dacă este validat corespunzător de DNSSEC).
Chiar dacă un rezolutor DNS validează faptul că un server de nume autorizat a trimis datele corecte nemodificate - cum împiedicăm rezolutorul DNS să trimită răspuns DNS falsificat clientului DNS?
Acest lucru nu este nimic diferit de azi: dacă utilizați orice rezolutor DNS public (8.8.8.8, 1.1.1.1, 9.9.9.9 pentru a numi câteva), desigur că sunteți COMPLET în riscul ca acesta să vă trimită date gunoi. Acesta este un compromis. DoH/DoT nu rezolvă nimic aici, deoarece va proteja doar transmisia de conținut între dvs. și acest solutor, nu și conținutul în sine. Ce conținut este „protejat” de DNSSEC, atâta timp cât numele de domeniu pentru care efectuați interogări este protejat DNSSEC (care este o parte pe care o uitați în întrebări și care îngreunează de fapt DNSSEC: proprietarul numelui de domeniu trebuie să îl activeze ȘI Rezolvatorii DNS trebuie să utilizeze noile semnături și să facă validarea; dacă o parte a acestei ecuații cu 2 variabile nu este acolo, DNSSEC nu este util, deoarece pur și simplu nu poate funcționa)
Deci întrebarea se învârte mai mult în jurul: ce server de nume recursiv să folosească și unde ar trebui să ruleze. Desigur, pentru un control maxim, doriți ca solutorul să ruleze pe mașinile DVS. Poate folosi în continuare resurse externe și soluții DNS acolo, dar validarea finală DNSSEC ar trebui să aibă loc pe serverul dvs. de nume, nu pe alții. Desigur, aceasta este mai multă muncă decât să te bazezi pe orice altă resursă care face toate lucrurile DNSSEC „gratuit” pentru tine.
dacă rezolutorul DNS nu acceptă DNSSEC, mai poate trimite interogări DNS către un server de nume autorizat care are configurat DNSSEC pentru zona sa?
Da.
Un rezolutor care dorește să aibă date DNSSEC trebuie să comute indicatorul „DO” în cererea sa.
Din săpa documentație:
+[nu]dnssec
Această opțiune solicită ca înregistrările DNSSEC să fie trimise prin setarea bitului DNSSEC OK (DO) în înregistrarea OPT din secțiunea suplimentară a interogării.
Pe care îl puteți vedea așa:
$ dig +dnssec example.com
; <<>> DiG 9.16.18 <<>> +dnssec example.com
;; opțiuni globale: +cmd
;; Se trimite:
;; ->>HEADER<<- opcode: QUERY, stare: NOERROR, id: 40492
;; steaguri: rd ad; ÎNTREBARE: 1, RĂSPUNS: 0, AUTORITATE: 0, SUPLIMENTARE: 1
;; PSEUDOSECȚIE OPT:
; EDNS: versiunea: 0, steaguri: do; udp: 4096
^^
Sau din §3.2.1 din RFC 4035:
3.2.1. Bitul DO
Partea de rezoluție a unui server de nume recursiv conștient de securitate TREBUIE setat
bitul DO la trimiterea cererilor, indiferent de starea DO
bit în cererea de inițiere primită de partea serverului de nume. Dacă
bitul DO dintr-o interogare de inițiere nu este setat, partea serverului de nume
TREBUIE să elimine orice RR DNSSEC de autentificare din răspuns, dar TREBUIE
NU eliminați orice tip DNSSEC RR care interogarea inițială în mod explicit
solicitat.
Dacă clientul DNS (resolvent recursiv) face acest lucru ȘI dacă serverul de nume autorizat care este interogat are DNSSEC activat (deci RRSIG/NSEC/NSEC3 tipuri de înregistrări în zone), atunci rezolutorul va obține acele înregistrări și apoi poate face validarea DNSSEC.
Când (un stub/client DNS nu este un rezolutor) interogați un rezolutor recursiv, aveți opțiunea de a utiliza CD steag, definit astfel:
+[nu]cdflag
Această opțiune setează [sau nu setează] bitul CD (verificarea dezactivată) în interogare. Acest lucru solicită serverului să nu efectueze validarea DNSSEC a răspunsurilor.
(atentie la posibila dubla negatie).
Dacă clientul nu utilizează CD, atunci validarea DNSSEC NU este dezactivată, prin urmare este activată și serverul de eliminare fie va furniza răspunsul final (dacă DNSSEC este activat pentru înregistrare ȘI validarea a fost un succes) sau va răspunde cu NXDOMAIN dacă validarea DNSSEC a eșuat.
Steagul ANUNȚ va fi setat să indice că toate înregistrările au fost validate ca fiind sigure, dacă este cazul (dacă interogarea provine de la un server de nume recursiv, acel flag nu poate exista de la unul autorizat, deoarece aveți nevoie de lanțul DNSSEC complet de la rădăcina IANA pentru a valida orice înregistrare dată)