Giriş ve Temel Kavramlar
Bash, Linux ve Unix tabanlı sistemlerde en çok kullanılan komut satırı dilidir. Sistem performansı ve ağ trafiği gibi konularda hızlı ve etkili analizler yapmak için sıkça tercih edilir. Connection count analizi, özellikle sunucu güvenliği ve performans izleme açısından kritik bir konudur. Bu analiz sayesinde, aktif bağlantıların sayısı, hangi IP’lerin yoğunlukta olduğu ve potansiyel saldırıların tespiti gibi önemli bilgiler elde edilir.
Mevcut Bağlantıların Listelenmesi ve Sayımı
Linux sistemlerde açık bağlantıları görmek için en yaygın kullanılan araçlar
netstat,
ss ve
lsof’dur. Günümüzde
netstat yerine
ss komutu tercih edilir çünkü daha hızlı ve detaylı bilgi sağlar. Örneğin, aktif TCP bağlantılarını listelemek ve saymak için şu komut kullanılabilir:
Burada
ss -tn, yalnızca TCP bağlantılarını listeler ve
wc -l ile satır sayısı alınır. Bu, toplam bağlantı sayısını gösterir.
Bağlantıların Detaylı Analizi
Daha detaylı analiz için, bağlantıların kaynak ve hedef IP adreslerini ayıklayabiliriz. Örneğin, tüm bağlantıların kaynak IP’lerini ve toplamlarını görmek için:
1ss -tna | awk '{print $5}' | cut -d':' -f1 | sort | uniq -c | sort -nr
Bu komut, bağlantıların hedef IP’lerini çıkarır, sıralar, tekrar edenleri sayar ve en çok bağlantıya sahip IP’leri listeler. Aynı mantık, farklı portlar veya kaynak IP’leri için de uygulanabilir.
Gerçek Zamanlı ve Otomatik Raporlama
Otomasyon ve sürekli izleme için Bash scriptleri yazmak mümkündür. Örneğin, belirli aralıklarla bağlantı sayısını ve en aktif IP’leri raporlayan bir script şöyle olabilir:
1234567#!/bin/bash
while true; do
echo "Aktif bağlantı sayısı: $(ss -tn | wc -l)"
echo "En aktif IP'ler:"
ss -tna | awk '{print $5}' | cut -d':' -f1 | sort | uniq -c | sort -nr | head -10
sleep 60
done
Bu script, her 60 saniyede bir toplam bağlantı sayısı ve en aktif 10 IP’yi gösterir.
Bu analizler, sistem güvenliği ve performans yönetimi açısından kritik bilgiler sunar. Sistem yöneticileri, bu verileri kullanarak saldırı tespiti, bağlantı kısıtlaması veya kapasite planlaması yapabilir.
Sizce, bu tarz Bash tabanlı analizlerin en büyük avantajı ve sınırlaması nedir?