اليوم في ١٦:٣٠
صاحب الموضوع
Linux Sunucuda Connection Flood Önleme
Sunucular, özellikle internet ortamında sürekli saldırı ve aşırı trafik altında kalabiliyor. Bunlardan en yaygını ise "connection flood" saldırılarıdır. Bu saldırılar, özellikle TCP veya UDP bağlantılarını aşırı derecede açarak sunucunun normal trafiğe cevap verememesine neden olur. Bu durumda, sunucuya gelen yeni bağlantılar engellenir veya yavaşlatılır, böylece hizmet kesintisi yaşanır. Bu sorunu önlemek ve sunucunun stabilitesini korumak için birkaç temel ve etkili yöntem bulunmaktadır.
İlk olarak, Linux'ta
iptables veya
nftables kullanarak trafik sınırlandırma en sık başvurulan yöntemdir. Örneğin,
iptables ile belirli bir IP'den gelen bağlantı sayısını sınırlayabilir veya belirli bir süre içinde yeni bağlantıların sayısını kısıtlayabilirsiniz. Aşağıda,
iptables ile TCP bağlantılarını 10'dan fazla yapmaya çalışanları engelleyen örnek bir yapı yer alıyor:
123
iptables -A INPUT -p tcp --syn -m limit --limit 10/sec --limit-burst 20 -j ACCEPT
iptables -A INPUT -p tcp --syn -j DROP
İkinci olarak,
fail2ban gibi araçlar kullanarak belirli IP'lerin saldırı yapmasını tespit edip otomatik bloklama gerçekleştirebilirsiniz. Fail2ban, log dosyalarını analiz ederek belli sayıda başarısız bağlantı girişimi veya saldırı tespiti yapar ve bu IP'leri otomatik olarak engeller.
Üçüncü önemli nokta ise, sunucu yapılandırmasını optimize etmektir. Sunucu üzerindeki
sysctl ayarlarıyla TCP bağlantı zaman aşımı ve yeniden deneme limitlerini düzenleyerek, saldırganların bağlantılarını daha hızlı sonlandırabilirsiniz. Örneğin:
123
sysctl -w net.ipv4.tcp_syn_retries=2
sysctl -w net.ipv4.tcp_max_syn_backlog=1024
Son olarak, ağ altyapısında veya güvenlik duvarında (firewall) yük dengeleme ve trafik filtreleme çözümleri kullanmak, saldırıların etkisini azaltmada oldukça etkilidir. Ayrıca, DDoS koruma hizmetleri veya cloud tabanlı güvenlik çözümleri ile saldırı tespiti ve engelleme işlemleri güçlendirilir.
Sunucu güvenliğini sağlamak ve connection flood saldırılarını minimize etmek için bu yöntemlerin kombinasyonunu kullanmak en etkili sonuçları verir. Bu konuda sizin uyguladığınız veya önerdiğiniz başka yöntemler var mı?