Port scanning, bir sunucu üzerindeki açık servisleri ve erişilebilir portları tespit etmek amacıyla yapılan bir keşif faaliyetidir. Saldırganlar ilk aşamada hangi portların açık olduğunu belirler, ardından esas saldırı adımına geçer. Bu nedenle port taraması çoğu zaman erken uyarı niteliği taşır. Zamanında tespit edildiğinde ciddi güvenlik risklerinin önüne geçilebilir.
Bu içerikte port taramasının canlı ağ trafiği üzerinden, firewall kayıtları, Fail2Ban, IDS sistemleri ve web sunucu logları aracılığıyla nasıl tespit edilebileceğini ele alacağız.
Port Taraması Belirtileri
Sunucuda port taraması yapıldığına işaret eden en net belirtilerden biri, tek bir IP adresinden kısa süre içinde çok sayıda porta bağlantı isteği gelmesidir. Bu denemelerin büyük bölümü bağlantı kurulmadan SYN aşamasında sonlanır. Firewall loglarında farklı portlara yönelik ardışık engelleme kayıtları oluşurken, web erişim kayıtlarında da admin paneline yönelik isteklerin belirgin şekilde arttığı görülür.
Nmap ile Port Taraması Nasıl Tespit Edilir?
Port taramasını saldırgan tarafı genelde Nmap ile yapar.
nmap -sS -Pn 192.168.1.10Bu çıktıda open ifadesi açık porta, closed kapalı porta, filtered ise firewall tarafından süzülen porta karşılık gelir. Saldırgan, elde ettiği bu bilgilere göre hangi servisin hedef alınacağına karar verir.


Linux ve Windows sistemlerde Nmap kurulumuna ait tüm teknik detayları, ek olarak paylaşılan kılavuzda inceleyebilirsiniz.
tcpdump ile Anlık Port Taraması Tespiti
Sunucuya ulaşan ağ paketlerini gerçek zamanlı izlemek, port taramasını en erken aşamada fark etmeyi sağlar. Bu yöntemle tarama trafiği, daha firewall devreye girmeden önce bile tespit edilebilir ve hızlıca müdahale edilebilir.
tcpdump -nn -i eth0 'tcp[tcpflags] == tcp-syn'- Aynı IP
- Art arda
- Farklı portlara
SYN paketleri gönderiyorsa bu aktif port taramasıdır.

ss Üzerinden Anlık Ağ Bağlantı Analizi
Sunucu üzerinde aynı kaynaktan gelen yoğun bağlantı denemelerini tespit etmek için ss aracı kullanılır. Mevcut tüm bağlantılar şu komutla görülebilir:
ss -tunapIP bazında kaç bağlantı olduğunu görmek için:
ss -tunap | awk '{print $6}' | cut -d: -f1 | sort | uniq -c | sort -nrBir IP adresinin olağan dışı sayıda bağlantı üretmesi, genellikle otomatik tarama davranışına işaret eder.
Firewall Logları Üzerinden Port Taraması Tespiti
UFW kullanıyorsak
cat /var/log/ufw.log | grep BLOCKiptables kullanıyorsak
grep "DROP" /var/log/syslogAynı IP arka arkaya farklı portlara düşüyorsa bu klasik keşif taramasıdır.
iptables Kullanarak Port Scan Saldırılarını Bloklama
Sunucuya aynı IP üzerinden kısa sürede çok sayıda TCP bağlantısı geliyorsa bu durum otomatik olarak engellenebilir. connlimit modülü, belirli sayının üzerindeki eş zamanlı bağlantıları doğrudan düşürür:
iptables -A INPUT -p tcp --syn -m connlimit --connlimit-above 10 -j DROPZaman bazlı tekrar denemeleri engellemek için ise recent modülü devreye alınabilir:
iptables -A INPUT -p tcp --dport 1:65535 -m recent --name portscan --set<br>iptables -A INPUT -p tcp --dport 1:65535 -m recent --name portscan --update --seconds 60 --hitcount 20 -j DROPBu yapı sayesinde 60 saniye içinde 20 denemeyi geçen IP’ler otomatik olarak bloke edilir.


Bu yapı sayesinde tarama yapan IP otomatik olarak banlanır.
Fail2Ban ile Otomatik Banlama
Fail2Ban servis durumunu kontrol edelim.
systemctl status fail2banBanlanan IP’leri görmek için bu komutu yazalım. Fail2Ban özellikle SSH, panel ve mail servisleri için çok etkilidir.
fail2ban-client status
fail2ban-client status sshdDetaylı kural adımlarını öğrenmek için – Fail2ban Regex İle Apache Exim Ve Vsftpd Koruması
Snort ile IDS Üzerinden Port Scan Alarmı Üretme
Snort port taramalarını reconnaissance attack olarak algılar. Nmap çalıştırıldığında anlık alarm verir.
snort -A console -c /etc/snort/snort.conf -i eth0SIEM Üzerinden Port Taramasının Grafiksel Takibi
Wazuh, Elastic gibi sistemlerde taramalar ani spike şeklinde görünür. Bu grafikler güvenlik ekiplerinin saldırıyı saniyeler içinde fark etmesini sağlar.


Web Sunucu Loglarında Servis Taraması
Apache için
cat /var/log/apache2/access.log | grep -E "wp-admin|phpmyadmin|\.env"Nginx için
cat /var/log/nginx/access.log | grep -E "wp-admin|phpmyadmin|\.env"Sık Sorulan Sorular
Gelen port taraması TCP mi UDP mi nasıl çözülür?
TCP tarafında SYN paketleri yoğun görünürken, UDP tarafında ICMP hata dönüşleri ön plana çıkar. Bu fark tcpdump üzerinden analiz edilir.
Dağıtık tarama neden klasik saldırı gibi görünmez?
Çünkü saldırı tek noktadan değil, birçok farklı ağdan çok düşük hacimli olarak yapılır. SIEM tarafında hedef port çeşitliliği zaman bazlı incelenerek yakalanır.
nftables ile otomatik port taraması kontrolü mümkün mü?
Evet. meter ve limit yapıları birlikte kullanılarak her IP’nin davranışı ölçülür.
Kalıcı IP engelleme nasıl sağlanır?
ipset create blacklist hash:ip
ipset add blacklist 1.2.3.4
iptables -A INPUT -m set --match-set blacklist src -j DROP