Netscaler Üzerinde Rate Limiting Yapımı (Layer 7 DDOS Koruması)
Bu makalede, Netscaler cihazında Layer 7 DDoS saldırılarına karşı Rate Limiting yapılandırması yapma süreci anlatılmaktadır. Buradaki amaç, belirli bir real IP üzerinden aşırı miktarda gelen istekleri sınırlamak ve gerektiğinde engellemektir.
1. Selectors Tanımlaması
Rate Limiting uygulaması yapabilmek için ilk adımda selectors tanımlamaları yapılmalıdır. Selector, gelen isteklerin hangi parametrelere göre değerlendirileceğini belirler. Bu işlem için aşağıdaki selector kodu kullanılır:
- CLIENT.IP.SRC: Bu selector, gelen isteklerin kaynak IP adresini belirler ve limit uygulamasını bu IP adresine göre gerçekleştirir.
2. Limit Identifiers Tanımlaması
Limit değerlerini belirlemek için Limit Identifiers tanımlanmalıdır. Bu işlemde aşağıdaki adımlar izlenir:
- Limit Identifier İsmi belirlenir. Bu, oluşturulacak kuralı tanımlamak için kullanılacak isimdir (örneğin, “Client_Source_Ip_limit”).
- Selector tanımlanır. Yukarıda bahsedilen CLIENT.IP.SRC selector’ı kullanılır.
- Mode olarak request_rate seçilir. Bu, belirli bir zaman diliminde gelen istek sayısının ölçülmesini sağlar.
- Limit Type olarak Bursty seçilir. Bu, kısa süreli ani artışlara karşı daha esnek bir sınırlama sağlar.
- Threshold değeri, istek sayısının limitini belirler. Bu örnekte, 100 istek olarak ayarlanmıştır.
- Time Slice (zaman dilimi) kısmı, limitin hangi süre zarfında geçerli olacağını belirler. Burada 5000 milisaniye, yani 5 dakika olarak belirlenmiştir.
Alternatif olarak, Maximum Bandwidth gibi başka limit parametreleri de kullanılabilir, ancak bu örnekte bu adım opsiyoneldir.
Yukarıdaki adımlar tamamlandığında, Create butonuna basarak limit identifier’ı oluşturabilirsiniz.
3. Responder Policy Yazımı
Limit kuralını uygulamak için bir Responder Policy oluşturulması gerekmektedir. Bu policy, belirlediğimiz limit değerlerini kontrol eder ve aşılma durumunda belirtilen aksiyonu gerçekleştirir.
Bu adımda, kuralın doğru bir şekilde işleyebilmesi için Drop aksiyonu seçilmelidir. Bu sayede, belirlenen limit aşılırsa gelen istekler otomatik olarak engellenir.
Expression kısmına aşağıdaki komut yazılır:
sys.CHECK_LIMIT("Client_Source_Ip_limit")
Bu komut, önceden tanımladığımız limit identifier’ı ile gelen isteklerin sayısını kontrol eder.
4. Virtual Server’a Bind Edilmesi
Rate limiting kuralı ve responder policy’si tamamlandıktan sonra, bu yapılandırmaların virtual server üzerinde etkin olması için bind edilmesi gerekmektedir. İlgili virtual server’a bu kurallar bağlandığında, sistemin çalıştığından emin olmak için test yapılabilir.
5. Test ve İzleme
Yapılandırma işlemi tamamlandıktan sonra, sistemin doğru çalışıp çalışmadığını kontrol etmek için testler yapılmalıdır. Ayrıca, uygulamanın etkinliğini izlemek için Netscaler üzerinde trafik analiz araçlarını kullanarak gelen isteklerin sayılarını gözlemlemek mümkündür.
Sonuç
Netscaler üzerinde Layer 7 DDoS koruması için uygulanan Rate Limiting işlemi, belirli bir IP adresinden gelen istekleri sınırlandırarak aşırı yüklenmeleri engeller. Bu sayede, saldırılara karşı daha dirençli bir ağ yapısı oluşturulabilir. Kurumsal düzeyde ağ güvenliği sağlamak için bu tür önlemler büyük önem taşımaktadır.