Nii VPN kui ka edasi-puhverserver muudavad aadressi, mida veebisait näeb, ja siin enamik võrdlusi lõpeb. Erinevus, mis teie seadistuse määrab, on katvus: edasi-puhverserver on vahendaja, mille teie rakendus ise kasutada otsustab, erinevalt pöördpuhverserverist, mis seisab veebisaidi ees, samas kui VPN liigutab kõike, mida operatsioonisüsteem tunnelisse marsruudib. Krüpteerimine, DNS-i käsitlemine ja rikke käitumine tulenevad kõik sellest jaotusest. Tehke need viis kontrolli järjekorras ja esimene ebaõnnestuv ütleb teile, millist tööriista te tegelikult vajate.

Milliseid rakendusi vahendaja katab?

Brauseri puhverserveri laiendus kehtib ainult selle brauseriprofiili kohta. Meilikliendid, paketihaldurid ja teine brauser jätkavad oma seadistuste kasutamist ning mõned rakendused eiravad süsteemi puhverserveri muutujaid täielikult. VPN katab selle, mida marsruutimistabel tunnelisse saadab, ja see võib olla kõik rakendused või jagatud tunneli korral alamhulk, sõltuvalt marsruutidest ja kliendi poliitikast.

Testige rakendusi, mis loevad, selle asemel et ühest lehe laadimisest üldistada. curl https://ifconfig.me järgib keskkonna puhverserveri muutujaid; töölauarakendus ei pruugi. Windowsis prindib netsh winhttp show proxy WinHTTP puhverserveri, mida teenused kasutavad, ja see on brauseri seadest erinev seade.

Kas hüpe on krüpteeritud ja kus TLS lõpeb?

Puhverserveri protokoll on kohtumispaik, mitte garantii. SOCKS5 edastab TCP-d krüpteerimata ja tavaline HTTP-puhverserver kannab päringurea ja päised lihttekstina. HTTPS puhverserveri kaudu kasutab CONNECT-meetodit, seega teie TLS-seanss lõpeb ikkagi sihtkohas, mitte puhverserveris. MDN-i juhend puhverserverite ja tunneldamise kohta kirjeldab seda erinevust protokolli poolelt.

VPN krüpteerib lõigu teie seadme ja selle lõpp-punkti vahel. Väljaspool lõpp-punkti kehtivad samad reeglid nagu igas teises võrgus, mistõttu tunnel üksi ei kaitse rakendust, mis saadab volitusi tavalise HTTP kaudu. Kumbki lahendus ei peida sisselogitud kontot, küpsist ega brauseri sõrmejälge.

curl -v -x http://127.0.0.1:3128 https://example.com/ -o /dev/null
curl -v -x socks5h://127.0.0.1:1080 https://example.com/ -o /dev/null

Üksikasjalik väljund näitab, kas curl saatis CONNECT-päringu pordile 443 või tavalise GET-päringu täis-URL-iga. socks5h:// korral antakse hostinimi puhverserverile SOCKS5-päringu sees ja see edastab seejärel TLS-i, mida ta lugeda ei saa, nii et ta näeb nime ja baidiarvu. http:// puhverserveri kaudu on https:// URL CONNECT, seega näeb ka see puhverserver sihtkoha nime ja mahtu, kuid mitte päringut ega vastuse keha.

Milline resolver näeb nime?

Nimelahendus võib toimuda lokaalselt enne, kui päring lahkub, või kaugelt puhverserveris. Curliga saadab socks5h:// hostinime puhverserverile, samas kui socks5:// lahendab selle esmalt lokaalselt. Brauseri puhverserveri seaded pakuvad sarnast DNS-valikut ja PAC-failid saavad erinevaid hoste erinevalt marsruudida.

Kaks protokolli saavad puhverserverist mööda minna ilma igasuguse valeseadistuseta. WebRTC kogub kandidaate STUN-i kaudu ja QUIC käitab HTTP/3-t UDP peal, mida TCP-puhverserver kanda ei saa. Brauser lülitub tagasi TCP-le, kui UDP 443 on blokeeritud, seega on UDP 443 blokeerimine hosti tulemüüris (või ruuteris terve võrgu jaoks), mitte brauseri lipp, usaldusväärne viis hoida HTTP/3 puhverserveri teel.

Kontrollige resolverit sihtkoha vaatenurgast, mitte oma sülearvuti omast. Päring, mis saabub puhverserveri väljumisaadressiga, kuid lokaalselt lahendatud nimega, ütleb ikkagi kohalikule resolverile, milliseid saite te külastate.

Mis juhtub, kui vahendaja ebaõnnestub?

Selge puhverserver ebaõnnestub suletult: peatage puhverserveri protsess ja brauser või rakendus tagastab ühendusvea, selle asemel et otse minna. PAC- ja WPAD-seadistused on need, mis ebaõnnestuvad avatult - kui skripti ei saa tuua, langeb klient tagasi DIRECT-režiimi ja sait näeb jälle teie tegelikku aadressi. VPN võib ebaõnnestuda avatult või suletult, sõltuvalt kliendist ja sellest, kas hädaseiskamisklahv või tulemüürireegel on aktiivne.

Testige rikkejuhtu sihilikult: peatage puhverserveri teenus ja laadige uuesti; kui saate otse laadimise asemel vealehe, suunake PAC-i URL kättesaamatule hostile, et näha tagasilangust. Kui leht laadub endiselt teie tavalisel marsruudil, ei paku puhverserver kaitset oma enda katkestuse vastu ja see on omadus, mida peaksite teadma enne sellele lootmist.

Järjekord otsustab, mida sait näeb. Puhverserver, mille väljuv liiklus käib VPN-i kaudu, jätab saidile nähtavaks VPN-i lõpp-punkti aadressi; asetage puhverserver tunnelist väljapoole (VPN kaugemas hostis olevale puhverserverile) ja sait näeb selle asemel tolle puhverserveri väljumisaadressi. Mõlemal juhul võivad kaks hüpet logida erinevaid asju.

Viis kontrolli, järjekorras

Allolev kontrollnimekiri on kogu otsus ühes kohas. Katvus tuleb esimesena, sest see kõrvaldab enamiku mittevastavusi: kui rakendus, mida tuleb katta, ei järgi seadet, ei päästa seda miski hiljem nimekirjas.

CheckForward proxyVPN
What is coveredThe app or browser you configureTraffic the OS routes into the tunnel, all or split
Encryption scopeProtocol-dependent; SOCKS5 alone encrypts nothingDevice to VPN endpoint
DNS pathLocal or remote, depending on the settingNormally inside the tunnel
Failure modeExplicit config: connection error; PAC/WPAD: DIRECT fallbackClient policy: fail-open or kill switch
What the site seesThe proxy's exit addressThe VPN endpoint's exit address

Seejärel kinnitage tulemus rakendusega, mis muudatuse põhjustas. Laadige leht seadistatud brauseris, hankige sama leht curl-iga ja võrrelge aadressi, mille kumbki teatab. Kui need erinevad, on mängus veel laiendus, PAC-reegel või rakenduse tasemel alistamine ning ükski tunneli häälestus ei paranda seda.

Kirjutage üles, mida seadistasite: millised rakendused puhverserverit kasutavad, kas DNS on lokaalne või kaugne, kas UDP on blokeeritud ja milline on rikke käitumine. Just see väike loend teeb järgmise võrdluse võimalikuks, sest „IP muutus“ ei öelnud teile kunagi, milline neist viiest kontrollist läbis.

Seotud artiklid