Linux sunucumuza gelen dos saldırıları için temel ip filtreleme

Merhaba

DDOS saldırıları sunucumuz üzerine bir ip yada birden fazla ip den gelen eşzamanlı bağlantılardır . Bu bağlanrılar aynı anda birden fazla olduğunda sunucumuz bu isteklere normal bir istek olarak göreceği için cevap vermeye çalışacaktır . Bu cevap verme işlemi biz zaman sonra kısır bir döngüye girecek ve sunucumuz yada network hattımız bu istekleri kaldıramayacak ve down durumuna güşecektir .

Sunucunuz güçlü bir donamıma sahip ise sunucu bir süre dayanır . Gelen istekleri sıraya sokarak yanıt verir . Ama dikkat edilmesi gereken nokta ise Sunucu donanımınız her ne kadar güçlü olursa olsun gelen DDOS saldırısının band genişliği sizin Band genişliğinizle paraleldir . Yani sizin 100 Mbit network hattına sahip olduğunuzu düşünürsek gelen DDOS saldırısı 1 GBit lik bir hattan geliyorsa yapacağınız hiçbirşey yoktur .

Gelen DDOS saldırısı sizin Band Genişliğinden büyükse Donanımsal Firewall dışında yapılabilecek birşey yoktur . Alınacak firewall ‘da gelen Band genişliğinden büyük saldırıla karşı dayanıklı olması gerekmektedir . :)

Şimdi biz konumuza gelelim . Bir Linux sunucumuz var ama sürekli DDOS saldırısı yiyiyoruz ve sunucumuz down durumuna düşüyor .

İlk yapacağımız iş takip etmek . SSH ile sunucumuza bağlanıyoruz ve :80 nolu porta gelen istekleri dinlemeye başlayalım .

[root@server ~]# netstat -an | grep :80
tcp 0 0 :::80 :::* LISTEN
tcp 0 0 ::ffff:37.247.104.101:80 ::ffff:37.247.104.99:53715 TIME_WAIT
tcp 0 0 ::ffff:37.247.104.101:80 ::ffff:85.103.245.255:52545 TIME_WAIT

 

netstat -an | grep :80

kodu bize 80 nolu porta istek yapan ip adreslerini listeledi . Dos saldırısı olsaydı eğer bir ip adresi yada birden fazla ip adresi sunucumuza çok sayıda bağlı olacaktı . Ben 1 ip adresinin DDOS saldırısı yaptığını varsayıyorum .

DROP = Bağlı olan ip adresinin sunucumuz ile bağlantısını kesmek için kullanacağız

REJECT = Belirlediğimiz ip adresinin sunucumuza hiçbir zaman bağlantı sağlamamasını gerçekleştireceğiz .

iptables -A INPUT -s 192.168.1.100 -j DROP

iptables -A INPUT -s 192.168.1.100 -j REJECT

evet işlem basit düzeyde bu kadar .  Ne yaptım anlatayım .

192.168.1.100 numaralı ip adresinden hoşuma gitmeyen birçok bağlantının açık  olduğunu gördüm . 1000 lerde bağlantı açıktı sunucumda ve bu bağlantılar 192.168.1.100 ip adresinden geliyordu .

İlk olarak DROP ile 192.168.1.100 ip adresinin tüm oturumlarını düşürdüm .

Daha sonra ise REJECT ile 192.168.1.100 ip adresine gelebilecek tüm istekleri reddettim .

İyi güzelde biz sadece 1 ip adresi ile yapılan DDOS saldırısını engelledik . Ya birden fazla ip adresinden gelecek istekleri nasıl önleyeceğiz diyeceksiniz :) ki normaldir bu işlemden yazılımsal olarak nasıl az hasar ile kaçabileceğinizi göstereceğim .

 

İyi Çalışmalar Dilerim .

Rahim CAN