Profil je radio u utorak, a u petak klijent vrti trideset sekundi i odustane. Ništa se na vašem računaru nije promijenilo. Upravo je to poenta: preuzeta konfiguracija opisuje jedan host u jednom trenutku, a operater na drugoj strani nije dužan održavati taj opis istinitim. Iskušenje je početi mijenjati sigurnosne postavke dok se tunel ne vrati. Taj instinkt je razlog zašto ljudi završe s profilom i isključenom provjerom certifikata, što je gore nego da tunela uopće nema.

Datoteka opisuje trenutak, ne ugovor

Konfiguracijska datoteka je skup tvrdnji: ovo ime hosta sluša na ovom portu s ovim protokolom, predstavlja certifikat koji odgovara ovom imenu i prihvata ove akreditive. Kada bilo koja od njih prestane biti istinita, datoteka je zastarjela i popravka pripada operaterovoj strani granice, a ne vašim postavkama.

Javne liste čvorova to po svojoj prirodi čine očiglednim. Čvorove vode volonteri, pojavljuju se i nestaju, adrese se recikliraju, a portove blokira mreža iza koje se nalaze. Lista je snimak koji se ponovo generiše, a kopija na vašem disku je fotografija starijeg snimka.

Komercijalne usluge mijenjaju se sporije, ali ne nikada. Certifikacijska tijela se rotiraju, slušalac se seli sa zajedničke adrese na namjensku, stari protokol se povlači i dolazi nova lista šifri. Svaka od toga je nevidljiva dok vaš klijent ne pokuša da se poveže i ne dobije drugačiji odgovor od onog koji datoteka očekuje.

Pročitajte fazu kvara prije nego što dirnete postavku

Poruka o grešci kaže koja tvrdnja nije izdržala, a svaka tvrdnja ima potpuno drugačiju popravku. Mijenjanje šifri kada se ime hosta više ne razrješava gubi jedno popodne i nikoga ničemu ne uči.

What happensThe assertion that brokeSupported response
Name never resolvesThe host still exists under that nameGet a current endpoint from the operator
TCP connect times outThe listener is on that port and reachableCheck the current published port, then the local network
TLS or key exchange failsThe peer presents the expected identityCompare the certificate, not the cipher list
Authentication rejectedThe account is still validGet credentials reissued or stop using the service
dig +short vpn.example.net
curl -sS -o /dev/null -w 'connect=%{time_connect} tls=%{time_appconnect}\n' --max-time 8 https://vpn.example.net:443/
openssl s_client -connect vpn.example.net:443 -servername vpn.example.net -brief </dev/null

Srednji red razdvaja blokiran put od pokvarenog rukovanja, a treći prikazuje izdavaoca i datume važenja certifikata koji se stvarno predstavlja. Ako taj izdavalac nije onaj koji je profil prikvačio, certifikat se promijenio i nikakva klijentska opcija neće ponovo učiniti stari pin ispravnim.

Promjene certifikata i identiteta su tihe

Većina kvarova se sama najavljuje. Promjene identiteta ne, jer klijent koji prikvači ime certifikata odbit će potpuno dobar novi certifikat s porukom koju mnogi čitaju kao grešku u softveru. Tunel je u redu. Pin je zastario.

Potražite opcije identiteta prije nego što bilo šta zaključite:

grep -nE '^(remote|proto|auth|verify-x509-name|tls-crypt|key-direction|ca) ' profile.ovpn
openssl x509 -in profile-ca.crt -noout -subject -dates

Ako profil nosi ugrađeni CA i operater je prešao na novo tijelo, stara datoteka ne može validirati novi server. Zamjena CA bloka operaterovim objavljenim blokom je legitimna popravka. Brisanje direktive za provjeru nije, i to su isti pritisci tipki sa sasvim drugačijim ishodom.

Nadogradnja klijenta može proizvesti isti simptom bez ikakve promjene kod operatera. Opcije koje su tiho tolerisane sada se odbijaju, ili se zastarjeli protokol uklanja. To je granica kompatibilnosti u vašem softveru i vrijedi provjeriti drugi profil na istom klijentu prije nego što okrivite server.

Samo operater može objaviti valjanu zamjenu

Kada čvor nestane, zamjena mora doći iz istog izvora koji je objavio original. Profil koji stigne u direktnoj poruci jer „koristi isto ime servera“ jeste neprovjerena konfiguracija nepoznate strane, a njegov uvoz daje toj strani kontrolu nad vašim rutiranjem.

Provjera je jeftina. Dohvatite trenutnu datoteku s objavljene lokacije, uporedite endpoint i protokol s listom i potvrdite otisak CA materijala umjesto da vjerujete imenu datoteke:

curl -sS -o current.ovpn https://example.org/nodes/current.ovpn
sha256sum current.ovpn profile.ovpn
grep -nE '^(remote|proto) ' current.ovpn

Ako se dva hasha razlikuju samo u bjelinama, imate promjenu formatiranja. Ako se razlikuju u endpointima, operater je nešto premjestio i objavljena datoteka je autoritet. Ako je objavljena datoteka starija od one koju držite, vjerovatno gledate keš i zastarjeli odgovor će vas poslati u pogrešnom smjeru.

Povucite stari unos i zapišite šta se dogodilo

Kada se radna zamjena potvrdi, obrišite stari profil umjesto da ga držite kao rezervu. Zastarjeli unos koji se napola povezuje je zamka: bit će odabran tokom prekida, sporo će padati, a osoba koja otklanja grešku potrošit će prvih deset minuta na pogrešnoj datoteci.

Vodite kratak zapis izvan konfiguracije: datum, stari endpoint, fazu kvara i šta ga je zamijenilo. Javni čvorovi se mijenjaju i šest sedmica kasnije isto pitanje dolazi s drugom osobom. Jedan red u datoteci s bilješkama odgovara na njega u sekundama.

Ako iz jedne mreže svaki čvor padne na isti način, a iz druge nijedan, prestanite uređivati profile i pogledajte lokalni put. Captive portal, filtrirani raspon portova ili presrećući proxy proizvest će identične greške kod nepovezanih provajdera, i taj obrazac je jedini signal da problem nikada nije bio u datoteci.

Povezani članci