Jeden stroj, dve úlohy, jeden firewall: Wi-Fi uplink, malá Ethernet podsieť za ním a klientský VPN na ploche, ktorý predpokladá, že všetko opúšťajúce stroj je lokálne. Lokálne spustené aplikácie odchádzajú lokálnou výstupnou cestou. Zariadenia za pracovnou stanicou prichádzajú na Ethernet port a potrebujú rozhodnutie o preposielaní. Výnimka napísaná pre prvú cestu nikdy nevidí druhú, a preto prehliadač obchádza tunel, zatiaľ čo zariadenia nie.

Dve cesty paketov, jedna politika

OriginPathDecision owner
Application on the workstationOUTPUT then egressThe VPN app's routing policy
Device behind the workstationPREROUTING then FORWARDThe workstation's own forwarding policy

Prvý riadok je to, čo opisuje väčšina sprievodcov split-tunnelingom. Druhý je konfigurácia smerovača, ktorá náhodou žije na tom istom stroji. Zlievať ich do jedného mentálneho modelu je chyba; zdieľajú jadro, ale nie politiku. Nakreslite obe cesty, než upravíte akékoľvek pravidlo, a zvyšok návrhu vyplýva z toho, ktorá cesta chýba.

Tabuľka tiež vysvetľuje, prečo jeden stroj môže prejsť jedným testom a zlyhať v inom. Prehliadač na pracovnej stanici dokazuje lokálnu cestu; prenosný počítač zapojený do Ethernet portu dokazuje cestu preposielania. Overujte zmenu oboma, inak druhý zostane netestovaný, nech sa prehliadač obnoví koľkokrátkoľvek.

Čo vlastne výnimka aplikácie klasifikuje

Výnimka pre jednotlivú aplikáciu zvyčajne funguje tak, že označí pakety z procesu alebo používateľa a potom smeruje označenú prevádzku mimo tunela. To je konštrukcia lokálneho výstupu. Paket zo zariadenia za stanicou nemá lokálny proces, takže nikdy nezodpovedá selektoru, nech je selektor akýkoľvek.

Nech je selektor akýkoľvek, dva zoznamy nie sú ten istý zoznam, a o to ide. Sprievodca Mullvad pre Linux opisuje značky spotrebúvané jeho firewallom a politikou smerovania a jeho príklady cielia na lokálny výstup; nie sú podporovaným opisom smerovača za stanicou. Ich skopírovanie dá stroj, ktorý si myslí, že má výnimku, a pritom všetko preposiela do tunela.

Napíšte zmluvu o tranzite

Pomenujte spolu zdrojový prefix za stanicou a vstupné rozhranie, potom tento prefix na vstupe obmedzte. Bez obmedzenia môže každé zariadenie, ktoré dosiahne port, nárokovať vylúčenú adresu a odísť cez obchádzanie. Berte to ako dve otázky: smú tieto hostiteľské systémy tento uplink vôbec používať a smú dosiahnuť pracovnú stanicu alebo privátne rozsahy tunela? To sú dodatočné oprávnenia, nie vedľajšie účinky voľby uplinku.

Povoľte preposielanie a potom ho filtrujte. Linuxová brána potrebuje zapnuté preposielanie, pravidlá povoľujúce zamýšľanú prevádzku v oboch smeroch a buď návratovú trasu nahor, alebo zámerne obmedzený preklad zdroja. NAT sám o sebe nevyberá uplink a neprepúšťa cez filter; len prepisuje adresu po týchto rozhodnutiach.

Klasifikácia pre tranzit musí prebehnúť pred rozhodnutím o trase preposielania, teda v etape prerouting, nie output. Pravidlo umiestnené po rozhodnutí ešte môže zmeniť paket, ale nemôže zmeniť, kam už bol odoslaný.

Značky patria aplikácii, ktorá ich vlastní

Hodnoty značiek, čísla tabuliek a priority reťazcov sú súčasťou politiky aplikácie VPN, nie večné konštanty. Trvalá sieť, ktorá závisí od vloženia pravidla do tabuľky, ktorú iný program regeneruje, sa pri ďalšej aktualizácii pokazí, zvyčajne počas opätovného pripojenia, nie v prihodnom čase.

Pridanie druhého základného reťazca s verdiktom accept nemusí prebiť drop neskoršieho reťazca. Základné reťazce majú háky a priority a prvý verdikt v poradí vyhráva; accept v jednom reťazci nezruší drop, ku ktorému iný reťazec dospeje skôr. Pozerajte sa na celú sadu pravidiel a poradie politiky smerovania, nie na jediné počítadlo, ktoré stúplo. Počítadlo dokazuje, že pravidlo prebehlo, nikdy nie že bolo použité práve jeho rozhodnutie.

Integrujte, alebo presuňte podsieť

Oba návrhy sa líšia v tom, kto vlastní obchádzanie. Integrovaný návrh drží jeden stroj a jednu politiku za cenu závislosti od životného cyklu tabuliek aplikácie VPN a od sady značiek, ktorú jej dokumentácia môže zmeniť. Vyhradený smerovač pre sieť za stanicou túto závislosť úplne odstraňuje: podsieť má vlastný uplink a pracovná stanica zostáva klientom bez roly preposielania.

Zvoľte druhý, keď sieť za stanicou musí fungovať aj cez aktualizácie VPN, alebo keď nikto nemôže integrovanú politiku po každom vydaní otestovať. Zvoľte prvý len vtedy, keď je integrácia zdokumentovaná a niekto ju vlastní.

Overte hranicu v štyroch stavoch: pripojené, opätovné pripájanie, zámerne blokované a zastavené. V každom skontrolujte preklad názvov a obe rodiny adries, pretože obchádzanie, ktoré uniká DNS, nie je výnimkou, ktorú ste navrhli. Test má dokázať presnú hranicu, nie len že sa načítala jedna stránka.

Súvisiace články