IIS 7.0 Eklentileri

Çeşitli nedenlerle vermek zorunda kaldığım iki aylık aradan sonra, IIS 7.0 ile ilgili bir yazıyla dönmeye karar verdim.

IIS 7.0, daha önceki bazı yazılarımda anlatmaya çalıştığım gibi, tamamen modüler bir yapıdadır. Üzerine kuracabileceğimiz eklentilerle çok farklı ihtiyaçlara cevap verebilmesi mümkün olmuştur. İşte bu yazımda, bu eklentilerden, çok işinize yarayacağını düşündüğüm üç tanesinden bahsedeceğim.

Administration Pack

Bu eklenti, aslında IIS'e yeni bir özellik getirmiyor; zaten var olan, ancak grafik arayüzü olmayan bazı özelliklere arayüz sağlıyor. Bunlar:

  • Request Filtering
  • FastCGI configuration
  • ASP.NET Authorization
  • ASP.NET Error Pages
  • Log reports

Bunların dışında bir de "configuration editor" gelmektedir. Detaylı bilgi için buraya tıklayınız.

Advanced Logging

Bu eklenti henüz beta, ancak yine de bahsetmek istedim. Bu eklenti ile, IIS loglarını bir adım öteye taşıyabiliyoruz. Beraberinde gelen pek çok yeni log alanının dışında, biz de yeni alanlar ekleyebiliyoruz (örneğin Request Header, Response Header veya Server Variables içinden istediklerimizi).

AdvancedLogging

Yukarıda Advanced Logging ile tanımlı gelen bazı alanları görebilirsiniz. Bunların arasında CPU-Utilization gibi gerçekten çok faydalı olabilecek olanlar var. Yukarıda göremediğimiz ama ayrıca eklenebilen "W3WP-PrivateBytes", "RequestsPerSecond", "Proxy" gibi alanlar da bulunuyor. Bu eklenti ile ilgili detaylı bilgi için buraya tıklayınız.

Dynamic IP Restrictions

Bu eklenti de, Advanced Logging gibi, henüz beta seviyesindedir. IIS 7.0 ile gelen Request Filtering özelliği ile uygulamalarımızı pek çok saldırıdan koruyabiliyoruz. Ancak DoS (denial of service) saldırılarına karşı bir savunma mekanizmamız bulunmuyordu. İşte Dynamic IP Restrictions eklentisi ile tam olarak bunu yapabiliyoruz: Örneğin, bir IP'den belirli bir süre zarfında, belirli bir sayıdan fazla istek gelirse, o IP'yi bizim belirlediğimiz süre boyunca bloklayabiliyoruz. Yani neredeyse bir "firewall"un yapabildiği şeyleri biz IIS üzerinden ve arayüzünden yapabilir duruma geliyoruz.

DynamicIPRest

Belirlediğimiz kriterlere uyan bir durum söz konusu olduğunda nasıl bir tepki verileceğini de biz belirleyebiliyoruz:

  • Send 403 (Forbidden)
  • Send 404 (NotFound)
  • Abort Request (Close Connection)

Bu eklenti ile ilgili detaylı bilgi için buraya tıklayınız.

Yalnız bu noktada şunu unutmamak gerekir ki, IIS bir firewall değildir ve asla bir firewall'un yapabildiklerini yapamaz. Buna benzer modüller bizim uygulamalarımızı bir ölçüde koruyacaktır; ancak sadece HTTP protokolü üzerinden gelen saldırılardan koruyabilecektir. Diğer her türlü saldırı ve tehdide karşı, web sunucularımız mutlaka bir firewall'un arkasında olmalıdır.

CENK ISCAN