Profil çərşənbə axşamı işləyirdi, cümə günü isə müştəri otuz saniyə fırlanıb əl çəkir. Maşınınızda heç nə dəyişməyib. Məsələ də məhz budur: yüklənmiş konfiqurasiya bir hostu bir anda təsvir edir və digər tərəfdəki operatorun bu təsviri doğru saxlamaq öhdəliyi yoxdur. Yeməlisə tunel yenidən qalxana qədər təhlükəsizlik ayarlarını redaktə etməyə başlamaqdır. Bu instinkt insanların sertifikat doğrulaması söndürülmüş profili işlətməsinə gətirib çıxarır ki, bu da heç tunel olmamasından pisdir.

Fayl anı təsvir edir, müqaviləni yox

Konfiqurasiya faylı təsdiqlər toplusudur: bu host adı bu portda bu protokolla dinləyir, bu ada uyğun sertifikat təqdim edir və bu etimad məlumatlarını qəbul edir. Bunlardan hər hansı biri doğru olmaqdan çıxanda fayl köhnəlir və düzəliş sərhədin operator tərəfində olur, sizin ayarlarınızda yox.

İctimai node siyahıları öz təbiətinə görə bunu açıq göstərir. Node-ları könüllülər idarə edir, onlar peyda olub yox olur, ünvanlar təkrar istifadə edilir və portlar arxalarında duran şəbəkə tərəfindən bloklanır. Siyahı yenidən yaradılan bir anlıq görüntüdür, diskdəki nüsxə isə daha köhnə görüntünün fotoşəklidir.

Kommersiya xidmətləri daha yavaş dəyişir, lakin heç vaxt yox. Sertifikat orqanları rotasiya edir, dinləyici ümumi ünvandan ayrılmış ünvana keçir, köhnə protokol istifadədən çıxarılır və yeni şifrə siyahısı gəlir. Bunların hər biri müştəriniz qoşulmağa çalışıb faylın gözlədiyindən fərqli cavab alana qədər görünməz qalır.

Hər hansı ayara toxunmazdan əvvəl uğursuzluq mərhələsini oxuyun

Xəta mesajı hansı təsdiqin pozulduğunu deyir və hər təsdiqin tamamilə fərqli bərpası var. Host adı artıq həll olunmursa şifrələri redaktə etmək bir günorta itirir və heç kimə heç nə öyrətmir.

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

Orta sətir bloklanmış yolu pozulmuş əl sıxışmadan ayırır, üçüncü isə faktiki təqdim edilən sertifikatın verənini və etibarlılıq tarixlərini göstərir. Əgər o verən profilin bərkitdiyi verən deyilsə, sertifikat dəyişib və heç bir müştəri seçimi köhnə bərkitməni yenidən doğru etməyəcək.

Sertifikat və kimlik dəyişiklikləri səssiz olanlardır

Əksər uğursuzluqlar özlərini elan edir. Kimlik dəyişiklikləri etmir, çünki sertifikat adını bərkidən müştəri tamamilə yaxşı yeni sertifikatı çoxlarının səhv kimi oxuduğu mesajla rədd edəcək. Tunel qaydasındadır. Bərkitmə köhnədir.

Nəticə çıxarmazdan əvvəl kimlik seçimlərini axtarın:

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

Profil daxili CA daşıyırsa və operator yeni orqana keçibsə, köhnə fayl yeni serveri doğrulaya bilməz. CA blokunu operatorun dərc etdiyi blokla əvəz etmək qanuni düzəlişdir. Doğrulama direktivini silmək isə deyil və bu, tamamilə fərqli nəticə verən eyni düymə vuruşlarıdır.

Müştəri yeniləməsi operatorun heç bir dəyişikliyi olmadan eyni simptomu verə bilər. Səssizcə tolere edilən seçimlər rədd olunur və ya köhnəlmiş protokol çıxarılır. Bu, proqramınızdakı uyğunluq həddidir və serveri günahlandırmazdan əvvəl eyni müştəridə ikinci profili yoxlamağa dəyər.

Etibarlı əvəzi yalnız operator dərc edə bilər

Node yox olduqda əvəz orijinalı dərc edən mənbədən gəlməlidir. «Eyni server adını istifadə edir» deyə birbaşa mesajla gələn profil naməlum tərəfin yoxlanılmamış konfiqurasiyasıdır və onu idxal etmək həmin tərəfə marşrutlaşdırmanızın nəzarətini verir.

Yoxlama ucuzdur. Cari faylı dərc olunmuş yerdən götürün, son nöqtəni və protokolu siyahı ilə müqayisə edin və fayl adına güvənmək əvəzinə CA materialının barmaq izini təsdiqləyin:

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

İki heş yalnız boşluqlarda fərqlənirsə, format dəyişikliyiniz var. Son nöqtələrdə fərqlənirsə, operator nəyisə köçürüb və dərc olunmuş fayl səlahiyyətlidir. Dərc olunmuş fayl sizdəkindən köhnədirsə, yəqin ki, keşə baxırsınız və köhnə cavab sizi yanlış istiqamətə göndərəcək.

Köhnə qeydi çıxarın və nə baş verdiyini qeyd edin

İşlək əvəz yoxlanıldıqdan sonra köhnə profili ehtiyat kimi saxlamayın, silin. Yarım qoşulan köhnə qeyd tələdir: kəsinti zamanı seçiləcək, yavaş-yavaş uğursuz olacaq və sazlayan şəxs ilk on dəqiqəni səhv faylda keçirəcək.

Konfiqurasiyadan kənarda qısa qeyd saxlayın: tarix, köhnə son nöqtə, uğursuzluq mərhələsi və onu nə əvəz etdi. İctimai node-lar dəyişir və altı həftə sonra eyni sual başqa bir şəxslə gəlir. Qeyd faylındakı bir sətir ona saniyələr içində cavab verir.

Əgər bir şəbəkədən bütün node-lar eyni şəkildə uğursuz olursa, digərindən heç biri uğursuz olmursa, profil redaktə etməyi dayandırın və yerli yola baxın. Kaptiv portal, filtrlənmiş port aralığı və ya müdaxilə edən proksi əlaqəsiz provayderlərdə eyni xətaları yaradacaq və bu nümunə problemin heç vaxt fayl olmadığını göstərən yeganə siqnaldır.

Əlaqəli məqalələr