Profils darbojās otrdien, un piektdien klients griežas trīsdesmit sekundes un padodas. Tavā mašīnā nekas nav mainījies. Tieši tā ir būtība: lejupielādēta konfigurācija apraksta vienu resursdatoru vienā mirklī, un operatoram otrā pusē nav pienākuma uzturēt šo aprakstu patiesu. Kārdinājums ir sākt rediģēt drošības iestatījumus, līdz tunelis atkal paceļas. Tieši šis instinkts noved pie tā, ka cilvēki beigu beigās palaiž profilu ar izslēgtu sertifikātu pārbaudi, kas ir sliktāk nekā vispār neizmantot tuneli.

Fails apraksta mirklī, nevis līgumu

Konfigurācijas fails ir apgalvojumu kopa: šis resursdatora nosaukums klausās šajā portā ar šo protokolu, uzrāda šim nosaukumam atbilstošu sertifikātu un pieņem šos pieteikšanās datus. Kad kāds no tiem pārstāj būt patiess, fails ir novecojis un labojums pieder operatora pusei aiz robežas, nevis taviem iestatījumiem.

Publiskie mezglu saraksti to padara acīmredzamu ar savu dabu. Mezglus uztur brīvprātīgie, tie parādās un pazūd, adreses tiek pārstrādātas, un portus bloķē tīkls, aiz kura tie atrodas. Saraksts ir momentuzņēmums, kas tiek ģenerēts no jauna, un kopija tavā diskā ir vecāka momentuzņēmuma fotogrāfija.

Komerciālie pakalpojumi mainās lēnāk, bet ne nekad. Sertifikācijas iestādes mainās, klausītājs pārvietojas no koplietotas adreses uz atsevišķu adresi, vecs protokols tiek izņemts un ierodas jauns šifru saraksts. Katrs no tiem ir neredzams, līdz tavs klients mēģina savienoties un saņem citu atbildi nekā failā gaidīts.

Lasi kļūmes posmu, pirms aiztiec iestatījumu

Kļūdas ziņojums pasaka, kurš apgalvojums sabruka, un katram apgalvojumam ir pilnīgi cits labojums. Šifru rediģēšana, kad resursdatora nosaukums vairs neatrisinās, izšķērdē pēcpusdienu un nevienam neko neiemāca.

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

Vidējā rinda atdala bloķētu ceļu no salauztas rokasspiediena, un trešā parāda faktiski uzrādītā sertifikāta izdevēju un derīguma datumus. Ja šis izdevējs nav tas, ko profils ir piespraudis, sertifikāts ir mainījies, un neviena klienta puses opcija neatgriezīs veco piespraudi pareizu.

Sertifikāta un identitātes izmaiņas ir klusās

Lielākā daļa kļūmju paziņo par sevi. Identitātes izmaiņas ne, jo klients, kas piesprauž sertifikāta nosaukumu, noraidīs pilnīgi labu jaunu sertifikātu ar ziņojumu, ko daudzi lasa kā programmatūras kļūdu. Tunelis ir kārtībā. Piespraude ir novecojusi.

Pirms izdari secinājumus, meklē identitātes opcijas:

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

Ja profilā ir iegults CA un operators ir pārgājis uz jaunu iestādi, vecais fails nevar validēt jauno serveri. CA bloka aizstāšana ar operatora publicēto ir likumīgs labojums. Pārbaudes direktīvas dzēšana nav, un tie ir tie paši taustiņu nospiedumi ar pavisam citu iznākumu.

Klienta atjauninājums var radīt to pašu simptomu bez jebkādām operatora izmaiņām. Opcijas, kas tika klusi pieciestas, tagad tiek noraidītas, vai tiek noņemts novecojis protokols. Tā ir tavas programmatūras saderības robeža, un ir vērts izmēģināt otru profilu ar to pašu klientu, pirms vaino serveri.

Tikai operators var publicēt derīgu aizstājēju

Kad mezgls pazūd, aizstājējam jānāk no tā paša avota, kas publicēja oriģinālu. Profils, kas ierodas tiešā ziņojumā tāpēc, ka „izmanto to pašu servera nosaukumu“, ir nezināmas puses nepārbaudīta konfigurācija, un tā importēšana dod šai pusei kontroli pār tavu maršrutēšanu.

Pārbaude ir lēta. Iegūsti pašreizējo failu no publicētās vietas, salīdzini galapunktu un protokolu ar sarakstu un apstiprini CA materiāla pirkstu nospiedumu, nevis uzticies faila nosaukumam:

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

Ja divi jaucējkodi atšķiras tikai ar atstarpēm, tev ir formatējuma izmaiņa. Ja tie atšķiras galapunktos, operators kaut ko ir pārvietojis, un publicētais fails ir autoritāte. Ja publicētais fails ir vecāks par tavējo, tu droši vien skaties kešatmiņā, un novecojusī atbilde nosūtīs tevi nepareizajā virzienā.

Izņem veco ierakstu un pieraksti, kas notika

Kad darbojošs aizstājējs ir pārbaudīts, izdzēs veco profilu, nevis glabā to kā rezervi. Novecojis ieraksts, kas savienojas uz pusi, ir slazds: tas tiks izvēlēts pārtraukuma laikā, tas lēni neizdosies, un atkļūdotājs pirmās desmit minūtes pavadīs pie nepareizā faila.

Turē īsu ierakstu ārpus konfigurācijas: datumu, veco galapunktu, kļūmes posmu un to, kas to aizstāja. Publiskie mezgli mainās, un sešas nedēļas vēlāk tas pats jautājums atnāk ar citu cilvēku. Viena rinda piezīmju failā atbild uz to sekundēs.

Ja no viena tīkla katrs mezgls cieš neveiksmi vienādi un no cita neviens, pārtrauc rediģēt profilus un paskaties uz vietējo ceļu. Uzvernēšanas portāls, filtrēts portu diapazons vai pārtverošs starpniekserveris radīs identiskas kļūdas nesaistītiem pakalpojumu sniedzējiem, un tieši šis modelis ir vienīgā pazīme, ka problēma nekad nav bijusi failā.

Saistītie raksti