Профил је радио у уторак, а у петак клијент се врти тридесет секунди и одустаје. Ништа на вашем рачунару није промењено. Управо је то поента: преузета конфигурација описује један хост у једном тренутку, а оператер са друге стране није дужан да тај опис одржава истинитим. Искушење је да почнете да мењате безбедносне поставке док се тунел не врати. Тај инстинкт је разлог зашто људи на крају покрећу профил са искљученом провером сертификата, што је горе него да тунела уопште нема.

Датотека описује тренутак, не уговор

Конфигурациона датотека је скуп тврдњи: ово име хоста слуша на овом порту са овим протоколом, представља сертификат који одговара овом имену и прихвата ове акредитиве. Када било која од њих престане да буде истинита, датотека је застарела и поправка припада страни оператера на граници, а не вашим поставкама.

Јавни спискови чворова то по својој природи чине очигледним. Чворове воде волонтери, појављују се и нестају, адресе се рециклирају, а портове блокира мрежа иза које се налазе. Списак је снимак који се поново генерише, а копија на вашем диску је фотографија старијег снимка.

Комерцијалне услуге се мењају спорије, али не никада. Сертификациона тела се ротирају, слушалац се премешта са заједничке адресе на посебну, стари протокол се повлачи и стиже нова листа шифара. Свака од тога је невидљива док ваш клијент не покуша да се повеже и не добије другачији одговор од оног који датотека очекује.

Прочитајте фазу отказа пре него што додирнете поставку

Порука о грешци каже која тврдња није издржала, а свака тврдња има потпуно другачију поправку. Мењање шифара када се име хоста више не разрешава губи једно поподне и никога ничему не учи.

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

Средњи ред раздваја блокиран пут од поквареног руковања, а трећи приказује издавача и датуме важности сертификата који се стварно представља. Ако тај издавалац није онај који је профил причврстио, сертификат се променио и ниједна опција на страни клијента неће поново учинити стари пин исправним.

Промене сертификата и идентитета су тихе

Већина отказивања сама се најављује. Промене идентитета не, јер клијент који причвршћује име сертификата одбиће потпуно добар нови сертификат с поруком коју многи читају као грешку у софтверу. Тунел је у реду. Пин је застарео.

Потражите опције идентитета пре него што било шта закључите:

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

Ако профил носи уграђени CA и оператер је прешао на ново тело, стара датотека не може да валидира нови сервер. Замена CA блока оним који је оператер објавио је легитимна поправка. Брисање директиве за проверу није, и то су исти притисци тастера са сасвим другачијим исходом.

Надоградња клијента може да произведе исти симптом без икакве промене код оператера. Опције које су тихо толерисане сада се одбијају, или се застарели протокол уклања. То је граница компатибилности у вашем софтверу и вреди пробати други профил са истим клијентом пре него што окривите сервер.

Само оператер може да објави ваљану замену

Када чвор нестане, замена мора да дође из истог извора који је објавио оригинал. Профил који стигне у директној поруци зато што „користи исто име сервера“ је непроверена конфигурација од непознате стране, а његов увоз даје тој страни контролу над вашим рутирањем.

Провера је јефтина. Узмите текућу датотеку са објављеног места, упоредите крајњу тачку и протокол са списком и потврдите отисак CA материјала уместо да верујете имену датотеке:

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

Ако се два хеша разликују само у размацима, имате промену форматирања. Ако се разликују у крајњим тачкама, оператер је нешто преместио и објављена датотека је ауторитет. Ако је објављена датотека старија од ваше, вероватно гледате у кеш и застарели одговор ће вас послати у погрешном смеру.

Повуците стари унос и запишите шта се догодило

Када се потврди радна замена, избришите стари профил уместо да га чувате као резерву. Застарели унос који се пола повезује је замка: биће изабран током прекида, споро ће отказивати, а особа која тражи грешку провешће првих десет минута на погрешној датотеци.

Водите кратак запис изван конфигурације: датум, стару крајњу тачку, фазу отказа и шта га је заменило. Јавни чворови се мењају и шест недеља касније исто питање долази са другом особом. Један ред у датотеци с белешкама одговара на њега за секунде.

Ако из једне мреже сваки чвор откаже на исти начин, а из друге ниједан, престаните да уређујете профиле и погледајте локални пут. Заробљени портал, филтрирани опсег портова или пресрећући прокси произвешће идентичне грешке код неповезаних провајдера, и управо тај образац је једини сигнал да проблем никада није био у датотеци.

Повезани чланци