Kimsə sizə profil göndərir, siz onu idxal edirsiniz və otuz saniyə sonra hansısa klient heç kimin yoxlamadığı ünvana zəng edir. Əvvəlcə faylı mətn redaktorunda oxuyun, çünki vacib olan hər şey bir neçə göstərişdə cəmlənir: remote, proto, port, ca, cert, tls-crypt və verify-x509-name. Qalan hər şey defoltdur və sürprizlər məhz defoltlarda yaşayır.

Faylın istifadə edə biləcəyi bütün son nöqtələri sadalayın

Son nöqtələrlə başlayın, çünki bir profil bir neçəsini saxlaya bilər. grep -nE '^[[:space:]]*(remote|proto|port|remote-random|connection)' profile.ovpn hər namizədi fayl sırası ilə çap edir, o cümlədən daxili <connection> bloklarının içində yerləşənləri.

Göstəriş portu buraxanda klient dinləyicinin defolt dəyərinə qayıdır, yəni tək remote vpn.example.com port 1194 deməkdir və faylda sonra hansı proto görünməsindən asılı deyil. Bir neçə sadə remote sətri alternativdir: klient onları sıra ilə sınayır, yalnız remote-random onları qarışdırmadıqca, və heç vaxt səssizcə başqa operatorun hostunu əvəz etmir. Əlaqəsiz domenlərdə iki remote sətri dayanıb hansının nəzərdə tutulduğunu soruşmalı olduğunuz yerdir.

proto yazılışına da diqqət yetirin. tcp klient tərəfindəki tcp-client üçün sinonim kimi qəbul edilir, lakin klient profilində tcp-server konfiqurasiya xətasıdır və təmiz uğursuzluq əvəzinə adətən donmaya səbəb olur.

Əvvəlcə adı, sonra portu təsdiqləyin

dig +short vpn.example.com adın mövcud olub-olmadığını və hansı ünvanları qaytardığını deyir, çoxünvanlı və ya proksili son nöqtə qanuni olaraq bir neçə ünvan qaytara bilər. Adın həll olunması ilkin şərtdir, mülkiyyət sübutu deyil; hər kəs bir adı hansısa ünvana yönəldə bilər və bir ünvan çoxlu ada cavab verə bilər.

Sonra tapdığınız portda dinləyicini yoxlayın, nəqliyyat qatına uyğun. TCP üzərində openssl s_client -connect vpn.example.com:1194 -servername vpn.example.com serverin təqdim etdiyi zənciri çap edir. UDP üzərində DTLS lazımdır: openssl s_client -dtls1_2 -connect vpn.example.com:1194 eyni əl sıxışmasını veraqramlar üzərində işlədir. Tamamlanmış əl sıxışması nəyinsə dinlədiyini və sertifikat saxladığını sübut edir, bu pingin göstərdiyindən çox və profilin öz etimad ayarlarının tələb etdiyindən azdır.

Əl sıxışması uğursuz olanda və host pingə cavab verəndə port yəqin ki, səhvdir və ya filtrlənib. Bunu düzgün portu tələb etmək üçün səbəb hesab edin, yaxın portları süpürmək üçün dəvət deyil. nc -vzu də bəzi steklərdə heç nə dinləmədən uğur bildirir, ona görə də arxasında əl sıxışması olmayan sadə UDP yoxlaması heç nə demək deyil.

Etimad sancaqlarını ünvandan ayrı oxuyun

Ünvan klientin hara getdiyini müəyyən edir; etimad bloku gəldikdən sonra kimə inandığını müəyyən edir. verify-x509-name "vpn.example.com" name subyektin ümumi adını sancaqla bağlayır, remote-cert-tls server isə server autentifikasiyası üçün genişləndirilmiş açar istifadəsini tələb edir. Operatorun sizə verdiyi profildə hər ikisi olmalıdır.

ca, daxili <ca> bloku və ya tls-crypt yaxud tls-auth axtarın. tls-auth istifadə edən profil üçün, server tərəfi 0 istiqamətini işlədəndə, klientdə key-direction 1 lazımdır, və uyğunsuzluq əl sıxışmasını sertifikat qüsuru kimi oxunan TLS xətası ilə uğursuz edir. Adını indicə həll etdiyiniz operatora aid olmayan daxili CA faylın iki mənbədən yığıldığını bildirir və bu, qəti şəkildə rədd edilməli olan haldır.

verify-x509-name name, name-prefix və ya subject rejimlərini qəbul edir və sonuncusu tam fərqləndirilmiş adı serverin çap etdiyi dəqiq sıra ilə gözləyir. Dəyərin formasına uyğun rejim seçin, çünki klient yaxın buraxılış barədə xəbərdarlıq etmək əvəzinə hər bağlantını rədd edir. Özünüz yazmadığınız fayl üçün sadə host adı ilə name ən az təəccübləndirən seçimdir.

Səssizcə uğursuz olan seçimləri yoxlayın

OpenVPN 2.6 şifrələri data-ciphers vasitəsilə razılaşdırır və yalnız köhnə cipher AES-256-CBC sətri daşıyan profil nəzarət kanalını tamamlayıb sonra məlumatda dayana bilər. Bu dəyəri oxumaq faylın qoşulduğunuz serverdən əvvəl olduğunu deyir; 2.6 üçün təlimat səhifəsi razılaşma sırasını sadalayır, əgər onu operatora sitat gətirmək lazım olsa.

Fayl adı olmayan auth-user-pass klientin sorğu verəcəyini bildirir, yəni özünü tamamlı görünən profil də etimadnamə tələb edir. auth-user-pass credentials.txt sizə yəqin ki, göndərilməmiş faylı gözlədiyini bildirir. nobind və resolv-retry infinite adi və zərərsizdir, halbuki explicit-exit-notify yalnız UDP üçündür və TCP üzərində faydasızdır.

Bunların heç biri profilin hara qoşulduğunu dəyişmir, lakin hər biri ümumiyyətlə qoşulub-qoşulmadığını dəyişir və heç biri klientin idxal pəncərəsində görünmür.

Qərar verin, sonra qərarınızı qeyd edin

Bu oxunuşdan sonra üç nəticə var və yalnız biri idxaldır. Son nöqtə və sancaqlar ayrı kanaldan aldığınız təlimatlara uyğun gələndə onu idxal edin. Son nöqtə düzgün görünəndə, lakin sancaqlar və ya CA uyğun gəlməyəndə düzəldilmiş fayl istəyin. Fayl müxtəlif mənbələrdən olan son nöqtələri və ya CA materialını qarışdırırsa, onu silin və təzə nüsxə istəyin.

Baxdığınız heşi qeyd edin ki, növbəti adam faylın dəyişib-dəyişmədiyini bilə bilsin: sha256sum profile.ovpn, qeydlərinizdə son nöqtənin yanına yapışdırın. Profil ünvanlar siyahısı deyil, bütöv bir düzümdür, ona görə heç vaxt işlək remote-u başqasının etimad blokuna onun etimadnamələrini saxlayaraq yeritməyin.

Qeydləri müqayisə edərkən şəxsi açarları və parolları ekran şəkillərindən və söhbət axınlarından kənarda saxlayın. Son nöqtə və məxfi olmayan seçimlər dəqiq sual vermək üçün kifayətdir, qalanı isə faylda qalmalıdır.

Onu idxal etsəniz və ilk cəhd uğursuz olsa, klienti --verb 3 ilə işə salın və ilk on sətri oxuyun: həll olunmuş remote ünvanı, razılaşdırılmış proto və TLS xətası bu sıra ilə görünür ki, bu da yuxarıdakı yoxlamalardan hansını atladığınızı deyir.

Əlaqəli məqalələr