DDoS Saldırı Koruması: Web Sitenizi Nasıl Korursunuz?

z

zafer ak

Yazar

26 November 2023 14 dakika okuma 1286 görüntülenme
DDoS Saldırı Koruması: Web Sitenizi Nasıl Korursunuz?
DDoS saldırı türleri, tespit yöntemleri ve korunma stratejileri. Cloudflare, rate limiting ve WAF yapılandırması.

DDoS Saldırısı Nedir?

DDoS (Distributed Denial of Service), bir web sitesini veya sunucuyu aşırı trafikle bunaltarak hizmet dışı bırakmayı amaçlayan siber saldırı türüdür. Saldırganlar binlerce zombi bilgisayardan (botnet) eş zamanlı istek göndererek hedefi çökertir.

DDoS Saldırı Türleri

1. Volumetrik Saldırılar

Bant genişliğini tüketmeyi hedefler:

  • UDP Flood: Rastgele portlara UDP paketleri gönderir
  • ICMP Flood: Ping istekleriyle sunucuyu boğar
  • DNS Amplification: DNS sunucularını kullanarak trafiği büyütür

2. Protokol Saldırıları

Sunucu kaynaklarını tüketir:

  • SYN Flood: TCP handshake'i tamamlamayan bağlantılar
  • Ping of Death: Büyük boyutlu ICMP paketleri
  • Smurf Attack: Broadcast adreslerine ICMP

3. Uygulama Katmanı Saldırıları (Layer 7)

En tehlikeli ve tespit edilmesi zor olanlar:

  • HTTP Flood: Sahte HTTP istekleri
  • Slowloris: Bağlantıları yavaşça açık tutar
  • POST Flood: Büyük form verileri gönderir

DDoS Korunma Yöntemleri

1. Cloudflare Entegrasyonu

Cloudflare, en popüler DDoS koruma çözümüdür:

# DNS'i Cloudflare'e yönlendirin
# Cloudflare Dashboard > DNS > Add Record

A    @       YOUR_ORIGIN_IP    (Proxied - Orange Cloud)
A    www     YOUR_ORIGIN_IP    (Proxied - Orange Cloud)

# Security Level ayarlayın
# Security > Settings > Security Level: Medium veya High

2. Rate Limiting

İstek sayısını sınırlayın:

# NGINX rate limiting
http {
    # Zone tanımla
    limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;

    server {
        location / {
            # Rate limit uygula
            limit_req zone=one burst=20 nodelay;
            limit_req_status 429;
        }

        # API için ayrı limit
        location /api/ {
            limit_req zone=one burst=5 nodelay;
        }
    }
}

3. IP Blacklisting

# NGINX IP engelleme
http {
    # Kara liste dosyası
    geo $blocked_ip {
        default 0;
        include /etc/nginx/blocked_ips.conf;
    }

    server {
        if ($blocked_ip) {
            return 403;
        }
    }
}

# /etc/nginx/blocked_ips.conf
1.2.3.4 1;
5.6.7.0/24 1;

4. Fail2Ban Yapılandırması

# /etc/fail2ban/jail.local
[nginx-limit-req]
enabled = true
filter = nginx-limit-req
action = iptables-multiport[name=ReqLimit, port="http,https"]
logpath = /var/log/nginx/error.log
findtime = 600
maxretry = 10
bantime = 7200

[nginx-http-auth]
enabled = true
filter = nginx-http-auth
port = http,https
logpath = /var/log/nginx/error.log
maxretry = 5
bantime = 3600

5. Web Application Firewall (WAF)

# ModSecurity kurulumu
apt install libapache2-mod-security2

# OWASP kurallarını indirin
git clone https://github.com/coreruleset/coreruleset.git
cp coreruleset/crs-setup.conf.example /etc/modsecurity/crs-setup.conf

# Aktif edin
Include /etc/modsecurity/crs-setup.conf
Include /etc/modsecurity/rules/*.conf

Laravel ile DDoS Koruması

// app/Http/Middleware/RateLimitMiddleware.php
namespace App\Http\Middleware;

use Closure;
use Illuminate\Support\Facades\RateLimiter;

class DDoSProtection
{
    public function handle($request, Closure $next)
    {
        $key = $request->ip();

        if (RateLimiter::tooManyAttempts($key, 60)) {
            abort(429, 'Too Many Requests');
        }

        RateLimiter::hit($key, 60);

        return $next($request);
    }
}

// routes/api.php
Route::middleware(['throttle:60,1', 'ddos'])->group(function () {
    Route::get('/data', [DataController::class, 'index']);
});

Saldırı Tespiti

Şüpheli aktivite belirtileri:

  • Anormal trafik artışı
  • Belirli IP'lerden yoğun istek
  • Yüksek CPU/RAM kullanımı
  • Yavaş sayfa yükleme süreleri
  • Bağlantı zaman aşımları

Acil Durum Planı

  1. Saldırıyı tespit edin (monitoring araçları)
  2. Cloudflare "Under Attack" modunu aktifleyin
  3. Saldırgan IP'lerini engelleyin
  4. ISP veya hosting sağlayıcınızı bilgilendirin
  5. Logları analiz edin
  6. Güvenlik önlemlerini güncelleyin

Sonuç

DDoS saldırıları her geçen gün artıyor. Proaktif koruma önlemleri alarak web sitenizi ve işletmenizi koruyun. Cloudflare gibi CDN hizmetleri, rate limiting ve WAF kombinasyonu en etkili koruma stratejisidir.

İlgili Yazılar