Advanced Nginx Konfigürasyonu: Rate Limiting ve DDoS Koruması
Rate Limiting Nedir?
Rate Limiting Yapılandırması
1. Paylaşılan Bellek Bölgesi Tanımlama
2. Location Bloğunda Uygulama
DDoS Koruma Stratejileri
Connection Limiting Örneği
Performans ve Güvenlik İpuçları
Sonuç
Advanced Nginx Konfigürasyonu: Rate Limiting ve DDoS Koruması
Yüksek trafikli web sitelerinde performans ve güvenliği sağlamak için Nginx üzerinde gelişmiş yapılandırmalar yapmak kritik önem taşır. Özellikle Rate Limiting ve DDoS koruması, hem sunucularınızın çökmesini önler hem de saldırılara karşı koruma sağlar. Bu makalede Nginx üzerinde rate limiting ve temel DDoS koruma stratejilerini ayrıntılı olarak ele alacağız.
Rate Limiting Nedir?
Rate limiting, belirli bir IP adresinden gelen istek sayısını saniyede sınırlandırarak sunucunun aşırı yüklenmesini ve potansiyel saldırıları önlemeye yarar. Nginx limit_req_zone ve limit_req direktiflerini kullanarak kolayca yapılandırılabilir.
Rate Limiting Yapılandırması
1. Paylaşılan Bellek Bölgesi Tanımlama
Nginx konfigürasyon dosyasının http bloğuna ekleyin:
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
Burada 1r/s her IP için saniyede 1 isteğe izin verir. 10 MB bellek yaklaşık 16 bin IP adresini saklayabilir.
2. Location Bloğunda Uygulama
server {
location / {
limit_req zone=one burst=5 nodelay;
}
}
burst=5 parametresi, ani trafik dalgalanmalarına esnek yaklaşır ve art arda 5 isteğe izin verir. nodelay parametresi, burst sınırı aşılmadığında istekleri bekletmeden geçirir.
DDoS Koruma Stratejileri
- IP tabanlı engelleme: Şüpheli IP’leri tespit ederek
denykuralı ekleyebilirsiniz. - Connection limiting:
limit_conn_zonevelimit_conndirektifleriyle eşzamanlı bağlantıları sınırlandırın. - Timeout ayarları:
client_body_timeout,client_header_timeoutgibi parametreleri düşürerek saldırgan bağlantıları hızlıca sonlandırabilirsiniz.
Connection Limiting Örneği
limit_conn_zone $binary_remote_addr zone=addr:10m;
server {
location / {
limit_conn addr 2;
}
}
Performans ve Güvenlik İpuçları
- Rate limiting kurallarını önce düşük trafikli ortamda test edin.
- Log dosyalarınızı analiz ederek yanlış pozitif oranlarını kontrol edin.
- CDN ve WAF gibi ek çözümlerle Nginx yapılandırmasını destekleyin.
Sonuç
Nginx üzerinde rate limiting ve DDoS koruması yapılandırmak, web uygulamalarınızın performansını ve güvenliğini büyük ölçüde artırır. Kuralları düzenli olarak gözden geçirip güncel tutmak, saldırılara karşı proaktif savunma sağlar.
Daha fazla bilgi için Sunucu hizmetleri kategorimize göz atabilirsiniz.