Sovelluksen kill switch vs. palomuurin kill switch: mitä kumpikin estää
Yksi kill switch sulkee sovelluksia, toinen asentaa pakettisuodattimia. Käy nämä tarkistukset järjestyksessä läpi ja pysähdy ensimmäiseen, johon et voi vastata rehellisesti.
Kill switch ominaisuusluettelossa ei kerro juuri mitään siitä, mitä tapahtuu, kun tunneli katkeaa. Yksi toteutus sulkee valittuja prosesseja, toinen asentaa pakettisuodattimia käyttöjärjestelmän rajalle ja kolmas yksinkertaisesti yrittää yhdistää uudelleen. Ero näkyy sekunneissa vian jälkeen, ei asetusnäytöllä. Käy nämä tarkistukset järjestyksessä läpi ja pysähdy ensimmäiseen, johon et voi vastata rehellisesti, sillä siihen todellinen kattavuutesi päättyy.
Nimeä ensin toteutusmekanismi
Prosessien lopettaminen on sovelluksen elinkaaren ominaisuus. Se löytää valitut ohjelmat havaitun tunnelivian jälkeen ja sulkee ne. Kaikki mikä ei ole pääprosessi, jää henkiin: apupalvelut, taustasynkronointi ja mikä tahansa sekuntia myöhemmin käynnistetty sovellus, joilla kaikilla on oma elinkaarensa ja oma ajoituksensa.
Pakettisuodatus on käyttöjärjestelmän ominaisuus. Se hylkää liikenteen, joka ei seuraa sallittua polkua, mikä on vahvempi lupaus, mutta vain siltä osin kuin sääntö todella osuu. Osoiteperhe, liitäntä, poissuljetut sovellukset ja poikkeukset ratkaisevat sen, eivät asiakasohjelman merkinnät.
Kestääkö esto asiakasohjelman?
Kysy neljä kysymystä tässä järjestyksessä: mitä tapahtuu kaatumisessa, manuaalisessa lopetuksessa, uloskirjautumisessa ja uudelleenkäynnistyksessä. Asiakasohjelman itse ylläpitämä sääntö poistetaan yleensä siistin sammutuksen aikana ja usein jää jäljelle kaatumisen jälkeen. Alustan tallennustilaan asennettu sääntö voi käyttäytyä päinvastoin: kestää sekä asiakasohjelman että joskus asennuksen poiston.
Sulje asiakasohjelma kesken pitkän latauksen ja katso, pysähtyykö siirto vai jatkuuko se.
Etsi tavanomaiset aukot
IPv6 on ensimmäinen. IPv4-osoitteille kirjoitettu sääntö jättää IPv6-liikenteen koskemattomaksi, ja monet asiakasohjelmat kirjoittavat vain v4-puoliskon. Toinen on liitäntä: USB-tethering, toinen Wi-Fi-sovitin ja matkapuhelinmodeemi eivät ehkä sisälly ensisijaiseen yhteyteen rajattuun sääntöön. Poissuljetut sovellukset ja lähiverkon poikkeukset ovat kolmas.
Windowsissa voit lukea asennetut säännöt sen sijaan, että luottaisit kytkimeen: Get-NetFirewallRule -DisplayName '*VPN*' ja netsh wfp show filters näyttävät molemmat, mitä on olemassa. Linuxissa iptables -S, ip6tables -S ja nft list ruleset kattavat tavalliset tapaukset, ja kaikkien kolmen vertailu on koko pointti.
DNS on tavallinen vuoto
TCP:n estäminen UDP 53:n jäädessä auki antaa erittäin vakuuttavan kill switchin, joka vastaa silti jokaiseen isäntänimen kyselyyn. Sama pätee, kun DNS annetaan toisen liitännän selvittäjälle tai kun asiakasohjelma estää vain v4:n ja selvittäjä on tavoitettavissa v6:n kautta.
Kun tunneli on alhaalla, selvitä yksi tunnettu nimi ja katso tuleeko vastaus takaisin. Jos tulee, liikennettä ei ole täysin estetty, mitä tahansa tilakuvake sanoo.
Testaa siirtymä, älä kytkintä
VPN:n sammuttaminen sen omasta valikosta on siisti sammutus, ja siistin tapauksen jokainen toteutus hoitaa hyvin. Merkitsevä siirtymä on se karkea: tapa tunneliprosessi, vedä verkko irti, anna palvelimen lakata vastaamasta. Käynnistä sitten pyyntö ja katso, epäonnistuuko se vai käyttääkö se hiljaa fyysistä yhteyttä.
Yhden kannettavan tulos ei siirry puhelimeen tai reitittimeen. Erilaiset alusta-API:t, erilaiset oletukset, ja Androidissa ero on jyrkkä: always-on eston kanssa toteuttaa järjestelmä eikä asiakasohjelma, joten se toimii edelleen, kun asiakasohjelma ei toimi. Androidin VPN-ohje kuvaa tämän jaon.
Pidä paluutie auki
Järjestelmätason estolla on päinvastainen vikatila. Asiakasohjelman yli kestävät suodattimet voivat jättää koneen täysin ilman verkkoa asennuksen poiston jälkeen, mikä on tukipuhelu ilman ilmeistä syytä. Ennen kuin otat käyttöön minkään kill switchin, joka kirjoittaa alustan sääntöjä, kirjaa ylös, miten se poistetaan, ja pidä toimittajan korjauspolku siellä, mistä löydät sen.
Jos et osaa vastata asiakasohjelmasi kaatumis-, IPv6-, DNS- ja siirtymätarkistuksiin, kohtele sitä sovellustason kytkimenä, jossa on tunnetut aukot, ja suunnittele sen mukaisesti.