VPN müştərisindən ping keçir, TCP xidməti cavab vermir və ufw allow 443/tcp heç nəyi dəyişmir. Tətbiq şlüzün özündə deyil, onun arxasındakı hostda işlədikdə bu icazə yanlış trafik yolu üçün yazılmış olur. Paket firewall-a ünvanlanmayıb və yerli prosesə çatdırılmır, ona görə giriş qaydaları onu heç vaxt görmür. Düzəliş yönləndirilən axına yönəlmiş marşrut qaydasıdır və bunun sübutu artıq jurnalda var.

Hədəfin yerli və ya yönləndirilmiş olduğunu müəyyənləşdirin

Paketi nüvənin gördüyü kimi oxuyun. Şlüz üzərindəki xidmətə çatdırılan trafik yerli girişdir. Şlüzün başqa hosta yönləndirdiyi trafik yönləndirilmiş sayılır və UFW iki yol üçün ayrı qayda dəstləri saxlayır. Bu fərqi paketin hansı interfeysdən gəldiyi deyil, hədəf ünvanı və marşrut axtarışı müəyyən edir.

IN və OUT sahələrində eyni interfeysi göstərən jurnal sətri yenə də yönləndirilmiş paketi təsvir edə bilər, çünki müştəriləri bir cihazın içindən və bayırına daşıyan tunnel məhz belə görünür. Hədəf ünvanı bu sualı interfeys adlarından daha tez həll edir. Eyni adı iki dəfə görmək yerli çatdırılmanı sübut etmir və yerləşdirmənin heç vaxt yaratmadığı tunnel interfeysini uydurmaq da kömək etmir.

Hər hansı qayda əlavə etməzdən əvvəl bloku oxuyun

İcazəli bir bağlantı cəhdini təkrarlayın və onun mənbəyini, hədəfini, protokolunu və hədəf portunu şlüzün qeyd etdiyi kimi yazın. Bu dörd dəyəri jurnal yazısı ilə və xidmətin faktiki yeri ilə müqayisə edin. Əvvəlki uğurlu ping yalnız öz mübadiləsinin icazəli olduğunu sübut edir və firewall tətbiqə gedən TCP SYN-i tamamilə başqa cür qiymətləndirə bilər.

sudo dmesg | grep "UFW BLOCK" | tail -n 5
sudo ufw status numbered

Birinci əmr hökmü öz sahələri ilə qaytarır, ikincisi isə artıq yüklənmiş olanı və hansı sırada olduğunu göstərir. Hər hansı dəyişiklik etməzdən əvvəl ikisini də oxuyun, çünki qaydanızdan yuxarıda duran əvvəlki blok heç bir çatışmayan qayda olmadan eyni simptomu izah edir.

Uyğun gələn ən dar marşrut qaydasını yazın

Bu nümunədə müştərilər tun0 üzərindən 172.20.8.0/24-dən gəlir, xidmət 10.30.0.15 ünvanında 8443 portunda dinləyir və şlüz ens5 vasitəsilə çıxır. Bu dəyərlər bulud VPC standartı olan 10.0.0.0/16 və ya ev şəbəkəsi 192.168.0.0/16 ilə heç oxşamamaq üçün seçilib və 8443 nümunəni şlüzün öz 443 dinləyicisindən uzaq tutur.

sudo ufw --dry-run route allow in on tun0 out on ens5 proto tcp from 172.20.8.0/24 to 10.30.0.15 port 8443

Quru işə salma nəticədə yaranacaq qayda dəstini çap edir və bu, qaydanızın mövcud blokdan əvvəl, yoxsa sonra düşdüyünü görməyin ən ucuz yoludur. İnterfeys adlarını və daxili ünvanları nümunəyə deyil, yerləşdirməyə uyğun yoxlayın və unutmayın ki, hədəf NAT əvvəl işləyəndə filtr tərcümə olunmuş hədəfi görür.

Qayıdış yolunu vəziyyətli saxlayın

UFW icazəli bağlantıları izləyir, buna görə icazəli yönləndirilmiş axının cavabları açıq əks qayda olmadan qəbul edilir. İşləri qaydaya salmaq üçün əks istiqamətdə məhdudiyyətsiz qayda əlavə etmək siyasəti tək xidmətdən qat-qat genişləndirir və adi sorğu-cavab mübadiləsi üçün tələb olunmur. Qayıdış yolunu gizli, qayda dəstini isə oxunaqlı saxlayın.

Qaydanı yalnız quru işə salma niyyətinizə uyğun gəldikdən sonra tətbiq edin, sonra sıralı siyahının onu gözlənilən yerdə göstərdiyini təsdiqləyin. VPN dinləyicisini və idarəetmə qaydalarını ayrı məsələlər kimi saxlayın; onların dəyişdirilməsi bir tətbiqə icazə verməkdən fərqli qərardır. Dəyişikliyi topologiyanın yazıldığı yerdə qeyd edin ki, növbəti mühəndis onu paket tutmasından yenidən kəşf etməsin.

sudo ufw route allow in on tun0 out on ens5 proto tcp from 172.20.8.0/24 to 10.30.0.15 port 8443
sudo ufw status numbered

UFW-un sizin üçün tətbiq edə bilmədiklərini yoxlayın

Düzgün qayda yenə də nüvə yönləndirməsi və xidmətə çatan marşrut tələb edir. Firewall-u ikinci dəfə günahlandırmazdan əvvəl hər ikisini təsdiqləyin.

sysctl net.ipv4.ip_forward
ip route get 10.30.0.15

Sonra hostdan kənara baxın. Bulud instansiyasında qonağın UFW siyasəti təhlükəsizlik qruplarını, subnet ACL-lərini və ya provayderin öz yönləndirmə konfiqurasiyasını əvəz etmir, ona görə yerli blok bir təbəqə barədə sübutdur, bütün digər təbəqələrin xidmətə icazə verdiyinin sübutu deyil.

Firewall aktiv vəziyyətdə yeni bağlantını icazəli mənbədən və əlaqəsiz bir mənbədən sınaqla bitirin. UFW-nu söndürmək simptomu aradan qaldırır və sübutu həmin əmrdə məhv edir, buna görə də bu, ilk deyil, son təcrübə olmalıdır.

Əlaqəli məqalələr