Merkintä hosts-tiedostossa ja reitittimen suodatin estävät saman sivuston täysin eri syistä, siksi toinen jatkaa toimintaansa VPN:n alla ja toinen lakkaa hiljaa. hosts-tiedosto vastaa nimeen ennen kuin yksikään paketti lähtee koneesta. Reitittimen suodatin tarkastelee liikennettä, joka kulkee sen läpi. Aseta tunneli näiden kahden pisteen väliin, ja toinen menettää näkyvyytensä, kun ensimmäinen ei huomaa mitään.

Missä nimi ratkaistaan, se ratkaisee kaiken

Jokainen esto alkaa kysymyksellä: kuka muuttaa nimen osoitteeksi? Tavallisella työpöytäkoneella vastaa järjestelmän resolveri, joka kulkee määritettyä järjestystään ja lukee yleensä hosts-tiedoston ennen DNS-kyselyä. Suodatetussa verkossa vastaaja voi olla reititin, joka näkee kyselyn vain, jos asiakas lähettää sen sen kautta suojaamattomana. Muuta reittiä ja muutat sitä, kuka saa vastata.

VPN tekee tässä kaksi asiaa kerralla: se siirtää oletusreitin ja voi työntää oman DNS-palvelimensa. Kumpikin muutos riittää siirtämään nimenselvityksen pois laitteesta, joka toteutti eston.

Tämä on mekanismi tutun valituksen takana, että suodatin toimii, kunnes VPN yhdistyy.

hosts-merkintä vastaa ennen kuin tunneli on olemassa

Rivin kuten 127.0.0.1 www.example.com lukee paikallinen resolveri, joten vastaus syntyy koneella ilman verkkoa. Yhdistä tunneli, vaihda DNS-palvelin, vaihda verkkoa: merkintä palauttaa silti loopbackin. Siksi hosts-esto on kahdesta ainoa, johon ei vaikuta se, mihin VPN päättyy.

Sen sokeat pisteet ovat yhtä paikallisia. Sovellus, joka tuo mukanaan oman resolverinsa, puhuu DNS over HTTPS:ää tai yhdistää kirjaimelliseen osoitteeseen, ei koskaan kysy järjestelmältä, joten merkintää ei käytetä. Käynnissä olevan prosessin välimuistiin tallennettu osoite vaikuttaa samalla tavalla, kunnes prosessi käynnistetään uudelleen.

Vahvista vastaus komennolla getent ahosts Linuxissa tai Resolve-DnsName Windowsissa sen sijaan, että luottaisit selaimen välilehteen.

Reitittimen suodatin näkee vain sen, mikä kulkee sen läpi

Kotireitittimen sisältö- tai URL-suodatin sovittaa nimiä ja pyyntöjä, jotka kulkevat sen läpi luettavassa muodossa. Kun asiakas rakentaa salatun tunnelin palvelimelle jonnekin muualle, reititin näkee yhden virtauksen siihen palvelimeen eikä mitään sen sisällä. Suodattimella ei ole nimeä sovitettavaksi, joten se päästää liikenteen läpi, ja se näyttää siltä kuin suodatin olisi epäonnistunut, ei siltä kuin se olisi ohitettu.

Toimiva topologia on toinen: reititin pitää tunnelia itse, purkaa salauksen päätepisteessä ja soveltaa suodatinta siellä. Siinä mallissa suodatin istuu siellä, missä selväkielinen teksti näkyy.

Jos tunneli päättyy kannettavaan, reititin on määritelmän mukaan suojatun polun ulkopuolella, riippumatta siitä, miten sääntö on kirjoitettu.

Neljä toteutuspistettä ja mitä kukin jättää väliin

Neljä paikkaa voi toteuttaa eston ja kukin epäonnistuu eri tavalla. Lue lista kattavuuskarttana, ei paremmuusjärjestyksenä.

  • hosts-tiedosto tai paikallinen resolveri: toimii offline-tilassa ja minkä tahansa tunnelin alla, mutta sen ohittaa mukana tuleva resolveri tai kovakoodattu osoite.
  • DNS-suodatus VPN-yhdyskäytävässä: kattaa asiakkaat, jotka käyttävät työnnettyä resolveria, ja jättää väliin asiakkaat, jotka ohittavat DNS:n.
  • Yhdyskäytävän lähtösäännöt osoitteen tai SNI:n mukaan: riippumattomia asiakkaan DNS:stä, mutta sokeita nimille, joita se ei voi lukea, ja osoitteille, joita se ei ole oppinut.
  • Hallittu selain- tai laitekäytäntö: vahva hallitulla laitteistolla, puuttuu henkilökohtaisilta laitteilta.

Mikään näistä ei ole turvaraja päättäväistä käyttäjää vastaan hallitsemattomalla laitteella. Ne ovat käytäntöjen kontrolleja, ja rehellinen kuvaus kertoo, minkä liikenteen kukin todella kattaa.

Valitse kerros, joka vastaa tarkoitusta: kotimukavuus kuuluu laitteelle ja organisaation sääntö yhdyskäytävälle.

Testaa molemmat tilat ennen kuin sanot sen valmiiksi

Aja samat kolme komentoa VPN yhdistettynä ja katkaistuna: getent ahosts resolverin vastauksen näkemiseksi, nslookup kyselyn vastauksen näkemiseksi ja curl -I sivustoa vastaan nähdäksesi, täydentyykö yhteys vielä. Jos ensimmäinen palauttaa loopbackin ja kolmas yhdistyy todelliseen osoitteeseen, jokin ohitti resolverin eikä hosts-merkintä ole se kontrolli, jota luulet sen olevan.

Lue reitittimeltä suodattimen laskurit ennen pyyntöä ja sen jälkeen. Laskuri, joka ei koskaan liiku, tarkoittaa, että liikenne ei koskaan saavuttanut suodatinta, ja se on reitityksen vastaus, ei säännön vastaus.

Kirjoita tulos ylös topologian kanssa, sillä seuraava VPN-muutos siirtää polun taas.

Aiheeseen liittyvät artikkelit