DNS filter vo VPN: blokovanie názvov neblokuje reklamy
Pravidlo dnsmasq odpovedá na názvy kódom NXDOMAIN; nikdy nečíta stránku. Porovnajte to s tým, čo robí blokátor na strane klienta, skôr než sľúbite odstraňovanie reklám.
Jeden riadok dnsmasq môže odpovedať na názov kódom NXDOMAIN a to je celý mechanizmus. Nikdy nečíta HTML, nekontroluje cestu požiadavky a nevidí, čo aplikácia robí so spojením, ktoré už otvorila. Porovnanie s rozšírením prehliadača je preto porovnaním dvoch rôznych úloh. Jedno rozhoduje, či sa názov vyrieši; druhé rozhoduje, čo sa stane potom.
Čo vlastne filter názvov ovláda
Možnosť address=/metrics.example/, bez čohokoľvek za poslednou lomkou, spôsobí, že resolver vráti NXDOMAIN pre tento názov a jeho subdomény. Ponechanie adresy prázdnej je dôležitá časť: vyhne sa odosielaniu klientov na nesúvisiaci náhradný server alebo predstieraniu, že adresa loopback je skutočným cieľom. Príručka dnsmasq popisuje túto formu ako negatívnu odpoveď, nie ako presmerovanie.
Všetko, čo pravidlo dokáže, vyplýva z tohto jediného rozhodnutia. Klient, ktorý sa pýta tento resolver, dostane negatívnu odpoveď; klient, ktorý sa pýta iný resolver, dostane to, čo povie on. Filter nevie, ktorú cestu, ktorý reťazec dopytu alebo ktorý účet by aplikácia použila.
Táto podrobnosť je dôležitá, pretože jedno meno hostiteľa často slúži viacerým účelom. Prihlasovacie koncové body, obrázky a sledovanie môžu zdieľať doménu a pravidlo, ktoré odstráni celý názov, môže s ním odstrániť aj pracovný postup. Politika na úrovni názvu musí tento kompromis prijať alebo zvoliť užšie názvy.
V čom sa blokátor na strane klienta líši
Rozšírenie prehliadača vidí požiadavku skôr, než odíde, takže dokáže porovnať cestu URL, zrušiť konkrétnu požiadavku a skryť prvok, ktorý by zobrazil výsledok. Môže povoliť example.com/article a zároveň odmietnuť example.com/ads/, čo žiadna odpoveď DNS nevyjadrí. Ten pohľad na úrovni cesty je schopnosť, ktorú resolver jednoducho nemá. To je aj dôvod, prečo sa zoznam filtrov vytvorený pre jeden nástroj v druhom správa len zriedka rovnako.
Cenou je rozsah. Táto ochrana žije v jednom prehliadači, v jednom profile, na jednom zariadení a zmizne, keď používateľ prejde na inú aplikáciu. DNS filter nastavený na bráne pokrýva každé zariadenie, ktoré používa resolver brány, vrátane zariadení, kde sa nedá nainštalovať žiadne rozšírenie.
Ani jedno z riešení nie je samo osebe úplné. DNS filter nedokáže odstrániť identifikátor, ktorý stránka už odoslala, a rozšírenie prehliadača nedokáže ochrániť aplikáciu, ktorá ho nikdy nenačíta.
Cesta resolvera rozhoduje, či sa niečo z toho uplatní
VPN môže inzerovať server DNS a napriek tomu nedostávať každý dopyt. Prehliadač s nastaveným šifrovaným DNS, aplikácia s vlastným resolverom alebo zariadenie na sieťovej ceste, ktorá obchádza bránu, budú hľadať inde. Mobilné platformy čoraz častejšie ponúkajú nastavenie súkromného DNS, ktoré potichu prepisuje to, čo navrhuje tunel.
Preto testujte cestu, nie politiku. Opýtajte sa zamýšľaného resolvera priamo z brány, potom sa ho opýtajte z klienta a porovnajte, a potom sledujte, či názov, ktorý má byť zablokovaný, naozaj zlyhá v aplikácii, ktorú používateľ spúšťa.
Uložené odpovede v pamäti a otvorené sokety robia toto hlučným. Stránka, ktorá už načítala svoje zdroje, bude fungovať ďalej po zmene pravidla, takže nové spojenie je lepší test než opätovné načítanie starej karty.
Otestujte oba smery, kým vyhlásite výsledok
Použite úmyselne zablokovaný dokumentačný názov, povolený verejný názov a súkromný názov, ktorý služba potrebuje:
$ dig +short metrics.example @10.40.0.53
$ dig +short example.com @10.40.0.53
$ dig +short intranet.corp.internal @10.40.0.53
Prázdna odpoveď pre blokovaný názov, normálna adresa pre verejný a súkromná adresa pre interný spolu ukazujú, že filtrovanie, nadradené rozlišovanie a lokálne záznamy fungujú. Ak všetky tri zlyhajú, pozeráte sa na problém s nadradeným serverom alebo s poslucháčom, nie na filter.
Udržujte tvrdenie úzke vo všetkom, čo publikujete interne. Toto je filtrovanie domén na resolveri, nie kontrola obsahu, nie filtrovanie ciest a nie sľub, že nikto nie je sledovaný. Uveďte vedľa pravidiel vlastníka politiky, cestu výnimky a obdobie uchovávania dopytov, pretože filter, ktorý zaznamenáva každé vyhľadanie, má vlastnú cenu za súkromie.