Windows Server 2012 IIS 8 Kurulum ve Özellikleri – Bölüm 1
Microsoft’un henüz beta sürümünde olan ve yılsonundan önce çıkmasına kesin gözü ile bakılan yeni sunucu işletim sistemi Windows Server 2012 ile birlikte IIS 8 geliyor. Bu yeni IIS sürümü, Windows Server 2008 ile ara yüzü ve değişen, yeni özelikler eklenen IIS 7 ve 7.5’in güvenlik, performans ve ölçeklendirebilme gibi konuları ön planda tutarak bir dizi iyileştirme ve yeni özelliklerin eklendiği sürümüdür. Bu yeni sürüm ile birlikte artık web sunum hizmetlerini daha esnek yapabilir ve çeşitli durumlarda ihtiyaç duyduğunuz üçüncü parti yazılımlara daha az gereksiniminiz olacaktır.
Hızlıca IIS 8’in yeni özelliklerinin başlıklarına bakacak olursak aşağıdakiler ön plana çıkmaktadır. Bu özellikleri kurulum sonrası tek tek açıklıyor ve inceliyor olacağız.
Real CPU Throttling
Multicore Scaling on NUMA
Dynamic IP Restrictions
FTP Logon Attempt Restriction
SSL Scalability
SNI / SSL Host Header SupportS
SSL Manageability – Central Certificate Store (CCS)
Application Initialization Module
Configuration Scale
Web Sockets
IIS 8’in kurulum gereksinimlerine baktığımızda Windows Server 2012 en temel işletim sistemi ihtiyacımızdır. IIS 8, Windows Server 2008 sürümleri üzerinde çalışmamaktadır. IIS 8, Windows Server 2012’in Core sürümlerinde de çalışabilmektedir. GUI üzerinden yüklemek istenirse, Server Manager à Manage à Add Roles and Features adımları ile yükleme sayfasına gidilebilir. Server Roles adımında Web Server ( IIS ) seçeneği seçilmesi yeterli olacaktır. Bu seçeneği seçtiğinizde kurulum wizard’ı size yönetim için ihtiyaç duyulan IIS Management Console ‘un da Feature olarak yüklenmesi için bir ekran getirecektir, add seçeneğini seçerek devam edebilirsiniz.
Sonraki adımda seçmiş olduğunuz IIS Web Server rolü için kullanabileceğiniz özelliklerin bulunduğu Features adımı gelecektir. Burada temel başlıklar altında kullanabileceğiniz, ihtiyaç duyabileceğiniz özellikleri seçerek kurulumu son aşamaya getirebilir, install ile kurulumu tamamlayabilirsiniz. Bu özelliklere kısaca değinmek gerekirse örneğin sunucu üzerinde sadece web sitesi yayınlayacak ve FTP sunucusu olarak kullanmayacaksanız bu özelliği eklemenize gerek yok, yada log’lamayı sunucu içerisinde yerel yapacaksanız ODBC Logging aracına ihtiyacınız yok. Benzeri şekilde ihtiyaçlarınıza göre bu özellikleri seçerek ekleyebilirsiniz. Kurmadığınız özellikleri de daha sonra ihtiyacınız olması durumunda ek bileşen olarak kolayca ekleyebilirsiniz.
IIS bileşenlerini de bu adımda seçtikten sonra next ile ilerlediğimizde kurulum öncesi Confirmation ekranında seçtiğiniz role ve bu role ait bileşenleri göreceksiniz, son kontrollerinizi de burada yaptıktan sonra install seçeneği ile kurulumu tamamlayabilirsiniz.
IIS 8’imiz artık kurulu durumda, web sitesi yayınlayabilir durumdadır. Şimdi yeni özelliklere tek tek bakabiliriz.
Real CPU Throttling
Bu özellik önceki sürümlerde de olsa da çok kullanışlı değildi, esneklik tanımıyordu, eşik değerine ulaşıldığında sadece KillW3wp seçeneği ile uygulama kapatılıyordu. IIS 8 ile birlikte CPU kısıtlama özelliği aktif olarak kullanılabilmektedir ve uygulamayı sonlandırmak yerine Throttle ile ThrottleUnderLoad seçenekleri ile birlikte uygulamamızın kısıtlı olarak çalışmasına devam edebiliyor.
Bu özelliğe Web sunucunuz altında Applicaton Pools altından düzenlemek istediğiniz application’ı seçerek sağ taraftaki actions panelden Advanced Settings ile ulaşabilirsiniz.
Burada örnek olarak CPU kaynak kullanımını %50 e set etmek ve bu eşik değerinin üzerine çıkmasını engellemek istiyorsam aşağıdaki gibi Limit değerini 50000’e, Limit Action’ı Throttle olarak işaretlemem yeterli olacaktır.
FAYDA: Bu özellik özellikle bir web sunucusu üzerinde birden fazla web sitesi yayınlandığı durumlarda işinize yarar. Yayınlanan sitelerden birindeki uygulamaya gelen aşırı trafikten diğer siteler etkilenmez.
Multicore Scaling on NUMA
IIS 8 ile birlikte yeni gelen özelliklerden biri olan NUMA (Non-Uniform Memory Access , ) Düzensiz Bellek Erişimi’nde çalışan uygulama çekirdek sayısını arttırabilmek. Yüksek performans ihtiyaçlarına karşılamaya yönelik bir özelliktir. Sunucu sistemlerinde genel yaklaşım, işlemci, ram ve disk kaynağının arttırılması ile performansında dikey olarak artması beklenir, sağlanır. Ancak uygulama seviyesinde bu her zaman tam olarak gerçekleşmez. IIS 8 ile birlikte yeni gelen bu özellik bir application pool’un birden fazla worker proccesser kullanmasını sağlayabilirsiniz. Application pool’un Advanced Settings’leri altında Maximum Worker Processes değerini 0 yaparak aktif edebilirsiniz, IIS 8 ihtiyaca göre kullanabileceği en yüksek sayıda açmasını sağlayabilirsiniz.
FAYDA: Yaptığım yük testinde ciddi bir performans artışı gözlenmiştir. Özellikle multi tenancy yapılarda mutlaka kullanılmalıdır.
Dynamic IP Restrictions
Daha önceki sürümlerde hiç olmayan ve IIS 8 ile birlikte gelen en yeni özelliklerden birisi dinamik ip kısıtlaması. IIS’in güvenlik anlamındaki önemli bileşenlerinden biri olan UrlScan özellikle sql injection gibi saldırılara kolaylıkla engel olabilirken ip tabanlı ddos vb. saldırılara karşı IIS’in önceki sürümlerinin koruması yoktu. IIS 8 ile birlikte artık bu özellik web sitenize gelen trafiği kısıtlayabiliyorsunuz ve bunların log’larını tutarak kayıt alabiliyorsunuz. Bu seçenekleri aktif ettiğinizde sitenize belirli bir süre içerisinde, belirtilen sayıdan fazla istek geliyorsa IIS bu IP’leri dinamik olarak engellemeye başlıyor. Ayrıca siteye yapılacak bağlantılarda maksimum farklı IP sayısını da belirleyebilirsiniz.
Bu özelliği etkinleştirmek için siteniz altından IP Address and Domain Restrictions’e girerek sağ taraftaki actions panelden Edit Dynamic Restriction Settings i seçmeniz yeterlidir, açılacak olan pencereden ilgili ayarları etkinleştirebilirsiniz.
Maximum number of concurrent requests : siteye izin verilecek en fazla farklı IP sayısı
Deny IP Address based on the number of requests over a period of time: Belirtilen zaman diliminde bir IP adresinden kaç adet isteğe izin verileceği değerleri belirtebilirsiniz. Bu değere giriş yaparken dikkat edin, hataya yapmanıza açık bir alandır. Bunun sebebini Örneklersek; NAT’lanarak tek bir sabit ip üzerinden internete çıkan firmalardan sitenize gelen trafik IIS tarafından tek sayılacağı için aynı şirketten 10 kişi www.cozumpark.com’a geliyorsa ve sayfalarda dolanmaya başladıysa 20. İstekte 200 saniye engellemeye maruz kalınacaktır. Bu yüzden bu değeri girerken ihtiyaçlarınıza göre doğru seçim yapmanız gerekiyor.
FAYDA: Bu özellik özellikle kısıtlı olanaklar ile web yayıncılığı yapıyor ve ortamda IPS yoksa web sitenize gelebilecek saldırıları belirli bir noktaya kadar engelleyebilmeniz mümkündür. Mutlaka sitenize uygun değerler girerek etkinleştirmenizi öneririm.
FTP Logon Attempt Restriction
Daha önceki sürümlerde hiç olmayan ve IIS 8 ile birlikte gelen en yeni özelliklerden bir diğeri ftp servisinde brute force ataklara karşı koruma olarak oturum açma denemesinin kısıtlandırılmasıdır. Önceki sürümlerde böyle bir koruma olmadığı için yine IPS tarafında bu kontrolün yapılması gerekiyordu. IIS 8 ile birlikte yeni gelen bu özelliği açarak belirli sayıda oturum açma denemesi yapılarak başarısız olunması durumunda belirtilen zaman periyodunda tekrar oturum açma denemesi yapması engellenebilmektedir. Bu özelliği aktif etmek için IIS 8 yönetim konsolunda sol tarafta sunucunuzu seçerek sağ taraftaki bileşenlerden FTP Logon Attempt Restrictions seçeneğini açmanız yeterlidir. Açılan sayfadan aşağıdaki gibi Enable FTP logon Attempt Restrictions kutucuğunu işaretleyerek kendi değerlerinizi girebilirsiniz.
FAYDA: Bu özellikle kısıtlı olanaklar ile Microsoft FTP server hizmetini sağlıyor ve ortamda IPS yoksa ftp sunucunuza gelebilecek brute force saldırılarından korunmanızı sağlayacaktır. Mutlaka kullanmanızı öneririm. Ortalama olarak 5 başarısız şifre denemesi yapıldığında 300 saniye girişi engelleyebilirsiniz.
Özellikleri uygulamalı olarak anlattığımız için yazı dizisini ikiye bölmeyi düşündüm ve iki bölümde hazırladım. Diğer özellikler için ikinci bölümü inceleyebilirsiniz. Sorularınızı forum üzerinden gönderebilirsiniz.
Makalemin ikinci bölümü için aşağıdaki linki inceleyebilirsiniz
Eline sağlık.