Internet informationstjenester - Internet Information Services

Internet Informationstjenester
IIS 8.5.9431 management console.png
Skærmbillede af IIS Manager-konsol af Internet Information Services 8.5
Udvikler (r) Microsoft
Første udgivelse 30. maj 1995 ; 26 år siden ( 1995-05-30 )
Stabil frigivelse
10.0.17763.1 / 2. oktober 2018 ; 2 år siden ( 2018-10-02 )
Skrevet i C ++
Operativ system Windows NT
Tilgængelig i Samme sprog som Windows
Type Webserver
Licens En del af Windows NT (samme licens)
Internet side www .iis .net

Internet Information Services ( IIS , tidligere Internet Information Server ) er en udvidelig webserver- software oprettet af Microsoft til brug sammen med Windows NT- familien. IIS understøtter HTTP , HTTP / 2 , HTTPS , FTP , FTPS , SMTP og NNTP . Det har været en integreret del af Windows NT-familien siden Windows NT 4.0 , selvom den muligvis ikke findes i nogle udgaver (f.eks. Windows XP Home-udgave) og er ikke aktiv som standard.

Historie

Den første Microsoft-webserver var et forskningsprojekt ved European Microsoft Windows NT Academic Center (EMWAC), en del af University of Edinburgh i Skotland, og blev distribueret som freeware . Men da EMWAC -serveren ikke var i stand til at håndtere trafikmængden til Microsoft.com , blev Microsoft tvunget til at udvikle sin egen webserver, IIS.

Næsten hver version af IIS blev udgivet enten ved siden af ​​eller med en version af Microsoft Windows:

  • IIS 1.0 blev oprindeligt frigivet som en gratis tilføjelse til Windows NT 3.51.
  • IIS 2.0 var inkluderet i Windows NT 4.0.
  • IIS 3.0, som var inkluderet i Service Pack 2 i Windows NT 4.0, introducerede det dynamiske script -miljø i Active Server Pages .
  • IIS 4.0 blev frigivet som en del af "Option Pack" til Windows NT 4.0. Det introducerede den nye MMC -baserede administrationsapplikation og var også den første version, hvor du kan køre flere forekomster af web- og FTP -servere, der adskiller dem efter portnummer og/eller værtsnavn. Det var også den første version, der kørte applikationspuljer.
  • IIS 5.0 blev leveret med Windows 2000 og introducerede yderligere godkendelsesmetoder, understøttelse af WebDAV- protokollen og forbedringer af ASP . IIS 5.0 droppede også understøttelse af Gopher-protokollen . IIS 5.0 tilføjede HTTP.SYS.
  • IIS 5.1 blev leveret med Windows XP Professional og var næsten identisk med IIS 5.0 på Windows 2000.
  • IIS 6.0 inkluderet i Windows Server 2003 og Windows XP Professional x64 Edition , tilføjede understøttelse af IPv6 og inkluderede en ny arbejdsprocessemodel, der øgede sikkerheden såvel som pålideligheden. HTTP.sys blev introduceret i IIS 6.0 som en HTTP-specifik protokollytter til HTTP-anmodninger. Også hver komponent (som f.eks. Server Side Includes eller ASP) skal nu eksplicit installeres, fordi hackere i tidligere versioner ofte kom ind på websteder ved hjælp af sikkerhedsfejl af komponenter, der ikke engang var i brug af det hackede websted, hvilket forbedrede sikkerheden.
  • IIS 7.0 var et komplet redesign og omskrivning af IIS og blev sendt med Windows Vista og Windows Server 2008 . IIS 7.0 inkluderede et nyt modulopbygget design, der muliggjorde en reduceret angrebsoverflade og øget ydeevne. Det introducerede også et hierarkisk konfigurationssystem, der muliggør enklere implementering af websteder, et nyt Windows Forms- baseret styringsprogram, nye kommandolinjeadministrationsmuligheder og øget support til .NET Framework . IIS 7.0 på Vista begrænser ikke antallet af tilladte forbindelser, som IIS på XP gjorde, men begrænser samtidige anmodninger til 10 (Windows Vista Ultimate, Business og Enterprise Editions) eller 3 (Vista Home Premium). Yderligere anmodninger står i kø, hvilket hæmmer ydeevnen, men de afvises ikke som med XP.
  • IIS 7.5 var inkluderet i Windows 7 (men den skal være tændt i sidepanelet i Programmer og funktioner) og Windows Server 2008 R2 . IIS 7.5 forbedrede WebDAV- og FTP-moduler samt kommandolinjeadministration i PowerShell . Det introducerede også TLS 1.1 og TLS 1.2 support og Best Practices Analyzer -værktøjet og procesisolering til applikationspuljer.
  • IIS 8.0 er kun tilgængelig i Windows Server 2012 og Windows 8 . IIS 8.0 inkluderer SNI (bindende SSL til værtsnavne frem for IP -adresser), initialisering af applikationer, centraliseret SSL -certifikatsupport og multicore -skalering på NUMA -hardware, blandt andre nye funktioner.
  • IIS 8.5 er inkluderet i Windows Server 2012 R2 og Windows 8.1 . Denne version inkluderer side-out i tomgang-arbejder-proces, dynamisk webstedaktivering, forbedret logning, ETW-logning og automatisk genoprettelse af certifikater.
  • IIS 10.0 version 1607 alias version 10.0.14393 er inkluderet i Windows Server 2016 frigivet 2016-09-26 og Windows 10 Anniversary Update frigivet 2016-08-02. Denne version inkluderer understøttelse af HTTP/2 , kørsel af IIS i Windows-containere på Nano Server, en ny Rest management-API og tilsvarende webbaseret management GUI og Wildcard Host Headers.
  • IIS 10.0 version 1709 er inkluderet i Windows Server, version 1709 (Semi-Annual Channel) og Windows 10 Fall Creators Update begge udgivet 2017-10-17. Denne version tilføjer understøttelse af HSTS , containerforbedringer, nye site-bindende PowerShell- cmdlets og 4 nye servervariabler præfikset med "CRYPT_".
  • IIS 10.0 version 1809 alias version 10.0.17763 er inkluderet i Windows Server 2019 og Windows 10. oktober opdatering frigivet 2018-10-02. Denne version tilføjet flag til kontrol af HTTP / 2 og OCSP Hæftning per site, en kompression API og gennemføre modul understøtter både gzip og brotli ordninger, og en brugergrænseflade til konfiguration HSTS .

Alle versioner af IIS før 7.0 kørte på klientoperativsystemer understøttede kun 10 samtidige forbindelser og et enkelt websted.

Microsoft blev kritiseret af leverandører af anden webserversoftware, herunder O'Reilly & Associates og Netscape , for sin licensering af tidlige versioner af Windows NT; "Workstation" -udgaven af ​​operativsystemet tillod kun ti samtidige TCP/IP -forbindelser, hvorimod den dyrere "Server" -udgave, som ellers havde få ekstra funktioner, tillod ubegrænsede forbindelser, men medfølgende IIS. Det blev antydet, at dette var beregnet til at afskrække forbrugerne fra at køre alternative webserverpakker i den billigere udgave. Netscape skrev et åbent brev til Antitrust Division i det amerikanske justitsministerium om denne sondring i produktlicenser, som den hævdede ikke havde nogen teknisk fortjeneste. O'Reilly viste, at brugeren kunne fjerne de håndhævede grænser, der var beregnet til at lamme NT 4.0 Workstation som en webserver med to ændringer i registreringsdatabasenøglen og anden triviel konfigurationsfiltilpasning.

Funktioner

IIS 6.0 og nyere understøtter følgende godkendelsesmekanismer :

IIS 7.0 har en modulær arkitektur. Moduler, også kaldet udvidelser, kan tilføjes eller fjernes individuelt, så kun moduler, der kræves til specifik funktionalitet, skal installeres. IIS 7 inkluderer native moduler som en del af den fulde installation. Disse moduler er individuelle funktioner, som serveren bruger til at behandle anmodninger.

IIS 7.5 indeholder følgende ekstra eller forbedrede sikkerhedsfunktioner:

  • Kortlægning af klientcertifikat
  • IP-sikkerhed
  • Anmod om filtrering
  • URL -godkendelse

Godkendelsen ændrede sig lidt mellem IIS 6.0 og IIS 7, især ved at den anonyme bruger, der blev navngivet "IUSR_ {machinename}", er en indbygget konto i Vista og fremtidige operativsystemer og navngivet "IUSR". Især i IIS 7 er hver godkendelsesmekanisme isoleret i sit eget modul og kan installeres eller afinstalleres.

IIS 8.0 tilbyder nye funktioner rettet mod ydeevne og lettere administration. De nye funktioner er:

  • Initialisering af applikationer: en funktion, der gør det muligt for en administrator at konfigurere bestemte applikationer til at starte automatisk med serverstart. Dette reducerer ventetiden for brugere, der får adgang til webstedet for første gang efter en server genstart.
  • Splash-side under initialisering af applikation: administratoren kan konfigurere en splash-side, der skal vises til webstedsbesøgende under en applikationsinitialisering.
  • ASP.NET 4.5-understøttelse: Med IIS 8.0 er ASP.NET 4.5 inkluderet som standard, og IIS tilbyder også flere konfigurationsmuligheder for at køre det side om side med ASP.NET 3.5.
  • Centraliseret SSL -certifikatsupport: en funktion, der gør det lettere at administrere certifikater ved at lade administratoren gemme og få adgang til certifikaterne på en fildeling.
  • Multicore -skalering på NUMA -hardware: IIS 8.0 giver flere konfigurationsmuligheder, der optimerer ydeevnen på systemer, der kører NUMA, f.eks. At køre flere arbejdsprocesser under en applikationspulje, ved hjælp af blød eller hård affinitet og mere.
  • WebSocket -protokolunderstøttelse
  • Server Name Indication (SNI): SNI er en udvidelse til Transport Layer Security, som tillader binding af flere websteder med forskellige værtsnavne til en IP-adresse (svarende til, hvordan Host Headers bruges til ikke-SSL-websteder).
  • Dynamiske IP-adressebegrænsninger: en funktion, der gør det muligt for en administrator dynamisk at blokere IP'er eller IP-områder, der rammer serveren med et stort antal anmodninger
  • CPU Throttling: et sæt kontrolelementer, der gør det muligt for serveradministratoren at kontrollere CPU-brugen i hver applikationspulje for at optimere ydeevnen i et miljø med flere lejere

IIS 8.5 har flere forbedringer relateret til ydeevne i store scenarier, f.eks. Dem, der bruges af kommercielle hostingudbydere og Microsofts egne cloud-tilbud. Det har også flere tilføjede funktioner relateret til logning og fejlfinding. De nye funktioner er:

  • Idle worker-Process page-out: en funktion til at suspendere inaktivitet for at reducere hukommelsesaftryk på inaktive websteder
  • Dynamisk aktivering af websted: en funktion, der kun registrerer lytningskøer til websteder, der har modtaget anmodninger
  • Forbedret logning: en funktion, der tillader samling af servervariabler, anmodningsoverskrifter og svaroverskrifter i IIS-logfilerne
  • ETW-logning: en ETW-udbyder, der gør det muligt at indsamle logfiler i realtid ved hjælp af forskellige værktøjer til sporing af hændelser
  • Automatisk genopbygning af certifikater: en funktion, der registrerer, når et webstedscertifikat er blevet fornyet, og automatisk genindfinder stedet til det

Express

IIS Express , en let (4,5–6,6 MB) version af IIS, er tilgængelig som en selvstændig freeware -server og kan installeres på Windows XP med Service Pack 3 og efterfølgende versioner af Microsoft Windows. IIS 7.5 Express understøtter kun HTTP- og HTTPS-protokollerne. Den er bærbar, gemmer sin konfiguration pr. Bruger, kræver ikke administrative rettigheder og forsøg på at undgå konflikt med eksisterende webservere på den samme maskine. IIS Express kan downloades separat eller som en del af WebMatrix eller Visual Studio 2012 og nyere. (I Visual Studio 2010 og tidligere brugte webudviklere, der udviklede ASP.NET -apps, ASP.NET Development Server, kodenavnet "Cassini".) Som standard betjener IIS Express kun lokal trafik.

Udvidelser

IIS frigiver nye funktionsmoduler mellem større versionudgivelser for at tilføje ny funktionalitet. Følgende udvidelser er tilgængelige til IIS 7.5:

  • FTP Publishing Service: Lader webindholdsskabere offentliggøre indhold sikkert til IIS 7 webservere med SSL-baseret godkendelse og dataoverførsel.
  • Administration Pack: Tilføjer administrations -UI -understøttelse til administrationsfunktioner i IIS 7, herunder ASP.NET -godkendelse, brugerdefinerede fejl, FastCGI -konfiguration og anmodningsfiltrering.
  • Router til applikationsanmodninger : Tilvejebringer et proxybaseret routingsmodul, der videresender HTTP-anmodninger til indholdsservere baseret på HTTP-headere, servervariabler og belastningsbalancealgoritmer.
  • Database Manager: Tillader nem styring af lokale og eksterne databaser fra IIS Manager.
  • Media Services: Integrerer en medieleveringsplatform med IIS til at styre og administrere levering af rich media og andet webindhold.
  • URL-omskrivningsmodul: Indeholder en regelbaseret omskrivningsmekanisme til ændring af anmodningswebadresser, før de behandles af webserveren.
  • WebDAV: Lader webforfattere udgive indhold sikkert til IIS 7 -webservere og lader webadministratorer og hostere administrere WebDAV -indstillinger ved hjælp af IIS 7 -styrings- og konfigurationsværktøjer.
  • Web Deployment Tool: Synkroniserer IIS 6.0 og IIS 7 servere, migrerer en IIS 6.0 server til IIS 7 og distribuerer webapplikationer til en IIS 7 server.

Anvendelse

Ifølge Netcraft havde IIS i februar 2014 en "markedsandel på alle websteder" på 32,80%, hvilket gjorde den til den næstmest populære webserver i verden bag Apache HTTP Server på 38,22%. Netcraft viste en stigende tendens i markedsandele for IIS siden 2012. Den 14. februar 2014 viser W3Techs imidlertid forskellige resultater. Ifølge W3Techs er IIS den tredje mest brugte webserver bag Apache HTTP Server (1. plads) og Nginx . Desuden viser det en konstant faldende tendens til IIS-brug siden februar 2013.

Netcraft-data i februar 2017 indikerer, at IIS havde en "markedsandel på de største million travleste websteder" på 10,19%, hvilket gør den til den tredje mest populære webserver i verden bag Apache med 41,41% og nginx på 28,34%.

Sikkerhed

IIS 4 og IIS 5 blev påvirket af CA-2001-13 sikkerhedssårbarhed, der førte til det berygtede angreb fra Code Red ; begge versioner 6.0 og 7.0 har dog ingen rapporterede problemer med denne specifikke sårbarhed. I IIS 6.0 valgte Microsoft at ændre adfærden hos forudinstallerede ISAPI- handlere, hvoraf mange var synder i sårbarhederne 4.0 og 5.0, hvilket reducerede IIS 's angrebsoverflade . Derudover tilføjede IIS 6.0 en funktion kaldet "Web Service Extensions", der forhindrer IIS i at starte et program uden eksplicit tilladelse fra en administrator.

Som standard kører websteder IIS 5.1 og tidligere websteder i en enkelt proces, der kører konteksten for systemkontoen, en Windows -konto med administrative rettigheder. Under 6.0 kører alle anmodningshåndteringsprocesser i sammenhæng med netværksservice-kontoen, som har betydeligt færre privilegier, så hvis der er en sårbarhed i en funktion eller i brugerdefineret kode, vil det ikke nødvendigvis kompromittere hele systemet i betragtning af det sandkassemiljø , disse arbejderprocesser kører ind. IIS 6.0 indeholdt også en ny HTTP -stak ( http.sys) med en strengere HTTP -anmodningsparser og svarcache for både statisk og dynamisk indhold.

Ifølge Secunia havde IIS 7 fra juni 2011 i alt seks løste sårbarheder, mens IIS 6 havde i alt elleve sårbarheder, hvoraf en stadig ikke var opdateret. Den upatchede sikkerhedsrådgivning har en sværhedsgrad på 2 ud af 5.

I juni 2007 konkluderede en Google-undersøgelse af 80 millioner domæner, at mens IIS-markedsandelen på det tidspunkt var 23%, var IIS-servere vært for 49% af verdens malware, det samme som Apache-servere, hvis markedsandel var 66%. Undersøgelsen observerede også den geografiske placering af disse beskidte servere og foreslog, at årsagen til dette kunne være brug af ulicenserede kopier af Windows, der ikke kunne få sikkerhedsopdateringer fra Microsoft. I et blogindlæg den 28. april 2009 bemærkede Microsoft, at det leverer sikkerhedsopdateringer til alle uden ægte verifikation.

De 2013 oplysninger masse overvågning gjort det mere almindeligt kendt, at IIS er særligt slemt i at støtte perfekt fremad hemmeligholdelse (PFS), især når den bruges sammen med Internet Explorer. Besiddelse af en af ​​de langsigtede asymmetriske hemmelige nøgler, der bruges til at etablere en HTTPS -session, bør ikke gøre det lettere at udlede den korte sigtelsesnøgle for derefter at dekryptere samtalen, selv på et senere tidspunkt. Diffie - Hellman nøgleudveksling (DHE) og elliptisk kurve Diffie - Hellman nøgleudveksling (ECDHE) er i 2013 de eneste, der vides at have denne ejendom. Kun 30% af Firefox-, Opera- og Chromium -browsersessioner bruger det og næsten 0% af Apples Safari- og Microsoft Internet Explorer -sessioner.

Se også

Referencer

eksterne links