Netscaler üzerinden Rate Limiting özelliğini kullanarak, herhangi bir ip’den ve herhangi bir url’e yapılan istek sayısı, kullanıcıların connection sayısı, bantwidth sınırlama gibi bir çok veriye göre limitleme yapılabilmektedir. Rate Limiting tanımları ile hatalı girişlerde kullanıcının karşısına bilgilendirme sayfası çıkarma ya da başka bir sayfaya yönlendirme işlemleri de yapılabilmektedir.
SELECTORS
Selectors kısmında hangi verilere göre limitleme yapacağımızı belirliyoruz( Source Ip, Url ).
- Herhangi bir IP’den herhangi bir URL’e yapılan istekler için yazılması gereken expression lar aşağıdaki gibidir.
CLIENT.IP.SRC , HTTP.REQ.URL
- Herhangi bir IP’den belirli bir URL’e yapılan istekler için yazılması gereken expression lar aşağıdaki gibidir.
CLIENT.IP.SRC , HTTP.REQ.URL.EQ(“/index.html”)
ÖRNEK
Bu makalede herhangi bir IP adresinden herhangi bir URL’e 100 saniye içinde yapılan 5 hatalı giriş isteği sonrasında kullanıcının ekranına hatalı giriş denemelerinden dolayı bilgilendirme notu çıkartacağız.
1.Bunun için önce Selectors tabını seçerek ADD ile yeni bir limit selector oluşturuyoruz.
2.Selector’e bir isim verip Insert seçeneği ile gerekli expression ları ekliyoruz.
Ekspressionları ekspression alanına kendimiz de yazabildiğimiz gibi sağ üst köşedeki Expression Editor
ile de yapabiliriz.
Bu adımda DONE seçeneğini seçtikten sonra karşımıza çıkan Insert seçeneğini de seçerek Client IP için oluşturduğumuz expression ı tamamlıyoruz.
Bu adımda Done seçeneğini seçtikten sonra karşımıza çıkan Insert seçeneğini de seçerek URL için oluşturduğumuz expression ı tamamlıyoruz.
Expression ını yazdıktan sonra insert ile expressionı tamamlıyoruz. Bu işlemden sonra karşımıza aşağıdaki selector sayfası geliyor. Burada Create şeçeneği ile Selector ü oluşturuyoruz.
LIMIT IDENTIFIER
Limit Identifier kısmında belirli bir süre içinde kaç adet hatalı girişi denemesinden sonra aksiyon alınması için gerekli parametreleri giriyoruz. Burada;
Threshold: Hatalı giriş sayısı
Time Slice(msec): Zaman aralığı
Aşağıda 100 saniye içinde 5 hatalı giriş denemesini tanımlamak için oluşturulmuş limit identifierı görebilirisiniz.
RATE LIMIT RESPONDER OLUŞTURMA
Rate limiting için oluşturduğumuz tanımlardan sonra bu tanımları responder policy yazarken kullanmamız gerekiyor. Bunun için önce Responder kısmından Action oluşturuyoruz.
Oluşturduğumuz bu Actionda hatalı giriş denemelerinden sonra kullanıcı ekranına Expression kısmında yazan formatta bir bilgilendirme çıkacaktır. Ancak Type kısmından Respond with yerine Respond with HTML Page seçeneğini seçerek kullanıcı ekranına kendi oluşturduğumuz bir HTML sayfası çıkartabileceğimiz gibi Redirect seçeneğini seçerek başka bir sayfaya da yönlendirebiliriz.
Action oluşturduktan sonra Responder Policy oluşturup oluşturduğumuz Action’ı bu Policy ile ilişkilendirmemiz gerekiyor. Yazacağımız expressionda ise oluşturduğumuz Limit Identifierı göstermemiz gerekiyor. Expression Editor ile aşağıdaki expressionı oluşturuyoruz. Done ile kaydettikten sonra Şekil-10 daki ekran görüntüsü karşımıza çıkıyor ve Create ile Responder Policymizi tamamlıyoruz.
Oluşturduğumuz Responderı ilgili Virtual Serverla ilişkilendirdiğimizde işlemimizi tamamlamış oluyoruz. 5 hatalı denemeden sonra 6. Hatalı isteğimizde aşağıdaki ekran karşımıza gelecektir.