TLS iki uç arasında kanalı qoruyur və onun içində hansı xidmətlərin olduğunu demir. Örtük həmin kanalı bir konfiqurasiya edilmiş yönləndiriciyə çevirir: bir dinləyici, bir təyinat. SSL VPN adı ilə satılan məhsul isə adətən həmin primitiv ətrafında interfeys, marşrut cədvəli və giriş modeli əlavə edir. İkisini qarışdırmaq, işləyən tunelin şəbəkə girişi ilə səhv salınmasına səbəb olur.

Xidmət örtüyü əslində nəyi birləşdirir

Örtük yerli portda dinləyir və gələni konfiqurasiya edilmiş təyinatə yönləndirir; bu ya host və port, ya da yerli proqram ola bilər. Həmin təyinatı konfiqurasiya faylını yazan seçir, hər dəfə bir dinləyici üçün. Paketin quraşdırılması heç bir marşrut, virtual interfeys və açıq şəkildə sadalanmayan heç nə üçün əlçatanlıq yaratmır. Konfiqurasiyanı paket təsvirindən əvvəl oxuyun, çünki təsvir istifadə sinfini, fayl isə sizin halınızı əhatə edir.

Deməli, örtük haqqında faydalı sual onun şifrələməsi deyil, qurduğu zəncirin hər ucunda nə dayandığıdır.

application -> local listener -> TLS connection -> remote listener -> configured backend

Bu zənciri marketinq adından deyil, konfiqurasiyadan oxuyun. Hər ox öz ünvanı və öz giriş qaydaları olan ayrı bir şəbəkə addımıdır.

TLS kanalının bitdiyi yeri tapın

Əgər örtük TLS-i sonlandırırsa, sonra yönləndirdiyi hər şey yeni xassəli yeni bağlantıdır. Axın şəxsi seqmentdə açıq mətn ola bilər, ya da içində başqa qorunan protokol daşıya bilər. Arxa plan konfiqurasiyasını oxumadan hər ikisini fərz etmək, insanların xarici qatın bir daha görmədiyi məlumatı qoruduğu qənaətinə gəlməsinin yoludur. Ötürülən addım öz ünvanı və portu ilə ayrıca yoxlamaya layiqdir.

Dinləyicini və arxa planı ayrı-ayrılıqda yoxlayın, çünki ön qapıda uğurlu əl sıxışma arxasındakı xidmət haqqında heç nə demir.

ss -ltnp | grep -F 443
openssl s_client -connect svc.example.net:443 -servername svc.example.net </dev/null | openssl x509 -noout -subject -dates

Birinci əmr portun hansı prosesə aid olduğunu və hansı ünvanda dinlədiyini göstərir. İkincisi müştərinin faktiki aldığı sertifikatı çap edir; bu, port nömrəsinin əvəz edə bilmədiyi kimlik yoxlamasıdır.

Marşrutlaşdırılmış VPN-in örtükdən əlavə etdiyi şey

Marşrutlaşdırılmış VPN interfeys quraşdırır, seçilmiş prefikslərin sahibliyini götürür və hostun marşrutlaşdırma və giriş siyasəti ilə birləşir. Maşındakı hər tətbiq tunelin varlığını bilmədən faydalanır. Örtük isə bu imkanı bir konfiqurasiya edilmiş dinləyiciyə verir və orada dayanır.

Qəbul yenə ayrıdır. Müştəriyə autentifikasiya edən VPN hələ də müştərinin hansı resurslara çata biləcəyini bildirən avtorizasiyaya ehtiyac duyur, həmkarı autentifikasiya edən örtük isə hələ də öz icazələrini tətbiq edən arxa plana ehtiyac duyur.

Qanuni bir birləşmə var: qəsdən dəstəklənən TCP düzümündə TLS örtüyünün içində daşınan VPN protokolu. Bu iki qatı üst-üstə qoyur və örtüklə VPN-i eyni obyekt növü etmir.

Uğursuz olan sərhədi müqayisə edin

Heç nəyi dəyişməzdən əvvəl ön uc ünvanını, dinləyicini, həmkar kimliyini, arxa plan hədəfini və tətbiq əməliyyatını yazın. Sonra bənzəri bənzərlə müqayisə edin: fərqli host adı və ya portdan keçən uğur firewall və sertifikat şərtlərinin eyni olduğunu sübut etmir.

Rədd edilmiş arxa plan sorğusu heç vaxt ön uc kimlik yoxlamasını söndürməklə düzəldilməməlidir. Bu, diaqnoz qoyula bilən avtorizasiya uğursuzluğunu diaqnoz qoyula bilməyən etimad uğursuzluğu ilə dəyişir.

curl -sv --resolve svc.example.net:443:203.0.113.10 https://svc.example.net/health 2>&1 | head -30

Adı seçilmiş ünvana bərkitmək ad həllini əlçatanlıqdan ayırır və bu, adətən ikisindən hansının pozulduğunu deməyin ən sürətli yoludur.

Əhəmiyyətli müqayisə qorunan son nöqtə cütünü, daşınan yükü, ondan istifadə edən tətbiqləri və təyinatda tətbiq edilən icazəni adlandırır. TLS bu təsvirə töhfə verir, amma onu tamamlamır.

Əlaqəli məqalələr