Windows'ta Açık Portları Kontrol Etme Rehberi 2026

netstat komutu ve PowerShell kullanarak Windows'ta açık portları kontrol etme rehberi

Windows'ta açık portları kontrol etmek, ağ konusunda bilinçli her kullanıcının bilmesi gereken bir şeydir. Açık bir port, bilgisayarının o port numarasında aktif olarak bağlantılar için dinlediği anlamına gelir ve hangi portların açık olduğunu bilmek, güvenlik açıklarını yakalamanıza, bağlantı sorunlarını gidermenize ve uygulamalarınızın düzgün çalıştığını doğrulamanıza yardımcı olur. Windows size bunu yapmanın birkaç yerleşik yolunu sunar ve ayrıca portlarınızın dışarıdan nasıl göründüğünü test edebilecek harici araçlar vardır.

Açık Portlar Nedir ve Neden Önemlidir

Bilgisayarındaki her ağ hizmeti 1 ile 65535 arasında bir port numarasına bağlanır. Bir hizmet çalışırken ve gelen bağlantıları beklerken, o port "açık"tır. Hiçbir şey orada dinlemiyorsa, port "kapalı"dır ve gelen bağlantı denemeleri reddedilir veya yoksayılır.

İşte bunun pratikte neden önemli olduğu:

  • Güvenlik denetimi: Beklenmeyen bir açık port, kötü amaçlı bir işlem, kötü amaçlı yazılım veya yanlış yapılandırılmış bir hizmetin makineni açığa çıkardığı anlamına gelebilir.
  • Sorun giderme: Web sunucunuz, oyun sunucunuz veya uzak masaüstü erişilemiyorsa, ilk soru portun gerçekten açık olup olmadığıdır.
  • Güvenlik duvarı doğrulaması: Windows Güvenlik Duvarınız, hizmet çalışırken bir portu engelliyor olabilir veya kapalı olduğunu düşündüğünüz bir portun geçişine izin veriyor olabilir.
İpucu: "Açık" ve "güvenlik duvarı tarafından engellenmemiş" iki farklı şeydir. Bir port yerel olarak açık olabilir (bir hizmet dinliyor) ancak yine de güvenlik duvarınız veya yönlendiriciniz tarafından harici olarak engellenebilir. Aşağıdaki yöntemler her iki açıyı da kapsar.

Açık Portları Görmek İçin Netstat Komutunu Kullanma

netstat komutu, Windows makinenizin şu anda dinlediği her portu listelemek için en hızlı yerleşik yoldur. Komut İstemi'ni açın (Başlat menüsünde "cmd" araması yapın, sağ tıklayın ve "Yönetici olarak çalıştır" seçeneğini seçin) ve şu komutu çalıştırın:

netstat -ano

Bayraklar şu şekilde ayrılır:

  • -a tüm etkin bağlantıları ve dinleme portlarını gösterir.
  • -n adresleri ve port numaralarını sayısal olarak görüntüler (ana bilgisayar adlarını çözmek yerine, çok daha hızlıdır).
  • -o İşlem Kimliğini (PID) ekler, böylece her portun sahibi olan programı tanımlayabilirsiniz.

Çıkış sütunları: Proto , Yerel Adres , Uzak Adres , Durum ve PID . Durum sütununda DİNLEME yazısı olan satırları arayın. Bunlar açık portlarınızdır.

Bunu sadece dinleme portlarına daraltmak için:

netstat -ano | findstr LISTENING

Araştırmak istediğiniz bir PID'ye sahip olduktan sonra, işlem adını şu şekilde bulun:

tasklist /fi "PID eq 1234"

Değiştir 1234 netstat çıktısından gerçek PID ile. Bu, tam olarak hangi yürütülebilir dosyanın o port üzerinde dinlediğini gösterir.

Belirli bir portun kullanımda olup olmadığını kontrol etmek için netstat'ı findstr ile birleştirin:

netstat -ano | findstr :443
Not: Netstat yalnızca yerel makinede etkin bir bağlamaya sahip TCP ve UDP portlarını gösterir. Bu portlara internet üzerinden erişilip erişilemeyeceğini söylemez. Bunun için harici bir port denetleyicisine ihtiyacınız vardır (aşağıda ele alınmıştır).

PowerShell ile Portları Kontrol Etme

PowerShell, netstat'a daha temiz ve daha komut dosyası yazılabilir bir alternatif sunar. PowerShell'i yönetici olarak açın ve şu komutu çalıştırın:

Get-NetTCPConnection -State Listen | Select-Object LocalAddress, LocalPort, OwningProcess | Sort-Object LocalPort

Bu, DİNLEME durumundaki her TCP portunun sıralanmış bir listesini döndürür, yerel adres ve PID dahil. PID'yi aynı komutta bir işlem adına çözmek için:

Get-NetTCPConnection -State Listen |
  Select-Object LocalPort,
    @{Name="Process";Expression={(Get-Process -Id $_.OwningProcess -ErrorAction SilentlyContinue).Name}} |
  Sort-Object LocalPort

Ayrıca PowerShell'den doğrudan uzak bir konağın belirli bir portun açık olup olmadığını test edebilirsiniz: Test-NetConnection :

Test-NetConnection -ComputerName example.com -Port 443

Eğer TcpTestSucceeded : True çıktıda görünürse, port açıktır ve makinenizden bağlantıları kabul etmektedir. Bu, Windows PC'nizden bir sunucuya giden bağlantıyı doğrulamak için kullanışlıdır, sadece yerel olarak açık olanları kontrol etmek değil.

Port Kuralları İçin Windows Güvenlik Duvarı Ayarlarını Kontrol Etme

Windows Güvenlik Duvarı, hangi portlara gelen ve giden trafiğe izin verileceğini kontrol eder. Bir hizmet yerel olarak bir port üzerinde dinliyor olabilir, ancak güvenlik duvarı o port üzerindeki gelen trafiği engellerse, harici istemciler buna ulaşamaz. İşte güvenlik duvarı kurallarınızı nasıl gözden geçirebileceğiniz.

Gelişmiş Güvenlik Özelliğine Sahip Windows Defender Güvenlik Duvarını Kullanma

  1. Tuşlayın Win + R , yazın wf.msc ve Enter tuşuna basın.
  2. Sol panelde Gelen Kuralları seçeneğine tıklayarak makinenize gelen trafiği kontrol eden kuralları görebilirsiniz.
  3. Makinenizden çıkan trafiği görmek için Giden Kuralları seçeneğine tıklayın.
  4. Hangi kuralların etkin olduğunu hızlı bir şekilde görmek için Etkin seçeneğine göre sıralayın.
  5. Her kural protokolü (TCP/UDP), yerel portu, uzak portu ve eylemi (İzin Ver/Engelle) gösterir.

Komut Satırını Kullanma

Komut satırından tüm etkin güvenlik duvarı kurallarını listelemek için:

netsh advfirewall firewall show rule name=all

Belirli bir portun güvenlik duvarı üzerinden geçişine izin verilip verilmediğini kontrol etmek için:

netsh advfirewall firewall show rule name=all | findstr "LocalPort"

Microsoft'un resmi belgesi Windows Güvenlik Duvarını yapılandırma hakkında kural oluşturma ve yönetimi hakkında ayrıntılı bilgi içerir, eğer kurallar eklemeniz veya değiştirmeniz gerekiyorsa.

Windows'ta Port Tarayıcısı Kullanma

Yerleşik araçlar kendi makinenizi kontrol etmek için harikadır, ancak bazen ağınızdaki başka bir konağı taramanız gerekir veya ham komut satırı çıktısı yerine görsel bir genel bakış isteyebilirsiniz. Özel bir port tarayıcısı bu boşluğu doldurur.

Nmap port taraması için endüstri standardıdır. Ücretsiz, açık kaynaktır ve Windows'ta resmi Nmap indirme sayfasından mevcuttur. Windows yükleyicisi, grafik arayüzü olan Zenmap'i içerir. Bir konağın temel taraması şöyle görünür:

nmap -sV 192.168.1.1

-sV bayrağı her açık port üzerinde çalışan hizmet sürümünü algılamaya çalışır. Bu, Windows üzerinde ağ güvenliği denetimleri için kullanışlıdır çünkü yalnızca hangi portların açık olduğunu değil, bunların arkasında hangi yazılımın olduğunu da görebilirsiniz.

Önemli: Yalnızca sahibi olduğunuz veya tarama izni verilen konakları tarayın. Kontrolünüzde olmayan bir ağı taramak Bilgisayar Dolandırıcılığı ve Suistimal Yasasını (CFAA) veya ülkenizdeki eşdeğer yasaları ihlal edebilir.

Açık Portlarınızı Dışarıdan Test Etme

İşte çoğu rehberin atladığı kritik fark: bir port, Windows makinenizde yerel olarak açık olabilir ancak yine de dış dünyaya kapalı görünebilir. Bu, yönlendiricininiz o portu yönlendirmediğinde veya ISP'niz bunu engellediğinde olur. İnterneti gerçekte ne gördüğünü bilmek için harici bir bakış açısından test etmeniz gerekir.

Çevrimiçi bir port denetleyicisinin yaptığı tam olarak budur. Uzak bir sunucudan IP adresinize bir TCP bağlantısı başlatır ve bağlantının kabul edilip edilmediğini (Açık), reddedilip reddedilmediğini (Kapalı) veya zaman aşımına uğrayıp uğramadığını (Zaman Aşımı) raportar. Yazılım yüklemeye gerek yoktur ve yerel güvenlik duvarınızı tamamen atlar ve gerçek harici görünümü gösterir.

Windows'ta açık portları test eden çevrimiçi port denetleyici aracı

Windows Makinenizde Tam Olarak Hangi Portların Açık Olduğunu Göreceğiniz

Ücretsiz çevrimiçi port denetleyicimiz, harici bir sunucudan herhangi bir IP veya alan adına TCP bağlantılarını test eder, böylece Windows'ta açık portları kontrol ederken gerçek dış görünümü elde edersiniz. Tek bir portu kontrol edin veya aynı anda 10'a kadarını toplu olarak kontrol edin, milisaniye içinde sonuçlar alın.

Açık Portlarını Kontrol Et →

Yaygın Portlar Hızlı Referansı

Hangi hizmetlerin hangi portları kullandığını bilmek sorun giderme yaparken zaman kazandırır. Windows sisteminde en sık karşılaşacağınız portlar:

Port Protokol Hizmet Windows'ta Yaygın Kullanım
80 TCP HTTP Web sunucuları (IIS, Apache), yerel geliştirme sunucuları
443 TCP HTTPS Güvenli web sunucuları, Windows Güncellemeleri
3389 TCP RDP Uzak Masaüstü Protokolü, uzak yönetim
445 TCP SMB Dosya paylaşımı, Windows ağ paylaşımları
22 TCP SSH OpenSSH (Windows 10/11'de yerleşik)
21 TCP FTP Dosya aktarımı, IIS FTP hizmeti
25 TCP SMTP E-posta gönderimi, posta sunucusu geçişi
3306 TCP MySQL MySQL/MariaDB veritabanı bağlantıları
5432 TCP PostgreSQL PostgreSQL veritabanı bağlantıları
135 TCP RPC Windows Uzak Yordam Çağrısı, DCOM
Port 3389 (RDP) internette en agresif şekilde kaba kuvvet saldırısına uğrayan portlardan biridir. RDP'yi genel internete açıksa, bunu standart olmayan bir porta taşımayı veya güvenlik duvarı kurallarında IP adresine göre erişimi kısıtlamayı düşünün.

İhtiyaç Duymadığınız Portları Kapatma

İyi Windows port izlemesi, yalnızca açık olanları bulmak değildir. Hangilerinin açık olması gerektiğine karar vermek ve diğer her şeyi kapatmaktır. İşte pratik bir yaklaşım:

  1. netstat -ano çalıştırın ve tüm DİNLEME portlarını listeleyin. Daha önce gösterilen tasklist komutunu kullanarak her PID'yi bir işlem adıyla eşleyin.
  2. İhtiyaç duymadığınız hizmetleri tanımlayın. Örneğin, IIS kullanmıyorsanız, port 80 veya 443'ün yerel olarak açık olmasının bir nedeni yoktur. Hizmeti services.msc aracılığıyla durdurun.
  3. Windows Güvenlik Duvarı gelen kurallarını gözden geçirin. Açın wf.msc ve gereksiz olarak tanımladığınız portlara trafiğe izin veren kuralları devre dışı bırakın.
  4. Yönlendiricini kontrol edin. Yönlendiricinizdeki port yönlendirme kuralları, Windows Güvenlik Duvarı onları işletim sistemi düzeyinde engelse bile portları açığa çıkarabilir. Yönlendirici yönetici paneline giriş yapın ve yönlendirilen portları denetleyin.
  5. Dışarıdan yeniden test edin. Değişiklikler yaptıktan sonra, portların artık erişilemez olduğunu doğrulamak için harici bir port kontrolü yapın.

CISA siber güvenlik danışmanları düzenli olarak internette istismar edilen belirli portlar hakkında uyarılar yayınlar. Bu listeyi periyodik olarak kontrol etmek, Windows sunucularını yönetiyorsanız iyi bir alışkanlıktır.

Yerel olarak açık bir port, Windows makineniz üzerindeki bir hizmetin o port numarasında etkin olarak bağlantıları dinlediği anlamına gelir. Harici olarak açık bir port, internetteki dış bilgisayarların gerçekten buna ulaşabileceği anlamına gelir. Yönlendiricin, ISP'nin veya Windows Güvenlik Duvarının port yerel olarak dinlerken harici erişimi engellemesi mümkündür. Gerçek dünya durumunu doğrulamak için her zaman harici bir araçtan test edin.

Bu neredeyse her zaman şu üç şeyden birinden kaynaklanır: Windows Güvenlik Duvarında portu engelleyen bir gelen kuralı vardır, yönlendiricinin bu port için bir port yönlendirme kuralı yoktur veya ISP'niz portu ağ düzeyinde engelliyor. Her katmanı sırasıyla kontrol edin. ISP tarafından engellenen yaygın portlar arasında konut bağlantılarında 25 (SMTP), 80 ve 443 bulunur.

RDP'yi doğrudan internete açığa çıkarmak önemli bir güvenlik riski oluşturur. Otomatikleştirilmiş botlar sürekli olarak açık port 3389 taraması yapıyor ve kaba kuvvet giriş denemelerine başvuruyor. Uzak erişime ihtiyacınız varsa, ağınıza ulaşmak için önce bir VPN kullanın, Windows Güvenlik Duvarında RDP erişimini belirli IP adreslerine kısıtlayın veya güçlü parolalar ve Ağ Düzeyi Kimlik Doğrulaması (NLA) ile birleştirilmiş standart olmayan bir port kullanın.

Netstat -a bayrağını kullandığınızda UDP portlarını gösterir. Proto sütununda UDP olarak etiketlenmiş satırları arayın. Ancak UDP, TCP gibi bir bağlantı el sıkışmasına sahip olmadığından, uzaktan test etmek çok daha zordur. Çoğu çevrimiçi port denetleyicisi, TCP tabanlı araçlar da dahil olmak üzere, yalnızca TCP bağlantılarını test eder. UDP taraması için -sU bayrağı ile Nmap pratik seçenektir, ancak yönetici ayrıcalıkları gerekir.

Açın wf.msc , "Gelen Kuralları" seçeneğine tıklayın, ardından sağda "Yeni Kural" seçeneğine tıklayın. "Port" seçeneğini seçin, TCP veya UDP'yi seçin, port numarasını girin, "Bağlantıya izin ver" seçeneğini seçin, uygun profillere (Domain, Özel, Genel) uygulayın ve kurala bir ad verin. Komut satırı meraklıları için şu komutu kullanın: netsh advfirewall firewall add rule name="MyPort" dir=in action=allow protocol=TCP localport=8080 .

Zaman aşımı, port denetleyicisinin bir TCP bağlantı isteği gönderdiği ancak bekleme süresi içinde yanıt almadığı anlamına gelir (genellikle birkaç saniye). Bu genellikle bir güvenlik duvarının paketleri sessizce bıraktığı anlamına gelir, bunları aktif olarak reddettikleri yerine. "Kapalı" sonucu, konağın bağlantıyı aktif olarak reddeden bir TCP sıfırlaması gönderdiği anlamına gelir. Zaman aşımı, trafiği reddeden yerine bırakan katı güvenlik duvarı yapılandırmalarında daha yaygındır.