Windows güvenlik duvarının tek başına acil kapatma anahtarı olarak çalışıp çalışamayacağını sorun, birbirine uymayan iki kendinden emin yanıt alırsınız. Biri arabirim türü kuralının tüm işi yaptığını söyler; diğeri komut dosyaları olmadan çalışmadığını. İkisi de aynı mekanizmanın yarısını anlatır. Güvenlik duvarı engeli ifade edebilir ve sonucun gerçekten kapalı başarısız olup olmadığı üç şeye bağlıdır: Windows'un tünel bağdaştırıcısını nasıl sınıflandırdığı, uç nokta istisnasının hayatta kalıp kalmadığı ve ad çözümlemesi ile IPv6'nın kapsanıp kapsanmadığı. Bunlardan birini yanlış yapın, makine ya sızdırır ya da tüm bağlantıyı kaybeder.

Üç koşul, bu sırayla

İlk koşul sınıflandırmadır ve istediğiniz kuralın ifade edilebilir olup olmadığına karar verir. Windows güvenlik duvarı kuralları arabirim türüne göre sınırlanabilir: kablolu, kablosuz veya uzak erişim. Fiziksel türlerde giden trafiği engelleyip tünele izin veren bir ilke ancak Windows tüneli uzak erişim olarak tanırsa çalışır.

İkinci koşul uç nokta istisnasıdır. Herhangi bir tünel var olmadan önce istemci VPN sunucusuna fiziksel bağdaştırıcı üzerinden ulaşmalıdır, bu yüzden o bağdaştırıcıda tam bir engelleme tam da engellemeyi gereksiz kılacak bağlantıyı önler. İstisna sunucuyu ve bağlantı noktasını adlandırmalı, paket de henüz açılmamış tünele değil fiziksel ağ geçidinden dışarı çıkmalıdır.

Üçüncüsü kapsamdır. IPv4'ü engelleyip IPv6'yı unutan ya da uç nokta araması için yerel çözümleyiciye izin verip böylece diğer her aramaya da izin veren kural kümesi, anahtarın var olma nedenini oluşturan pencerede açık biçimde başarısız olur. Bu bir tasarım boşluğudur, güvenlik duvarı hatası değil. Aynı zamanda masadaki her testi atlatan boşluktur.

Sınıflandırma ilk kapıdır

Tek bir kural yazmadan önce Windows'un bağdaştırıcılar hakkında ne düşündüğüne bakın. Yerleşik Windows VPN bağlantısı normalde uzak erişim olarak görünür. Kendi sanal bağdaştırıcısını oluşturan üçüncü taraf istemci çoğu zaman kablolu görünür, yani kablolu bağdaştırıcılarla sınırlı bir engelleme tüneli de engeller.

Get-NetConnectionProfile | Select-Object Name,InterfaceAlias,NetworkCategory
Get-NetAdapter | Select-Object Name,InterfaceDescription,Status,ifIndex
Get-NetFirewallProfile | Select-Object Name,Enabled,DefaultOutboundAction

Üçüncü komut, varsayılan giden engellemenin zaten yürürlükte olup olmadığını söyler ve bu tüm tasarımın biçimini değiştirir. Varsayılan zaten engellemekse izin veren bir temele istisnalar değil izin kuralları yazıyorsunuz ve bu üzerinde düşünmesi çok daha kolay bir tutumdur.

Tünel bağdaştırıcınız kablolu olarak rapor veriyorsa, kapalı başarısızlık tasarımı için tek başına güvenlik duvarı doğru araç değildir ve hiçbir kural ayarı bunu değiştirmez. Her forum başlığındaki ikinci görüşün doğru olduğu durum budur.

Uç nokta istisnasının kural kadar rotaya da ihtiyacı var

Sınıflandırmanın çalıştığını varsayalım. İstisna iki parçadır ve farklı alt sistemlerde yaşarlar. Güvenlik duvarı kuralı trafiğe izin verir; ana bilgisayar rotası tünel kapalıyken onu doğru arabirimden dışarı çıkarır.

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

Rota olmadan istisna yalnızca varsayılan rota hâlâ fiziksel ağ geçidini gösterdiği sürece yardımcı olur. İstemci kendi varsayılan rotasını kurup sonra öldüğünde izin verilen paketlerin gidecek makul bir yeri kalmaz ve bağlantı yeniden kurulamaz. Bu başarısızlık bozuk istemci gibi görünür ama aslında eksik bir rotadır.

İstisnayı istemcinin izin verdiği kadar dar tutun. Bir adres ve bir bağlantı noktası denetlenebilir; sağlayıcının tüm ağını kapsayan bir aralık denetlenemez. O daha geniş kural aynı sağlayıcıda barındırılan başka her şeye de izin verir ve bu genellikle amaçladığınızdan fazladır.

DNS ve IPv6 açık biçimde başarısız olduğu yerlerdir

Ad çözümlemesi klasik sızıntıdır. Uç nokta bir ana bilgisayar adıysa istemci onu tünel var olmadan önce çözmelidir, bu da fiziksel bağdaştırıcıya bir çözümleyiciye ulaşma izni verilmesi gerektiği anlamına gelir. Aynı izin tünel kapalıyken diğer her aramayı dışarı salar ve ziyaret etmek üzere olduğunuz şeyi açığa çıkarmak için tek bir arama yeter.

IPv6 ikincisidir. IPv4 için yazılmış kurallar diğer aileyi kapsamaz ve birçok istemci yalnızca IPv4 rotaları kurar. Bu yüzden yerleşik IPv6 bağlantısı olan bir makine IPv4 tarafı sıkıca engellenmişken internete konuşmaya devam edebilir ve anahtar bunca zaman başarı bildirir.

GapWhat leaksControl
Resolver permitted for endpoint lookupEvery name queried while downPin the endpoint as an address, or block non-tunnel DNS
Rules only for IPv4Full IPv6 connectivityAdd the same rules for the other family
Application bound to physical interfaceIts own trafficFirewall cannot fix this; change the binding

Üçüncü satırı atlatmak yerine anlamaya değer. Güvenlik duvarı paketler hakkında karar verir, bir uygulamanın hangi arabirimi kullanmak istediği hakkında değil, ve açıkça bağlanan bir programı denetim altında tutmak zor olabilir. Bu, uygulamanın altında çalışan istemci tarafı anahtarın lehine bir argümandır, daha fazla kuralın değil.

İstemciyi durdurarak test edin, kabloyu çekerek değil

Anlamlı tek test, korunduğunuz başarısızlığı taklit edendir. Hizmeti durdurun, süreci öldürün ya da istemcinin oluşturduğu bağdaştırıcıyı devre dışı bırakın, sonra internete ve bir ada ulaşmayı deneyin:

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

Üçü de başarısız olmalıdır. Birincisi başarılı olursa engelleme yürürlükte değildir; ikincisi birincinin başarısız olduğu yerde başarılı olursa DNS sızıntınız var; üçüncüsü başarılı olursa IPv6 kapsanmıyor. Her sonuç yukarıdaki boşluklardan tam olarak birine işaret eder.

Uyku ve uyanmadan sonra testi yineleyin, çünkü Windows bir ağın genel mi özel mi olduğuna karar verdiğinde güvenlik duvarı profili değişebilir ve profile bağlı kurallar onu izler. Masada dayanıp trende başarısız olan tasarım bir kez test edilmiş tasarımdır.

Sınıflandırma kapısı ya da DNS gereksinimi yalnızca güvenlik duvarı yaklaşımını uygulanamaz kılıyorsa, istemci tarafı anahtar dürüst yanıttır. Tünel bunun yerine bir yönlendiricide bitiyorsa, ilke yönlendiriciye ait olmalıdır, çünkü oradaki tek bir kural arkasındaki her aygıtı kapsar ve Windows'un bağdaştırıcıyı nasıl adlandırdığına bağlı değildir.

İlgili makaleler