Sunucu Güvenliğinde Port Taraması Nasıl Yakalanır?

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.10

Bu çı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 -tunap

IP bazında kaç bağlantı olduğunu görmek için:

ss -tunap | awk '{print $6}' | cut -d: -f1 | sort | uniq -c | sort -nr

Bir 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 BLOCK

iptables kullanıyorsak

grep "DROP" /var/log/syslog

Aynı 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 DROP

Zaman 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 DROP

Bu 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 fail2ban

Banlanan 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 sshd

Detaylı 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 eth0

SIEM Ü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

Yorum yapın