Linux Sunucularda Aşırı Bağlantı Yapan IP Adreslerini SSH Üzerinden Banlama

Sunucu güvenliğini sağlamak, kesintisiz bir hosting deneyiminin en önemli parçalarından biridir. DoğruHost olarak sunduğumuz güvenlik duvarı (WAF) ve altyapı kurallarına ek olarak, bazen sunucunuza yönelik anormal trafik oluşturan ve gereğinden fazla bağlantı (connection) açan IP adreslerine manuel müdahale etmek isteyebilirsiniz.

Özellikle CentOS ve benzeri Linux dağıtımlarında, iptables kullanarak sunucunuzu yoran şüpheli IP adreslerini toplu halde engellemek oldukça pratik bir işlemdir. Bu rehberde yer alan adımları, tüm  VDS paketlerinizde güvenle uygulayabilirsiniz.

Tek Satır Kod ile Toplu IP Engelleme

Sunucunuza 100'den fazla eşzamanlı bağlantı gerçekleştiren IP adreslerini tespit edip otomatik olarak iptables üzerinden engellemek (DROP) için SSH terminalinizde aşağıdaki komutu çalıştırmanız yeterlidir:


for i in $(netstat -ntu |awk '{print $5}' | awk '{sub("::ffff:","");print}' | cut -f1 -d ':' | sort | uniq -c | sort -n | grep -v -e server -e Address -e 127.0.0.1 -e 0.0.0.0 | awk '$1 > 100 {print $1,$2}'); do iptables -A INPUT -s $i -j DROP;done

Bu komut özetle şu işlemi yapar: Sunucudaki aktif ağ bağlantılarını tarar, yerel (localhost) bağlantıları filtreler, her bir IP adresinin kaç bağlantı yaptığını sayar ve belirlediğiniz limiti (bu örnekte 100) aşan tüm IP'leri güvenlik duvarında kara listeye alır.

Limitleri Kendi İhtiyacınıza Göre Özelleştirme

Komutun içerisindeki > 100 ibaresi, bağlantı limiti eşiğini belirler. Eğer saldırı veya yoğunluk daha düşük bağlantı sayılarıyla gerçekleşiyorsa, bu rakamı kolaylıkla değiştirebilirsiniz.

Örneğin, limit değerini biraz daha sıkılaştırıp 50 bağlantı sınırını aşan IP adreslerini banlamak isterseniz komutu şu şekilde düzenleyebilirsiniz:


for i in $(netstat -ntu |awk '{print $5}' | awk '{sub("::ffff:","");print}' | cut -f1 -d ':' | sort | uniq -c | sort -n | grep -v -e server -e Address -e 127.0.0.1 -e 0.0.0.0 | awk '$1 > 50 {print $1,$2}'); do iptables -A INPUT -s $i -j DROP;done

DoğruHost Önerisi: Bu işlemi uygulamadan önce kendi IP adresinizin (veya ofis ağınızın) sunucuda yoğun işlem yapmadığından emin olun. Yanlışlıkla kendi erişiminizi kısıtlamamak için komutu çalıştırmadan önce bağlantı limitlerini sunucunuzun normal trafik akışına göre belirlemeniz faydalı olacaktır.

Let’s get started

Choose the hosting provider who makes it easy and fast to create websites. Completely risk free with our 30-day money back guarantee.