Profil je radio u utorak, a u petak klijent vrti trideset sekundi i odustaje. Ništa se na vašem računalu nije promijenilo. Upravo je to poanta: 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 prihvaća ove vjerodajnice. Kada bilo koja od njih prestane biti istinita, datoteka je zastarjela i popravak pripada operaterovoj strani granice, a ne vašim postavkama.

Javni popisi čvorova to po svojoj prirodi čine očitim. Čvorove vode volonteri, pojavljuju se i nestaju, adrese se recikliraju, a portove blokira mreža iza koje se nalaze. Popis je snimka koja se ponovno generira, a kopija na vašem disku je fotografija starije snimke.

Komercijalne usluge mijenjaju se sporije, ali ne nikada. Certifikacijska tijela se rotiraju, slušač se seli sa zajedničke adrese na namjensku, stari protokol se povlači i dolazi novi popis šifri. Svaka od toga je nevidljiva dok vaš klijent ne pokuša uspostaviti vezu i ne dobije drugačiji odgovor od onoga koji datoteka očekuje.

Pročitajte fazu kvara prije nego što dirnete postavku

Poruka o pogrešci kaže koja tvrdnja nije izdržala, a svaka tvrdnja ima potpuno drugačiji popravak. Mijenjanje šifri kada se ime hosta više ne razrješava gubi jedno poslijepodne 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 redak razdvaja blokiran put od pokvarenog rukovanja, a treći prikazuje izdavača i datume valjanosti certifikata koji se stvarno predstavlja. Ako taj izdavač nije onaj koji je profil prikvačio, certifikat se promijenio i nikakva klijentska opcija neće ponovno učiniti stari pin ispravnim.

Promjene certifikata i identiteta su tihe

Većina kvarova sama se 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 što 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 poslužitelj. Zamjena CA bloka operaterovim objavljenim blokom legitimna je 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 tolerirane sada se odbijaju, ili se zastarjeli protokol uklanja. To je granica kompatibilnosti u vašem softveru i vrijedi isprobati drugi profil na istom klijentu prije nego što okrivite poslužitelj.

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 izravnoj poruci jer „koristi isto ime poslužitelja“ jest neprovjerena konfiguracija nepoznate strane, a njegov uvoz daje toj strani kontrolu nad vašim usmjeravanjem.

Provjera je jeftina. Dohvatite trenutačnu datoteku s objavljene lokacije, usporedite endpoint i protokol s popisom 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, vjerojatno gledate u predmemoriju i zastarjeli odgovor poslat će vas u pogrešnom smjeru.

Povucite stari unos i zapišite što 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 tijekom prekida, sporo će padati, a osoba koja otklanja pogrešku provest će prvih deset minuta na pogrešnoj datoteci.

Vodite kratak zapis izvan konfiguracije: datum, stari endpoint, fazu kvara i što ga je zamijenilo. Javni čvorovi se mijenjaju i šest tjedana kasnije isto pitanje dolazi s drugom osobom. Jedan redak 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 pogreške kod nepovezanih pružatelja usluga, i taj je obrazac jedini signal da problem nikada nije bio u datoteci.

Povezani članci