PowerShell ile Windows Defender Güvenlik Duvarı kuralları
Windows Server 2022 ve 2025'te Defender Güvenlik Duvarı'nı yönetin: profiller, port açma, Uzak Masaüstü'nü IP ile sınırlama ve adres engelleme.
- Orta
- 15 dk okuma
- Güncellendi
Denendiği sistemler: Windows Server 2022, Windows Server 2025
Bu sayfada
- Başlamadan önce
- 1. adım: Profilleri kontrol edin
- 2. adım: Bir port açın
- 3. adım: Uzak Masaüstü'nü adreslerinizle sınırlayın
- 4. adım: Herhangi bir servisi belirli adreslerle sınırlayın
- 5. adım: Bir adresi engelleyin
- Kuralları gözden geçirin ve kaldırın
- Düşürülen paketleri kaydedin
- Sorun giderme
- Sonraki adımlar
Windows Defender Güvenlik Duvarı Windows Server'a yerleşiktir ve varsayılan olarak etkindir. Bu rehber onu, konsolda tıklamaktan daha hızlı tekrarlanabilen ve belgelenebilen PowerShell ile yönetir. Komutları Yönetici olarak çalıştır ile açılmış PowerShell'de çalıştırın. 198.51.100.7 yerine kendi IP adresinizi yazın.
Başlamadan önce
- Uzak Masaüstü ile oturum açın ve kuralları değiştirirken oturumu açık tutun.
- Hizmet sayfanızda görünüyorsa web konsolunu hazır tutun.
- Kendi genel IP adres(ler)inizi bilin.
1. adım: Profilleri kontrol edin
Get-NetFirewallProfile | Select-Object Name, Enabled, DefaultInboundAction, DefaultOutboundActionDoğrulama: tüm profiller Enabled : True durumundadır. Varsayılan gelen eylemi, hiçbir kuralın izin vermediği trafiği engeller. Ağınızın hangi profili kullandığını bulmak için:
Get-NetConnectionProfile2. adım: Bir port açın
Bir web sunucusu için gelen HTTPS'e izin verin:
New-NetFirewallRule -DisplayName "Allow HTTPS" -Direction Inbound -Protocol TCP -LocalPort 443 -Action AllowDaha fazla örnek:
New-NetFirewallRule -DisplayName "Allow HTTP" -Direction Inbound -Protocol TCP -LocalPort 80 -Action Allow
New-NetFirewallRule -DisplayName "Game server UDP" -Direction Inbound -Protocol UDP -LocalPort 27015-27030 -Action AllowDoğrulama: porta bir servis dinlemeye başladığında bilgisayarınızdan Test-NetConnection 203.0.113.10 -Port 443 başarılı olur.
3. adım: Uzak Masaüstü'nü adreslerinizle sınırlayın
Yerleşik Uzak Masaüstü kuralları her yerden bağlantıya izin verir. Bunları adreslerinizle sınırlayın:
Set-NetFirewallRule -DisplayGroup "Remote Desktop" -RemoteAddress 198.51.100.7, 203.0.113.0/24İlkini kapatmadan önce hâlâ çalıştığını doğrulamak için ikinci bir Uzak Masaüstü oturumu açın. Adresiniz sık değişiyorsa bunun yerine Uzak Masaüstü için bir VPN kullanın.
4. adım: Herhangi bir servisi belirli adreslerle sınırlayın
Örneğin SQL Server'a yalnızca uygulama sunucunuzdan izin verin:
New-NetFirewallRule -DisplayName "SQL from app server" -Direction Inbound -Protocol TCP -LocalPort 1433 -RemoteAddress 198.51.100.20 -Action Allow5. adım: Bir adresi engelleyin
New-NetFirewallRule -DisplayName "Block 203.0.113.50" -Direction Inbound -RemoteAddress 203.0.113.50 -Action BlockEngelleme kuralları izin kurallarından önceliklidir.
Kuralları gözden geçirin ve kaldırın
Kendi etkin gelen kurallarınızı portlarıyla listeleyin:
Get-NetFirewallRule -Direction Inbound -Enabled True | Where-Object DisplayName -like "Allow*" | Get-NetFirewallPortFilterBir kuralı ve adres filtresini gösterin, devre dışı bırakın veya kaldırın:
Get-NetFirewallRule -DisplayName "Allow HTTPS" | Get-NetFirewallAddressFilter
Disable-NetFirewallRule -DisplayName "Allow HTTPS"
Remove-NetFirewallRule -DisplayName "Allow HTTPS"Düşürülen paketleri kaydedin
Set-NetFirewallProfile -Profile Domain,Private,Public -LogBlocked True -LogFileName "%SystemRoot%\System32\LogFiles\Firewall\pfirewall.log"Neyin nereden engellendiğini görmek için C:\Windows\System32\LogFiles\Firewall\pfirewall.log kaydını okuyun.
Sorun giderme
Uzak Masaüstü çalışmayı durdurdu. Adresiniz kuralda yok. Web konsolundan Set-NetFirewallRule -DisplayGroup "Remote Desktop" -RemoteAddress Any çalıştırın, ardından doğru adresi ekleyin. Bkz. güvenlik duvarı değişikliğinden sonra erişimi kaybetmek.
Bir porta izin verildi ama hâlâ erişilemiyor. Servis dinlemiyor ya da yalnızca 127.0.0.1 üzerinde dinliyor. Get-NetTCPConnection -State Listen -LocalPort 443 ile kontrol edin.
Güvenlik duvarı izin verdiği halde 25 numaralı porttan posta gönderilemiyor. HyperDC VPS'lerde giden 25 numaralı port varsayılan olarak kapalıdır. 3 ay veya daha uzun süreyle satın alınan hizmetlerde bir destek bildirimi açtığınızda talep üzerine açılır. O zamana kadar postayı 587 portu üzerinden bir aktarıcıyla (relay) gönderin.
Görünen grup bulunamıyor. Başka bir dilde kurulmuş sunucularda grup adları çevrilmiştir. Get-NetFirewallRule | Select-Object -ExpandProperty DisplayGroup -Unique ile listeleyin.
Sonraki adımlar
- Tam temel kurulum: Windows sunucuyu güvenli hale getirin.
- Uzak Masaüstü hataları: Uzak Masaüstü bağlantı sorunları.
Sık sorulan sorular
Güvenlik duvarı varsayılan olarak açık mı?
Evet. Windows Defender Güvenlik Duvarı tüm profillerde etkindir ve bir kural izin vermedikçe istenmeyen gelen trafiği engeller. IIS gibi bir rolü kurmak genellikle ihtiyaç duyduğu kuralları ekler.
Sunucuma hangi profil uygulanıyor?
Genellikle Public; çünkü sunucunun ağı bir etki alanı veya güvenilir bir özel ağ değildir. Tüm profiller için yazılan kurallar her zaman uygulanır.
Kurallar IPv6'ya da uygulanır mı?
Evet. Adres sınırı olmayan bir kural IPv4 ve IPv6'ya uygulanır. RemoteAddress ile kısıtlıyorsanız kullanıyorsanız IPv6 adreslerini de listeleyin.
Bunun yerine grafik konsolu kullanabilir miyim?
Evet. Gelişmiş Güvenlik Özellikli Windows Defender Güvenlik Duvarı'nı açmak için wf.msc çalıştırın. Buradaki PowerShell komutları aynı işi yapar ve tekrarlaması ve belgelemesi daha kolaydır.
Her şeyi nasıl geri alırım?
netsh advfirewall reset varsayılan politikayı geri yükler ve kendi kurallarınızı kaldırır. Değişiklikleriniz bağlantınızı kestiyse bunu web konsolundan çalıştırın.