IIS (İnternet Bilgi Servisleri - Internet Information Services)

Eyl 06, 2013

İnternet Bilgi Servisleri olarak adlandırılan IIS (Internet Information Services), Web sayfaları yayınlamak, Web uygulamaları çalıştırmak ve Web sunucuları kurup yayınlamak için kullanılan servislerdir. IIS, Microsoft Windows sunucu tabanlı işletim sistemleriyle birlikte çalışmaktadır. Microsoft Windows işletim sistemi yüklü sunucularda istemcilerden HTTP, HTTPS, FTP gibi protokollerle gelen istekleri karşılar ve yanıt verir. Buna ek olarak .NET ortamında yazılım geliştirecek ve Web servisleri kullanacak yazılım geliştiriciler de IIS kurulu bir Windows işletim sistemine ihtiyaç duymaktadırlar. 

IIS ilk olarak Microsoft Windows NT 3.51 işletim sistemine ek olarak piyasaya sürülmüştür ve günümüze kadar geliştirilerek gelmiştir. Bu işletim sisteminden sonra çıkan, Windows XP Home Edition dışındaki bütün Windows işletim sistemlerine IIS kurulumu yapılabilir. Son sürümü Windows Server 2008 R2 ile birlikte sunulan IIS 7.5 dir. Bu sürüm IIS 7.0 ın üzerine eklenmiş, yönetilebilirliği ve ölçeklenebilirliği arttıran güncellemeler içermektedir. IIS 7.0 ile internet bilgi servisleri önceki sürümlerine göre daha güvenli ve sunucunun modüler yapısı sayesinde daha verimli bir sisteme sahiptir. Ayrıca günümüzde en yaygın kullanılan IIS sürümü IIS 7.0'dır. Bu sürümde servislerin bileşenleri modülleştirilmiştir ve sunucu ilk kurulduğunda yalnızca temel bileşenler yüklendiğinden daha güvenli bir yapı söz konusudur. Bu modüler mimarideki amaç sunucuya yapılabilcek saldırı yüzeyini en aza indirmektir. Ek olarak, ihtiyaç duyulan ayarlara göre modüller eklenerek veya kaldırılarak IIS istenilen yapılandırmalar için uygun hale getirilebilir. Önceki sürümlerde yeni sunucu ayarları için baştan kurulum yapmak gerekmekteydi. Söz konusu yapı hem zaman kaybına hem de Web uygulamalarının servis dışı kalması yol açmaktaydı. Ancak modüllerin eklenip kaldırılabilmesi yoluyla bu durumun önüne geçilerek IIS daha esnek ve daha kolay yönetilebilen bir yapıya sahip olmuştur.

IIS 7.0 ın temel bileşenlerini Protokol Dinleyiciler (Protocol Listeners) ve Servisler olarak ikiye ayırmak mümkündür. Protokol dinleyicilere örnek olarak HTTP.sys verilebilir. HTTP.sys; HTTP ve HTTPS protokolleri ile gelen isteklerle ilgilenmektedir. Servisler WWW (World Wide Web Publishing Service) ve WAS (Windows Process Activation Service) olmak üzere iki tanedirler. WWW servisi protokol dinleyici bağdaştırıcısı olarak HTTP.sys protokol dinleyicisinin güncelleştirmelerinden ve yapılandırmalarından sorumlu olmakla birlikte, istek kuyruğuna yeni bir istek eklendiğinde bu isteği WAS servisine bildirmektende sorumludur. WAS servisi ise uygulama havuzu yapılandırmasından ve çalışan işlemlerden sorumludur. WAS servisinin çalışabilmesi için WWW servisine ihtiyaç yoktur çünkü WAS servisi HTTP protokolü dışındaki isteklere de cevap vermektedir.
IIS 7.0 daki modüler yapı ise Ana Modüller (Native Modules) ve Yönetilebilir Modüller (Managed Modules) olarak ikiye ayrılırlar. Ana modüller IIS 7.0 ile birlikte yüklenirler ve daha sonra yapılandırılabilme özelliğine sahiptirler. Yönetilebilir modüller ise sonradan eklenerek sunucunun işlevselliğini arttırmak için kullanılırlar. Her modül kendine özgü bir göreve sahiptir.

Windows Vista İşletim Sisteminde IIS Kurulumu

  1. Start (Başlat) >> Control Panel (Denetim Masası) >> Programs and Features (Programlar ve Özellikler) yolu izlendikten sonra karşılaşılan ekranda Turn Windows Features on or off (Windows Özelliklerini Aç yada Kapatbağlantısına tıklanır.



  2. Açılan ekranda Internet Information Services (İnternet Bilgi Servisleri) bölümüne gelinir.



  3. Internet Information Services (İnternet Bilgi Servisleri) kutucuğu işaretlendikten sonra Okey (Tamam) düğmesine tıklanarak işlem tamamlanır. Bu işlem sonucunda İnternet Bilgi Servisi güvenlik için yalnızca temel bileşenleri yükler. Bu temel bileşenler HTTP protokolünün çalışmasını sağlayan, gelen istekleri filtreleyen ve görüntüleyen, HTTP protokolünün yeniden yönlendirilmesini sağlayan bileşenlerdir. Bütün bileşenleri yüklemek için Internet Information Services altındaki bütün başlıkların işaretli olması gerekmektedir. Ancak kullanılmayacak özelliklerin yüklenmemesi güvenlik açısından önemlidir.



  4. Sunucuya yeni özellikler kazandırmak için aynı bölümde Internet Information Services (İnternet Bilgi Servisleri) başlığı altındaki bağlantılar kullanılır. ASP.NET platformunda yazılmış dinamik Web sayfaları yayınlamak için World Wide Web Services (WWW Servisleri) başlığı altında Application Development Features (Uygulama Geliştirme Özellikleri) bölümünde ASP ve ASP.NET özelliklerinin işaretli olması gerekmektedir. Bu iki özellik seçildiğinde çalışabilmeleri için gerekli olan ISAPI Filtreleri, ISAPI Uzantıları ve .NET Uzantıları da otomatik olarak yüklenmektedir.



  5. FTP ile dosya yayınlamak için FTP Publishing Service (FTP Yayınlama Servisi) özelliğinin yüklü olması gerekmektedir. Ek olarak FTP Server (FTP Sunucusu) ve FTP Management Console (FTP Yönetim Kumandası) özellikleri kullanılarak FTP sunucusu kurulabilir ve FTP yayınlarını yönetmek için arayüz yüklenebilir.



IIS 7.0 ile Web Sayfası Yayınlamak İçin Gerekli Olan Ayarlar

  1. Start (Başlat) >> Control Panel (Denetim Masası) >> Administrative Tools (Yönetimsel Araçlar) >> IIS Manager (İnternet Bilgi Servisleri Yöneticisi) yolu izlenerek IIS yönetim arayüzü açılır. Sites (Siteler) başlığına sağ tıklanarak Add Web Site (Web Sitesi Ekle) seçilir.



  2. Gelen pencerede Site Name (Site Adı) kutusuna eklemek istenilen Web sitesinin ismi girilir.



  3. Yayınlanmak istenen sitenin dosyalarının tutulduğu klasörü gösteren dizinin yolu Physical Path (Fiziksel Yolkutusuna yazılır.



  4. Kimlik denetimi ayarları için Connect As (Farklı Bağlan) düğmesine tıklanır.



  5. Gelen pencerede isteğe bağlı olarak bireysel bir kullanıcı veya uygulama havuzuna dahil olan kullanıcılar için kimlik denetimi tanımlanabilir. Yalnızca yerel bilgisayar için Web yayını yapılacaksa Specific User (Özel Kullanıcı) bölümünden bilgisayardaki yerel kullanıcılar tanımlanmalıdır. Ayarlar yapıldıktan sonra Okey (Tamam) düğmesine tıklanarak bu işlem kaydedilir.



  6. Bu işlemlerden sonra yapılan ayarlar Test Settings (Ayarları Test Et) düğmesine tıklanarak kontrol edilebilir.



  7. Binding (Bağlama) bölümünde bağlantı tipi olarak ihtiyaca göre http veya https seçilir. 


     
  8. IP adresi ve port bölümünde ilgili sitenin yayınlanacağı ip adresi ve port numarası girilir. HTTP protokolü 80. porttan yayın yaptığı için varsayılan olarak port kısmında 80 gözükmektedir. 



  9. Eğer varsa Host Name (Sunucu Adı) kısmında sitenin ilgili ip adresine atanmış olan site adı girilir.



  10. Ayarları kaydettikten sonra Web sitesi yayınının hemen başlaması için Start Web Site Immediately (Web Sitesini Hemen Başlat) kutucuğu işaretlenir ve Okey (Tamam) düğmesine tıklanarak bu bölümdeki işlemler tamamlanır.



  11. Yayınlanan Web sitesinin dosyalarının tutulduğu dizinin tarayıcı üzerinde hiyerarşik bir şekilde görüntülenebilmesi için ana menüde Directory Browsing (Dizin Taramaüzerine çift tıklanarak ilgili bölüm açılır. Burada ekranın sağ bölümündeki menüden Enable (Etkinleştir) bağlantısı tıklanarak bu özellik aktif hale getirilir.



  12. Bu işlemler sonunda yayınlanmak istenen site ile ilgili ayarlar tamamlanmış olur. Bu aşamadan sonra yönetimsel ihtiyaçlar dahilinde modüller eklenip çıkartılabilir. Bunun için ana menüde Modules (Modüller) üzerine çift tıklanarak ayarlama menüsü açılır. Modül eklemek için Add Managed Modules (Düzenlenmiş Modül Ekle) seçeneğine tıklanır.



  13. Ana modüllerin ayarlarını değiştirmek için Configure Native Modules (Ana Modülleri Yapılandır) seçeneğine tıklanarak ayarlar yapılır.