Ukončiť alebo odpojiť: dva rôzne výsledky VPN
Ukončenie, odpojenie, pozastavenie a zatvorenie okna môžu zanechať rôzne stavy čistenia a blokovania. Prečítajte si definície klienta, skôr než začnete testovať správanie v oblasti súkromia.
Ponuka ponúka Odpojiť, okno má tlačidlo na zatvorenie a správca úloh ponúka Ukončiť úlohu. Každá z nich vyzerá ako spôsob, ako zastaviť VPN, a každá môže zanechať počítač v inom stave. Jedna môže zastaviť tunel a nechať blokovanie na mieste, iná môže všetko upratať v rámci riadneho ukončenia a tretia môže len skryť rozhranie, kým komponent na pozadí ďalej beží. Považovať ich za synonymá je presne tá cesta, ktorou test súkromia dospeje k nesprávnemu záveru o tom, čo sa stalo.
Dokumentácia klienta je jediné spoľahlivé miesto, kde sa dá zistiť, čo je čo.
Štyri ovládacie prvky, možno štyri správania
Odpojenie zvyčajne rozoberie tunel, kým klient zostáva v pamäti, čo znamená, že služba, komponent v systémovej lište alebo pravidlo kill switch môžu kliknutie prežiť. Mnohí klienti potom ďalej blokujú prevádzku, pretože ich politika hovorí, že zariadenie nesmie prejsť na priamy prístup, kým je klient prítomný. Takéto správanie vyzerá ako pokazená sieť a je zámernou ochranou.
Ukončenie má ukončiť aplikáciu a slušne napísaný klient pri odchode odstráni svoje pravidlá. Niektoré riešenia namiesto toho nechávajú samostatného pomocníka, ktorý vynucuje politiku, a to je voľba, nie chyba. Zatvorenie okna je akcia rozhrania bez určeného vplyvu na tunel a Pozastavenie, tam kde sa ponúka, je štvrté správanie s vlastnými pravidlami.
Výpadok na strane servera je úplne piata cesta a práve s ním sa používatelia v praxi stretávajú najčastejšie.
Prečítajte stav pred každou akciou a po nej
Pred akciou si zaznamenajte zoznam procesov, stav služby a pravidlá brány firewall, potom záznam hneď po akcii zopakujte. Porovnanie oboch zoznamov ukáže, čo ovládací prvok naozaj urobil, bez spoliehania sa na vlastný opis rozhrania.
systemctl status wg-quick@wg0 --no-pager pgrep -a -f 'openvpn|wireguard|vpnagent' ip link show | grep -E 'tun|wg' nft list ruleset | grep -E 'drop|reject' | head -20 scutil --nc list
Ak pravidlá zmiznú spolu s procesom, vlastnil ich klient. Ak pravidlá zostanú, hoci proces zmizol, politiku vynucuje niečo iné, a nájdenie tohto komponentu predchádza akejkoľvek zmene. Zaznamenajte stav služby v tom istom okamihu, pretože zastavené rozhranie o systémovej službe nič nehovorí.
Ručné odpojenie nie je zrútenie
Odpojenie prechádza zamýšľanou cestou vypnutia a zrútenie ju preskočí. Výsledky jedného sa preto na druhé neprenášajú, takže test, ktorý použil položku ponuky, nemôže podporiť tvrdenie o správaní, keď klient spadne.
Rovnako tak zrútenie nič nehovorí o schválenom dočasnom pozastavení. Držte tieto tri otázky oddelene v testovacom pláne a vo všetkom, čo sa potom zapíše. Cesta vypnutia tiež vysvetľuje, prečo čisté ukončenie môže odstrániť pravidlá, ktoré zrútenie zanechá. To isté tlačidlo, iný kód, iné dôkazy.
Vyberte nedostupný stav, ktorý skutočne potrebujete
Ak má prevádzka zostať zablokovaná vždy, keď je tunel mimo prevádzky, overte túto požiadavku počas konkrétnej akcie, na ktorej vám záleží, pomocou neškodnej prevádzky na známe miesto. Zahrňte výnimky pre aplikácie aj výnimky pre miestnu sieť, pretože presadzovanie pre celé zariadenie je často užšie, než naznačuje jeho názov. Potom potvrďte, čo sa stane po reštarte, pretože vtedy sa zvyčajne objaví zastaraný stav.
Ak je cieľom bežný priamy prístup, použite zdokumentovaný ovládací prvok namiesto zabíjania procesov alebo vypnutia celej brány firewall. Zastarané pravidlá zanechané prerušeným ukončením sú iný problém ako úmyselné uzamknutie a vyžadujú iné obnovenie.
Zapíšte, ktorý komponent sa zastavil: tunel, viditeľná aplikácia alebo vrstva, ktorá vynucuje politiku. Tá jediná veta zabráni väčšine zmätku, ktorý tieto ovládacie prvky vytvárajú.