Yalnız Windows firewall-u VPN qapanma açarı kimi: dayanırmı?
İnterfeys növü qaydaları fiziki adapterləri bloklaya bilər, amma üçüncü tərəf tuneli çox vaxt kabel kimi görünür. Təsnifatı, son nöqtə marşrutunu, sonra DNS-i yoxlayın.
Windows firewall-unun tək başına qapanma açarı rolunu oynaya bilib-oynaya bilməyəcəyini soruşun və iki əmin, bir-birilə uyğunsuz cavab alırsınız. Biri deyir ki, interfeys növü qaydası bütün işi görür; digəri deyir ki, skript olmadan işləməz. İkisi də eyni mexanizmin yarısını təsvir edir. Firewall bloku ifadə edə bilir, nəticənin həqiqətən bağlı rejimdə uğursuz olub-olmaması isə üç şeydən asılıdır: Windows tunel adapterini necə təsnif edir, son nöqtə istisnası qalırmı, ad həlli və IPv6 əhatə olunurmu. Bunlardan hər hansı birini səhv etsəniz, maşın ya sızacaq, ya da bütün bağlantını itirəcək.
Üç şərt, bu sıra ilə
Birinci şərt təsnifatdır və istədiyiniz qaydanın ümumiyyətlə ifadə oluna biləcəyini müəyyən edir. Windows firewall qaydaları interfeys növünə görə məhdudlaşdırıla bilər: kabel, simsiz və ya uzaq giriş. Fiziki növlərdə çıxan trafiki bloklayıb tunelə icazə verən siyasət yalnız Windows tuneli uzaq giriş kimi tanıdıqda işləyir.
İkinci şərt son nöqtə istisnasıdır. Hər hansı tunel yaranmazdan əvvəl müştəri VPN serverinə fiziki adapter üzərindən çatmalıdır, ona görə də həmin adapterdə tam blok bloku lazımsız edəcək bağlantının özünü dayandırır. İstisna serveri və onun portunu göstərməli, paket isə hələ açılmamış tunelə deyil, fiziki şlüz vasitəsilə yönləndirilməlidir.
Üçüncüsü əhatədir. IPv4-ü bloklayıb IPv6-nı unudan və ya son nöqtə axtarışı üçün yerli həlledicinin icazəsinə görə bütün digər axtarışlara da icazə verən qaydalar dəsti məhz qapanma açarının əhatə etmək üçün mövcud olduğu pəncərədə açıq şəkildə uğursuz olur. Bu, firewall-da səhv deyil, dizayn boşluğudur. Bu, həm də masada hər sınaqdan sağ çıxan boşluqdur.
Təsnifat birinci qapıdır
Tək bir qayda yazmazdan əvvəl Windows-un adapterlər haqqında nə düşündüyünə baxın. Doğma Windows VPN bağlantısı adətən uzaq giriş kimi görünür. Öz virtual adapterini yaradan üçüncü tərəf müştərisi isə çox vaxt kabel kimi görünür, yəni kabel adapterlərinə yönəlmiş blok tuneli də bloklayır.
Get-NetConnectionProfile | Select-Object Name,InterfaceAlias,NetworkCategory
Get-NetAdapter | Select-Object Name,InterfaceDescription,Status,ifIndex
Get-NetFirewallProfile | Select-Object Name,Enabled,DefaultOutboundAction
Üçüncü əmr defolt çıxış blokunun artıq qüvvədə olub-olmadığını göstərir və bu, dizaynın bütün formasını dəyişir. Əgər defolt artıq blokdursa, siz icazəverən əsasa istisnalar deyil, icazə qaydaları yazırsınız və bu, haqqında düşünmək üçün daha asan mövqedir.
Tunel adapteriniz kabel kimi görünürsə, yalnız firewall bağlı rejimli dizayn üçün düzgün alət deyil və heç bir qayda tənzimləməsi bunu dəyişmir. Bu, hər forum mövzusundakı ikinci rəyin haqlı olduğu haldır.
Son nöqtə istisnasına qayda ilə yanaşı marşrut da lazımdır
Tutaq ki, təsnifat işləyir. İstisna iki hissədən ibarətdir və onlar müxtəlif alt sistemlərdə yaşayır. Firewall qaydası trafikə icazə verir; host marşrutu isə tunel söndüyü zaman onun düzgün interfeysdən çıxmasını təmin edir.
New-NetFirewallRule -DisplayName "VPN endpoint allow" -Direction Outbound -Action Allow \
-Protocol TCP -RemoteAddress 203.0.113.9 -RemotePort 443 -InterfaceType Wired,Wireless
New-NetRoute -DestinationPrefix 203.0.113.9/32 -InterfaceIndex 12 -NextHop 192.168.1.1
Get-NetRoute -DestinationPrefix 203.0.113.9/32
Marşrutsuz son nöqtə istisnası yalnız defolt marşrut hələ fiziki şlüzə baxdıqda kömək edir. Müştəri öz defolt marşrutunu quraşdırıb sonra söndükdə, icazə verilən paketlərin gedəcəyi məntiqli yer qalmır və bağlantı yenidən qurula bilmir. Bu uğursuzluq pozulmuş müştəri kimi görünür, əslində isə çatışmayan marşrutdur.
İstisnanı müştərinin icazə verdiyi qədər dar saxlayın. Bir ünvan və bir port yoxlanıla biləndir; provayderin bütün şəbəkəsini əhatə edən aralıq isə yox. Bu daha geniş qayda həm də eyni provayderdə yerləşdirilən başqa hər şeyə icazə verir, bu isə adətən nəzərdə tutduğunuzdan çoxdur.
DNS və IPv6 açıq şəkildə uğursuz olduğu yerlərdir
Ad həlli klassik sızmadır. Son nöqtə host adıdırsa, müştəri tunel yaranmazdan əvvəl onu həll etməlidir, yəni fiziki adapterə həllediciyə çatmaq icazəsi verilməlidir. Həmin icazə tunel söndüyü zaman bütün digər axtarışların çıxmasına imkan verir və bir axtarış ziyarət etmək üzrə olduğunuzu aşkar etməyə kifayətdir.
IPv6 ikincisidir. IPv4 üçün yazılmış qaydalar digər ailəni əhatə etmir və bir çox müştəri yalnız IPv4 marşrutları quraşdırır. Beləliklə, doğma IPv6 bağlantısı olan maşın IPv4 tərəfi möhkəm bloklanmış halda internetlə danışmağa davam edə bilər və qapanma açarı boyu uğur bildirir.
| Gap | What leaks | Control |
|---|---|---|
| Resolver permitted for endpoint lookup | Every name queried while down | Pin the endpoint as an address, or block non-tunnel DNS |
| Rules only for IPv4 | Full IPv6 connectivity | Add the same rules for the other family |
| Application bound to physical interface | Its own traffic | Firewall cannot fix this; change the binding |
Üçüncü sətir ondan yan keçmək deyil, onu başa düşməyə dəyər. Firewall paketlər barədə qərar verir, tətbiqin hansı interfeysdən istifadə etmək istədiyi barədə deyil və açıq şəkildə bağlanan proqramı saxlamaq çətin ola bilər. Bu, tətbiqin altında işləyən müştəri tərəfli qapanma açarının, daha çox qaydanın lehinə arqumentdir.
Kabeli çəkməklə deyil, müştərini dayandırmaqla sınaqdan keçirin
Yeganə mənalı sınaq qorunduğunuz uğursuzluğu təqlid edəndir. Xidməti dayandırın, prosesi öldürün və ya müştərinin yaratdığı adapteri söndürün, sonra internetə və bir ada çatmağa çalışın:
Stop-Service -Name "YourVpnService" -Force
Test-NetConnection -ComputerName 1.1.1.1 -Port 443
Resolve-DnsName example.com
Test-NetConnection -ComputerName 2606:4700:4700::1111 -Port 443
Üçü də uğursuz olmalıdır. Birinci uğur qazanırsa, blok qüvvədə deyil; ikinci birincinin uğursuz olduğu yerdə uğur qazanırsa, DNS sızmanız var; üçüncü uğur qazanırsa, IPv6 əhatə olunmayıb. Hər nəticə yuxarıdakı boşluqlardan dəqiq birinə işarə edir.
Yuxu və oyanışdan sonra sınağı təkrarlayın, çünki Windows şəbəkənin ictimai və ya şəxsi olduğuna qərar verdikdə firewall profili dəyişə bilər və profilə yönəlmiş qaydalar onu izləyir. Masada dayanan və qatarda uğursuz olan dizayn bir dəfə sınaqdan keçirilmiş dizayndır.
Təsnifat qapısı və ya DNS tələbi yalnız firewall yanaşmasını işlək etmirsə, müştəri tərəfli qapanma açarı dürüst cavabdır. Tunel əvəzində marşrutlaşdırıcıda bitirsə, siyasətə marşrutlaşdırıcı sahib olmalıdır, çünki oradakı bir qayda arxasındakı hər cihazı əhatə edir və Windows-un adapteri necə adlandırmasından asılı deyil.