Müştəri qoşulduğunu deyir, resurs hələ də imtina edir və adətən növbəti addım nəyisə söndürmək olur. Bu cümlədəki iki nəzarət fərqli işlər görür: VPN əhatə olunan trafik üçün yol qurur, firewall isə hər bağlantı üzrə trafikin keçə biləcəyini qərarlaşdırır. İmtina edən siyasətlə işləyən tunel istifadəçinin yerindən tam qırıq tunel kimi görünür, ona görə vəzifə hansı qatın cavab verdiyini tapmaqdır. Budur mənim izlədiyim sıra və sizə dayanmağı söyləyən oxunuş.

Yolu siyasətdən ayırın

Uğursuzluğun forması ilə başlayın, çünki bu pulsuz məlumatdır. Paketin atılması taym-aut yaradır: müştəri yenidən cəhd edir, heç nə qayıtmır və əmr təslim olana qədər asılı qalır. Rədd imtina və ya sıfırlama yaradır: nəsə cavab verib «yox» dedi. Dinləməyən xidmət heç bir firewall iştirak etmədən hostun özündə imtina edir.

Bu üç nəticə fərqli qatlara işarə edir. Taym-aut o deməkdir ki, haradasa bir siyasət səssizcə atır, ya da marşrut maşından heç vaxt çıxmır. Rədd o deməkdir ki, hosta çatdınız və onun steki və ya host firewall-u imtina etdi. Heç nə olmaması, tunel interfeysi işlək və təyinat ünvanına marşrut yoxkən, yolun səhv olduğunu və heç bir firewall qaydasının bunu düzəltməyəcəyini bildirir.

Yolu bir keçiddə oxuyun

Tək bir qaydaya baxmazdan əvvəl tunelin təyinatı əhatə etdiyini təsdiqləyin. Yalnız ofis alt şəbəkəsini daşıyan bölünmüş tunel başqa aralığa sorğunu yönləndirməyəcək və o zaman uğursuzluq firewall bloku kimi görünür, halbuki deyil:

ip route get 10.20.4.15
ip -brief address show
wg show
sudo ipsec statusall

Marşrut çıxışı paketin hansı interfeysdən çıxacağını və hansı mənbə ünvanını daşıyacağını göstərir. Əgər bu interfeys tunel deyil, fiziki NIC-dirsə, problem marşrutlaşdırma və ya tunelin icazə verdiyi aralıklardadır və firewall-a deyil, VPN konfiqurasiyasına aiddir.

VPN-ə xas bir tələ ayrıca yoxlamağa dəyər. WireGuard-da peer-in AllowedIPs həm marşrut, həm də kriptoqrafik filtrdir: mənbə ünvanı peer-in icazəli çoxluğuna uyğun gəlməyən paket hər hansı firewall qaydasına baxılmadan atılır. Beləliklə, tamamilə düzgün host firewall-u siyasət kimi görünən səssiz atmanın arxasında dura bilər və düzəliş qayda deyil, əsas konfiqurasiya sətri olur.

Cavab verən qatda siyasəti oxuyun

Yol düzgün olduqdan sonra siyasəti hostdan xaricə doğru gəzin və sayğacları hərəkət edən tək qatı izləyin:

ss -ltn | grep ':443'
sudo nft list ruleset
sudo iptables -S INPUT
sudo ufw status verbose

Dinləyən soket qaydalardan fərqli suala cavab verir. Portda heç nə dinləmirsə, bağlantını nüvə rədd edir və heç bir giriş qaydası aidiyyəti deyil. Soket varsa və bağlantı uzaq müştəridən taym-aut-a düşürsə, yolda haradasa atma baş verir və qayda sayğacları bunun burada olub-olmadığını deyir.

Şübhələndiyiniz profil və ya zəncir üçün jurnallaşdırmanı açın, xaricdən təxmin etməyin. Mənbəni, təyinatı və portu göstərən tək bir qeydə alınmış atma qatı və qaydanı müəyyən edir, həm də paketin gəldiyini sübut edir ki, bunu heç bir müştəri tərəfi testi müəyyən edə bilməz.

Tunel orada bitəndə şlüz qərarını oxuyun

Saytlararası və ya uzaqdan giriş şlüzündə VPN istifadəçini doğrulaşdırır, siyasət isə resursa icazə verir və bunlar ayrı icazələrdir. Tunelə buraxılan istifadəçiyə avtomatik olaraq hər daxili hosta icazə verilmir və imtina çox vaxt tunelin özü sağlamkən yönləndirmə qaydasından gəlir. Eyni ayrılıq IPsec-də də görünür: trafiki seçən təhlükəsizlik siyasəti onu qəbul edən filtrdən fərqlidir, buna görə də ikisi RFC 4301.

Qayıdış yolunu giden yol qədər diqqətlə yoxlayın. Vəziyyətli filtrləmə cavabı görməlidir, ona görə tuneldən bir istiqamətdə, digər istiqamətdə isə onun ətrafından asimmetrik marşrutlaşdırma təsadüfi görünən və yalnız bəzi müştərilərdən təkrarlanan atmalar yaradır. Trafik şlüzə çatıb dayanırsa, hər hansı bir şeyi genişlətməzdən əvvəl yönləndirmə qaydasını və qayıdış marşrutunu birlikdə oxuyun.

Şlüz həm də NAT və ya maskaralama qaydasının əsl mənbəyi gizlədə bildiyi yerdir. Daxili hostlar müştəri yerinə şlüz ünvanını görsələr, müştəri hovuzuna uyğun gələn host firewall qaydaları heç vaxt uyğun gəlməyəcək və düzəliş hər serverdə deyil, şlüzdə olmalıdır.

Ən dar qatı dəyişin, sonra yoxlayın

Geniş təmirə müqavimət göstərin. Host firewall-u söndürmək, hər şeyə icazə verən qayda əlavə etmək və ya hər interfeysi etibarlı profilə məcbur etmək — hər biri öz işini görən nəzarəti aradan qaldırır və dəyişiklik hadisədən sonra da qalır. Mənbə aralığına və sözügedən porta məhdudlaşan qayda nəzərdən keçirmək üçün asandır, silmək üçün asandır və maşının qalan siyasətini toxunulmaz saxlayır.

Uğursuz olan testin özü ilə, eyni müştəridən yoxlayın, sonra yenidən qoşulduqdan bir dəfə də, çünki tunel yenidən danışıqlar aparmazdan əvvəl uyğun gələn qayda sonra uyğun gəlməyə bilər:

nc -vz 10.20.4.15 443
curl -v --max-time 5 https://10.20.4.15/

Bağlamazdan əvvəl:

  • Təyinat ünvanına marşrut tunel interfeysindən çıxır və mənbə ünvanı siyasətin gözlədiyinə uyğundur.
  • Portda nəsə dinləyir və imtina və ya taym-aut fərz edilmir, adlandırılmış qaydaya aid edilir.
  • Şlüz hər iki istiqamətdə yönləndirir və təyinat qaydalarınızın yazıldığı mənbəni görür.
  • Testin keçməsi üçün heç bir nəzarət söndürülmədi və etdiyiniz dəyişiklik bir mənbə aralığını və bir portu adlandırır.

Əlaqəli məqalələr