Kısaca IIS olarak bilinen Internet Information Services esnek yapılı ve genel kullanım için Microsoft tarafından Windows sistemlerde çalışmak üzere geliştirilmiş bir web sunucudur. Bu sunucu istenilen HTML sayfalarına ya da dosyalarına cevap vermektedir. IIS, Mono ile birlikte Mac ya da Linux cihazlarda da kullanılabilmektedir ancak bu şekilde kullanımı önerilmemektedir ve stabil bir şekilde çalışmamaktadır. İlk olarak Windows NT ile karşımıza gelen servis daha sonra düzenli bir şekilde Windows işletim sistemi ile beraber güncellenmeye devam etti. Windows NT 4.0 ile IIS 4.0, Windows 2000 ile IIS 5.0 şeklinde güncellendi. Günümüzde ise en güncel IIS sürümü Windows Server 2019 ve Windows 10 ile beraber gelen IIS 10. 

Web Server Nedir?

Bir web server yazılımı olan IIS’i anlamak için öncelikli olarak web server’ın ne olduğunu biraz anlamak gerekmektedir. İnternet uygulamalarının saklandığı bilgisayarlara web sunucusu adı verilmektedir. Bu server uygulamaların varsayılan olarak belirlenmiş TCP portlarından gelen mesajları işlemektedir. Örneğin, HTTP trafiği için varsayılan port 80, HTTPS için varsayılan port 443’tür. Bir internet sitesi ziyaret edildiğinde aksi belirtilmediği sürece web server gelen trafiği varsayılan port üzerinden almaktadır. Bu noktada limonhost.net adresini ziyaret ettiğinizde istek port 80 üzerinden gönderilmektedir. Bu ayarlar varsayılan olarak yapıldığı için siteyi ziyaret ederken limonhost.net:80 ya da limonhost.net:443 gibi port belirtmeye gerek yoktur. 

Web Server

IIS, Web İsteklerini Nasıl İşler?

Web sunucuları gelen istekleri iki farklı şekilde almaktadır. Bazı sunucular tüm istekleri tek bir işlem parçasıyla ele alırken bazıları her bir istek için bir işlem parçası ortaya koyar. Node.js gibi tek işlem parçası modeli aynı zamanda işçi parçalara da sahiptir ve dosya sistemine erişim gibi bazı spesifik işlemlerde bu parçalar kullanmaktadır. IIS ve daha alt modeli olan IIS Express işlem başına parça modeline sahiptir ve  her bir istek için parça havuzundan bir parça almaktadır. Web sunucular tipik olarak istekleri istek-cevap şeklinde işlemektedir. İstemci bir istek gönderir ve her şey çalışıyorsa cevap alır. HTTP protokolü internette istemci ve web server arasındaki iletişimi sağlayan hazır protokoldür. 

IIS’in Sunduğu Özellikler

Internet Information Services özellik açısından son derece zengindir. IIS özellikle ASP.NET ile yazılmış web uygulamalarının ve internet sitelerinin barındırılmasında tercih edilmektedir. Ayrıca FTP sunucusu, WCF servislerinin barındırılması ve PHP gibi diğer platformlarda geliştirilen web uygulamalarının barındırılmasında da tercih edilmektedir. Servisin içerisinde Basic, ASP.NET ve Windows auth gibi yetkilendirme özellikleri bulunmaktadır. IIS’in kullanıcılara sunduğu bir diğer kullanışlı özellik ise Windows Active Directory ortamıdır. Bu ortamda kullanıcılar domain hesaplarını kullanarak otomatik olarak web uygulamalarında giriş sağlamaktadır. Sistem içerisinde yer alan TLS sertifika yöneticisi ve internet siteleri için HTTPS ya da SFTP özellikleri yer almaktadır. IIS site için istek filtreleme, trafik için beyaz liste ya da kara liste filtresi, yetkilendirme kuralları, istek loglama ve zengin FTP güvenlik önemleri sunmaktadır. Servisi uzaktan CLI ya da PowerShell ile yönetebilmek mümkün olmaktadır. Ayrıca bütün işlemler betik düzenlemesi ile otomatize edilebilmektedir. 

IIS Kurulumu

Aslında IIS bir özelliktir ve kurulum yerine Windows içerisinden aktif edilmesi gerekmektedir. Bunun için Windows 10 işletim sistemine sahip bilgisayarın denetim masasından “Windows Özelliklerini aç veya kapat” bölümüne girmek gerekmektedir. Windows Server için ise Server Manager içerisinde bulundan “Add Roles and Features” kısmına girilerek IIS Web Server aktif edilebilir. Burada yer alan isteden Internet Information Services ve altında yer alan FTP sunucusu, Web Yönetim Araçları ve Wold Wide Web Hizmetleri klasörlerinin yanında yer alan kutuları tiklemek gerekmektedir. Daha derine inmek için World Wide Web Hizmetleri altında yer alan Uygulama Geliştirme Özelliklerini etkinleştirerek ASP.Net, CGI ve WebSocket Protocol gibi özellikler aktif edilebilmektedir. Kutuları tikledikten sonra kurulum başlamaktadır ve biraz zaman almaktadır. Kurulum tamamlandıktan sonra Windows’un arama özelliğinden IIS yazarak servise erişim sağlamak mümkün olmaktadır. 

IIS Kurulumu

IIS Arayüzü

IIS, oldukça kullanışlı bir grafik arayüzüne sahiptir. IIS ekranı Bağlantılar, Özellikler ve İşlemler olmak üzere üç panele bölünmüştür. Sol tarafta yer alan Bağlantılar kısmında bağlanılmış olan sunucular yer almaktadır. Orta kısımda ise işlemlerin yapıldığı uygulamalar bulunmaktadır. Buradan bir de İçerik Görünümüne de erişilebilmektedir. Ayrıca Windows’ta olduğu gibi bu simgelere sağ tıklanarak ek özelliklere erişilebilmektedir. Sağ kısımdaki İşlemlerde ise seçili olan özelliği bağlı olarak değişik işlemler gelmektedir. Bağlantılar bölümünün alt kısmında ise Uygulama Havuzu ve Siteler bölümü bulunmaktadır.