VPN konteynerinin şəbəkə ad məkanını paylaşan tətbiq konteynerinin öz interfeysi yoxdur, ona görə də tunel uğursuz olduqda heç nə göndərə bilməyəcəyini güman etmək asandır. Bu fərziyyə əhəmiyyətli olan nasazlıq rejimində yanlışdır. Əgər VPN prosesi ad məkanı hələ də qalarkən ölürsə, tətbiq öz soketlərini, ad məkanı isə öz marşrutlarını saxlayır və trafik hələ quraşdırılmış yolla davam edir. Həqiqi kill switch açıq filtrləmə siyasəti və işləmə mühitinin həyat dövrü sınaqlarıdır, başlanğıc asılılığı deyil.

Niyə ad məkanını paylaşmaq kill switch deyil

Ad məkanını paylaşmaq tətbiqin VPN konteynerinin interfeyslərini, ünvanlarını və marşrut cədvəlini istifadə etməsi deməkdir. Paylaşılan ad məkanı toxunulmaz olduğu müddətdə tətbiqin şəbəkəyə müstəqil yolunu aradan qaldırır və tunel yox olduqda həmin ad məkanının nə edəcəyi barədə heç nə demir.

Compose asılılıq şərtləri tətbiqin başlamasını asılılıq sağlam olana qədər gecikdirə bilər. Bu, yalnız bir zaman anını əhatə edir və sonrakı heç bir nasazlığı əhatə etmir, buna görə də bu başlanğıc sıralaması alətidir, davamlı çıxış firewall-u deyil.

Konteyner çıxdıqda əslində nə baş verir

Üç hadisəni fərqləndirin. Konteynerin içindəki VPN prosesi konteyner işləməyə davam edərkən ölə bilər. Konteyner dayana və ya silinə bilər, bu da ad məkanını məhv edir. Konteyner yenidən yaradıla bilər, bu da yeni ad məkanı və yeni qaydalar qurur.

Birinci halda ad məkanı qalır, standart marşrut hələ də fiziki interfeysə işarə edə bilər və tətbiq birbaşa göndərməyə davam edir. İkinci halda asılı tətbiq adətən bağlantını tamamilə itirir, çünki onun ad məkanı yox olub. Üçüncü halda tətbiq tunel hazır olmadan yeni ad məkanına yenidən qoşula bilər. Hər hal fərqli sınaq tələb edir və yalnız nizamlı kəsilməni əhatə edən dizayn ən az maraqlını əhatə edir.

Açıq çıxış siyasəti qurun

Siyasəti paylaşılan ad məkanının içində yazın ki, tətbiqin paketlərinə aid olsun. Forma dar istisnalarla standart atmaqdır: loopback, tunelin interfeysi və tunel nəqliyyatının ehtiyac duyduğu konkret son nöqtə ünvanı və portu.

Son nöqtə istisnası tunel qalxmadan əvvəl yerində olmalıdır, əks halda VPN müştərisi öz serverinə çata bilməz. Buna görə qaydalar toplusu fiziki interfeysə ümumiyyətlə icazə vermək əvəzinə xarici nəqliyyata açıq şəkildə icazə verir. Ad məkanında IPv6 bağlantısı varsa IPv6 qaydaları da əlavə edin, çünki yalnız IPv4-ü əhatə edən siyasət digər ailəni açıq qoyur.

DNS də siyasətin bir hissəsidir. Əgər tətbiq adları yalnız tunelin içindən əlçatan həlledicidən istifadə edərək həll edirsə, atma qaydası tunel sönəndə həlli pozacaq və bu, kill switch üçün düzgün davranışdır. Bunun istədiyiniz şey olub-olmadığını qəsdən qərara alın.

Həyat dövrünü yoxlayın, yalnız kəsilməni deyil

Tunel sağlam ikən təzə zərərsiz sorğu göndərin, sonra VPN prosesini öldürün və bir də göndərin. Konteyner dayandıqdan, yenidən başladıqdan və yenidən yaradıldıqdan sonra təkrarlayın. Təzə sorğu vacibdir, çünki mövcud bağlantı yenilərini bloklayan qayda dəyişikliyindən sağ çıxa bilər.

Bloklama mexanizmi kimi sağlamlıq yoxlamasına və ya çıxış IP axtarışına etibar etməyin. Yoxlama vəziyyəti müşahidə edir və bildirir; siyasət trafiki idarə edir. İkisi də eyni yerləşdirməyə aiddir və bir-birini əvəz etmir.

Qaydaları qeyd edin ki, sınaq yeniləmədən sağ çıxsın

Hər nasazlıq halı üçün gözlənilən nəticəni onu həyata keçirən qaydalarla birlikdə yerləşdirmə sənədlərinə yazın. Bu qeyd, obraz yeniləməsindən və ya işləmə mühitinin yüksəldilməsindən sonra eyni sınağın aparılmasına imkan verir, çünki ad məkanının davranışı və ya standart marşrutlar heç kim compose faylını redaktə etmədən dəyişə bilər.

VPN son nöqtəsinin tələb olunan xarici yolunu məhdudiyyətsiz tətbiq çıxışından ayrı saxlayın və DNS ilə IPv6-nı nəzərdə tutulan əhatə daxilində saxlayın. Siyasət rahatlıq üçün bütün fiziki interfeysə icazə verirsə, kill switch getdi. Docker şəbəkə sənədləri siyasətin qurulduğu paylaşılan ad məkanı quruluşunu təsvir edir və işləmə mühitinin davranışı şübhə altına düşəndə baxılmalı olan istinad odur.

Əlaqəli məqalələr