IT
OmnvertGörsel • Belge • Ağ
07 Tem 2026beginner7 minports · tcp · firewall · networking · troubleshootingPort DenetleyiciBu araç için daha fazla rehber

Bir Portun Açık Olup Olmadığı Nasıl Kontrol Edilir ve Sonuç Ne Anlama Gelir

Açık, kapalı ve filtrelenmiş üç farklı yanıttır ve bunları ayırt etmek işin bütün becerisidir. İşte TCP el sıkışmasının açığa çıkardığı şey ve bir güvenlik duvarının bir portu neden kapalı yerine filtrelenmiş gösterdiği.

Adım adım

  1. Bir ana bilgisayar ve bir port girin

    Port Denetleyici aracını açın, ana bilgisayar adını veya IP'yi yazın ve bir port numarası verin. Yeni bir web sunucusu ayağa kaldırdıysanız 80 ve 443'ü test edin; bir veritabanı için MySQL'de 3306 ya da Postgres'te 5432 olur; SSH 22'dir. Denetim genel internetteki bir sunucudan çalışır, dolayısıyla size dış dünyanın ne gördüğünü söyler ki bu, uzak bir kullanıcı bağlanamadığını söylerken servis yerelde çalışıyorsa tam da önemli olan bakış açısıdır.

  2. Testin arkasındaki TCP el sıkışmasını anlayın

    Bir TCP port denetimi aslında kısmi bir el sıkışmadır. Sizin tarafınız bir SYN paketi gönderir. Bir şey dinliyorsa SYN-ACK ile yanıt verir ve port açıktır; denetleyici sonra yarı açık bağlantıyı temizce yıkmak için bir sıfırlama gönderir. O tek alışveriş, bir servisin bağlantıyı kabul ettiğini kanıtlamaya yeter. Uygulamayla ilgili hiçbir şey test edilmez, yalnızca taşıma katmanının bir konuşmanın başlamasına izin verip vermeyeceği. Bu ayrım, açık bir port hâlâ düzgün davranmadığında sonradan önem kazanır.

  3. Açık, kapalı ve filtrelenmiş sonuçlarını ayırt edin

    Açık, bir SYN-ACK aldığınız anlamına gelir: bir servis dinliyor ve erişilebilir. Kapalı, ana bilgisayarın yanıt verdiği ama bir TCP RST ile, yani makine ayakta ve erişilebilir ama o porta bağlı hiçbir şey yok demektir. Filtrelenmiş, hiçbir şey almadığınız anlamına gelir; ne SYN-ACK ne RST, zaman aşımına kadar yalnızca sessizlik. O sessizlik önemli durumdur çünkü servisi olmayan canlı bir ana bilgisayar bir sıfırlamayla etkin olarak reddeder, oysa paketlerinizi düşüren bir güvenlik duvarı hiçbir türden yanıt üretmez.

  4. Filtrelenmiş sonucunu ölü ana bilgisayar değil güvenlik duvarı olarak okuyun

    İnsanların yanlış sonuca atladığı yer burasıdır. Filtrelenmiş bir sonuç neredeyse her zaman bir güvenlik duvarının ya da güvenlik grubunun sondayı sessizce düşürdüğü anlamına gelir, sunucunun kapalı olduğu değil. Bulut sağlayıcıları varsayılan olarak böyledir: porta izin vermeyen bir AWS güvenlik grubu ya da bir UFW kuralı, paketleri yanıtsız yutar ki bu tam da filtrelenmiş imzasıyla eşleşir. Yani bütün makineyi yeniden başlatmadan önce o belirli porta ait güvenlik duvarı kuralını kontrol edin. On seferin dokuzunda servis gayet iyi çalışıyordur ve paket ona hiç ulaşmamıştır.

  5. Bir portu açtıktan sonra kendi sunucunuzu test edin

    Klasik döngü: bir güvenlik duvarı kuralını düzenlersiniz, yeniden yüklersiniz ve değişikliğin dışarıdan gerçekten geçtiğini doğrulamak istersiniz. Aynı makineden kontrol etmek işe yaramaz çünkü geri döngü güvenlik duvarını tamamen atlar; localhost her zaman açık görünür. Bunun yerine harici denetimi çalıştırın. Portu güvenlik grubunuzda açın, araçtan vurun ve içeri giden gerçek yolu yansıtan net bir açık ya da filtrelenmiş yanıt alın. Hâlâ filtrelenmiş okuyorsa kural uygulanmamıştır, yanlış port aralığı listelenmiştir ya da yukarı akışta ikinci bir güvenlik duvarı da yoldadır.

  6. Yalnızca soketi değil servisi doğrulayın

    Açık bir port, taşıma katmanının bağlantıları kabul ettiğini kanıtlar; uygulamanın doğru yanıt verdiğini kanıtlamaz. Bir web sunucusu süresi dolmuş bir sertifika sunarken 443'te kabul edebilir ya da bir veritabanı her girişi reddederken 5432'de kabul edebilir. Ağ sorusunu çözmek için port denetimini kullanın, sonra protokolün kendisini test etmek için bir katman yukarı çıkın. 443 portu açıksa ama site hata veriyorsa erişilebilirlik iyidir ve sorun TLS ya da uygulamadır ki bu aramanızı muazzam daraltır.

Üç yanıt yan yana

  • Açık: SYN-ACK alındı. Bir servis dinliyor ve yol açık.
  • Kapalı: RST alındı. Ana bilgisayar ayakta ve erişilebilir ama porta bağlı bir şey yok.
  • Filtrelenmiş: zaman aşımına kadar yanıt yok. Bir güvenlik duvarı sondayı düşürüyor; arkasındaki servis hakkında hiçbir şey öğrenemezsiniz.

Bilinmeye değer portlar

Tam IANA listesini ezberlemenize gerek yok ama birkaçı her gün karşınıza çıkar: SSH için 22, HTTP için 80, HTTPS için 443, posta gönderimi için 25 ve 587, MySQL için 3306, PostgreSQL için 5432, Redis için 6379 ve MongoDB için 27017. Veritabanı portları, genel internetten filtrelenmiş görmek isteyeceğiniz portlardır çünkü kimlik doğrulaması olmadan dünyaya açık bir Redis ya da Mongo örneği, ihlal edilmenin çok bilinen bir yoludur.

Yalnızca size ait olan veya test yetkiniz bulunan ana bilgisayarları tarayın

Kendi sunucunuzda tek bir portu kontrol etmek rutin bir teşhistir. Denetlemediğiniz makinelerde portları taramak ise tamamen başka bir şeydir ve hiçbir şeye bağlanmasanız bile kabul edilebilir kullanım politikalarını ya da yerel yasaları ihlal edebilir. Bunu kendi altyapınızla ya da değerlendirmek için yazılı izniniz olan sistemlerle sınırlı tutun.

İlgili