İki şlüz, bir VPN: OpenVPN niyə səhv yuxarı kanalı seçir
Tunel qaydasındadır; soket səhv WAN-dan çıxır. Canlı peer ünvanını oxuyun, host marşrutunu bərkidin və ilk olaraq siyasət qaydalarını yoxlayın.
İki yuxarı kanal, bir tunel və trafik seçmədiyiniz bağlantıdan çıxır. Şəxsi alt şəbəkələr əlçatandır, jurnal uğurlu bağlantı bildirir və onu daşıyan ölçülən kanaldır. OpenVPN çıxışında heç bir şlüz qeyd olunmur, çünki müştəri heç vaxt birini seçməyib. O, uzaq ünvana soket açdı və həmin ünvana necə çatacağına nüvənin qərar verməsinə imkan verdi.
Tunel ünvanı son nöqtə deyil
Hər sessiyada iki fərqli yol var. Xarici yol şifrələnmiş nəqli serverin ictimai ünvanına aparır. Daxili yol serverin tunelə itələdiyi hər şeyi daşıyır və birinə aid marşrut qaydaları digərinə təsir etmir.
Profildəki remote girişi xarici təyinatı göstərir, ona görə bərkidilməli ünvan da budur. Bu həm də host adı fərqli həll olduqda və ya profil bir neçə remote sadaladıqda dəyişən dəyərdir.
Müştərinin həqiqətən zəng etdiyi ünvanı tapın
Konfiqurasiya faylı yerinə canlı soketi oxuyun. Soket cədvəli prosesin həqiqətən qoşulduğu peer-i göstərir və istisnanın uyğunlaşmalı olduğu dəyər budur. Profil sessiya başladıqdan sonra redaktə oluna bilər və soket nəyə zəng edildiyinin yeganə sübutudur:
ss -tunp | grep -i openvpn
journalctl -u openvpn-client@work --no-pager | grep -i "Peer Connection Initiated"
Jurnal sətri bağlantı anındakı peer ünvanını və portu göstərir. Əgər bu, profillə uyğun gəlmirsə, müştərinin qarşısında nəsə bağlantı başlamazdan əvvəl təyinatı yenidən yazır.
Ünvan ailəsini də yoxlayın. İkili stek profili IPv6 üzərindən qoşula bilər, halbuki istisnanız yalnız IPv4-ü əhatə edir və trafik sonra yazdığınız qaydadan fərqli qaydaya düşür. Eyni şey son nöqtə adından cavab verən proksi üçün də keçərlidir. Hər iki hal marşrutunuz heç nə etməyərkən işləyən tunel yaradır.
Son nöqtəni bərkidin və siyasət sırasını oxuyun
Host marşrutu istənilən standart marşrutdan daha dəqiqdir. Buna görə peer ünvanı üçün /32 onu ehtiva edən cədvəldə qalib gəlir. Adi forma şlüzü və cihazı açıq şəkildə göstərir:
ip route add 203.0.113.40/32 via 192.168.10.1 dev eth0
Bu marşrut yalnız axtarış həmin cədvələ çatdıqda kömək edir. Siyasət qaydaları sıra ilə qiymətləndirilir və ilk uyğunluq qərar verir, ona görə hər şeyi ikinci cədvələ göndərən qayda main-dəki host marşrutunuzu yan keçir. Marşrutun səlahiyyətli olduğunu fərz etməzdən əvvəl qaydaları oxuyun:
ip rule show
ip route get 203.0.113.40
İkinci əmri müştərinin istifadə etdiyi eyni mənbə ünvanı və ya işarə ilə soruşun, o zaman ki, siyasət onlardan asılıdır. O, nüvənin seçəcəyi marşrutu bildirir; bu, axtarış haqqında sübutdur və canlı soketin həmin yoldan istifadə etdiyinə dair sübut deyil.
Son nöqtə yerini dəyişdikdə
Bir neçə ünvana həll olunan host adı cavab dəyişən kimi daimi /32-ni etibarsız edir. Çoxsaylı remote sətirləri olan profildə də eyni problem var, çünki müştəri onlardan hər hansı birinə düşə bilər. Marşrutu əl ilə əlavə etmək əvəzinə müştərinin öz həyat dövranı çəngəllərindən yeniləyin. Razılaşdırılmış peer-i oxuyan up skripti host marşrutunu quraşdırır və istisnanı reallıqla uyğun saxlayır, uyğun down skripti isə onu silir.
Yeniləməni hostun qalan marşrut konfiqurasiyası ilə eyni yerdə qeyd edin. Yalnız növbəti yenidən başladılana qədər mövcud olan marşrut sınaqdır, düzəliş deyil.
Daxili siyasəti ayrı saxlayın
Xarici yolu köçürmək yeni şəxsi alt şəbəkəyə giriş vermir və serverin tunelə itələdiyi təyinatları dəyişmir. Alt qat marşrutu naqili seçir; itələnmiş marşrutlar tunelə nəyin girdiyini seçir. Bu iki qərarı ayrı saxlamaq bölünməni proqnozlaşdırıla bilən edir.
Məqsəd yalnız şifrələnmiş nəqli ölçülən kanaldan uzaq saxlamaqdırsa, standart marşruta toxunmayın və tək host istisnasını əlavə edin. Bir VPN bağlantısını köçürmək üçün maşın üzrə standart marşrutu dəyişmək hostdakı hər digər tətbiqi pozur.
Nəticəni iki müstəqil müşahidə ilə təsdiqləyin: soketin yerli ünvanı və cihazı, və şəxsi təyinatın həll olunduğu marşrut. Hər ikisi niyyətinizə uyğun olduqda bölünmə realdır. OpenVPN 2.6 təlimatı müştərinin hansı ünvana zəng edəcəyini müəyyən edən remote və yerli bağlama seçimlərini əhatə edir.