Máte jednu vetu politiky: táto aplikácia môže dosiahnuť pracovnú službu a nič iné. Ďalšia otázka vyzerá ako voľba produktu, ale je to otázka miesta, pretože každý možný bod presadenia vidí inú podmnožinu prevádzky telefónu. Brána vidí iba to, čo vstúpi do tunela. Filter na strane telefónu vidí iba to, čo mu je dovolené pozorovať. Prevedenie jednej požiadavky cez oba body robí odpoveď zrejmou.

Začnite vetou, nie produktom

Rozviňte požiadavku skôr, než čokoľvek vyberiete. To znamená balík a profil, v ktorom beží, pretože aplikácia v pracovnom profile je iný používateľ než tá istá aplikácia v osobnom profile. Znamená to cieľ: host, port a protokol, nie názov služby. Znamená to cestu DNS, ktorá to meno prekladá, a znamená to, čo sa má stať, keď tunel nie je dostupný.

Zapísaná politika pre príklad má štyri riadky: pracovná aplikácia môže dosiahnuť pracovnú službu; pracovná aplikácia nesmie dosiahnuť nič iné; ostatné aplikácie zostávajú nezmenené; bez tunela je pracovná aplikácia odmietnutá namiesto prechodu na priame pripojenie. Každý riadok má vlastníka a nie všetky majú toho istého vlastníka.

Krok 1: čo dokáže presadiť samotný telefón

Android firewall bez rootu je VpnService, ktorý zachytáva prevádzku lokálne, aj keď za ním nie je žiadny vzdialený tunel. Android povoľuje jednu aktívnu službu VPN na používateľský profil, takže druhá aplikácia firewallu sa nezaradí za prvú. Nahradí ju a rozhranie, ktoré prvá aplikácia filtrovala, zmizne.

Preto inštalácia firewallu vedľa klienta VPN zriedka prináša kombináciu, ktorú ľudia očakávajú. Ak sa firewall spustí a VPN sa odpojí, nič sa nezlúčilo; tieto dve si vymenili miesta. Výmena rozhrania nie je spolupráca a príznakom je tunel, ktorý stále padá, kedykoľvek sa otvorí druhá aplikácia.

Podporované usporiadania však existujú: filtrovanie zabudované v klientovi VPN, ktorý už používate, spravované ovládacie prvky platformy cez kontrolér pravidiel zariadenia alebo pracovný profil, alebo architektúra, ktorú dokumentuje dodávateľ. Všetko ostatné je experiment, ktorý treba po každej aktualizácii aplikácie znova overiť.

Krok 2: čo dokáže presadiť brána

Keď sa prevádzka na vzdialenom konci dešifruje, brána môže obmedziť preposielané pakety na schválené adresy, služby alebo overené identity VPN. To je skutočné presadenie pre všetko, čo cez ňu vychádza, a je to správne miesto na obmedzenie prístupu k privátnym podsietiam.

Čo však nedostáva, je identita aplikácie telefónu pripojená ku každému bežnému paketu IP. Niekoľko aplikácií zdieľajúcich jednu adresu tunela je pre bránu jeden subjekt, ak im dizajn nepridelí samostatné adresy alebo samostatné overené identity. Pravidlo na používateľa na bráne preto nie je pravidlom na aplikáciu v telefóne, nech ho konzola správy nazýva akokoľvek.

Krok 3: vypíšte, čo nikdy nedorazí

Aplikácia vylúčená z VPN, ktorá kontaktuje zariadenie v okolí, sa nikdy nedostane na bránu, takže výstupný firewall nemôže odmietnuť paket, ktorý nikdy nedostane. To isté platí pre neúmyselnú priamu trasu počas výpadku a pre vstupnú expozíciu v lokálnej prístupovej sieti. To sú lokálne hranice podľa definície.

Platí to aj naopak: lokálne pravidlo, ktoré pripojenie povoľuje, neudeľuje prístup cez ACL privátnej siete brány. Jedna požiadavka môže podliehať obom hraniciam a splnenie jednej nič nehovorí o druhej.

Krok 4: priraďte každé pravidlo k trase

Uložte rozhodnutie do tabuľky skôr, než čokoľvek nakonfigurujete, pretože prázdne bunky sú miesta, kde návrhy zlyhávajú.

PathWho can enforce itBlind spot
Work app to the work service, tunnel upGateway ACL on address and service, plus a local block on other pathsThe gateway cannot see which app sent the packet
Work app to other destinations, tunnel upLocal app-aware filter, or the gateway if those destinations are addressed thereThe local filter must be the active VpnService
Work app with no tunnelLocal deny, so the app cannot take a direct pathRequires the filter to survive the tunnel going away
Nearby LAN deviceLocal policy onlyThe gateway never sees it

Funkčný tvar sú dve hranice s dvoma úlohami. Lokálna hranica vnímajúca aplikácie riadi správanie telefónu vrátane priameho obchádzania a hranica brány riadi vzdialené zdroje. Strana brány môže povoliť pracovnú službu a odmietnuť každú inú privátnu podsiet, zatiaľ čo politika na strane telefónu sama rozhoduje o priamej trase, ktorú by aplikácia inak mohla zvoliť.

Krok 5: udržte transport nažive, potom overte

Nech už zvolíte akúkoľvek lokálnu politiku, musí prepúšťať transport, ktorý VPN nadväzuje a udržiava. Zablokovanie tohto transportu nechá telefón bez tunela a bez politiky, čo nič nepresadzuje konzistentne a je ťažké diagnostikovať, pretože aplikácia jednoducho nemá sieť.

Potom overte každý riadok pôvodnej vety, nie celkový dojem: pracovná aplikácia dosiahne pracovnú službu, tá istá aplikácia je odmietnutá na inom cieli, nepracovná aplikácia sa správa ako predtým a pri zastavenom tuneli pracovná aplikácia neprejde na priame pripojenie. Cestu DNS skontrolujte oddelene, pretože privátny DNS alebo šifrovaný resolver môžu obísť filter, ktorý kontroluje iba adresy.

Ak sa jeden z týchto krokov nedá v telefóne splniť, požiadavka je otázkou architektúry, nie nastavením firewallu. Rozdelenie politiky medzi zariadenie, ktoré ovládate, a bránu, ktorú ovládate, je zvyčajne úprimná odpoveď a dokumentácia k pripojeniu VPN v Androide je miestom, kde si potvrdíte, čo platforma jednej službe dovolí a čo nie.

Súvisiace články