Internet Information Services (IIS-pronounced 2S, formerly Internet Information Server) is an extensible
web server
A web server is computer software and underlying hardware that accepts requests via HTTP (the network protocol created to distribute web content) or its secure variant HTTPS. A user agent, commonly a web browser or web crawler, initiate ...
software created by
Microsoft for use with the
Windows NT family. IIS supports
HTTP,
HTTP/2,
HTTPS,
FTP,
FTPS,
SMTP and
NNTP. It has been an integral part of the Windows NT family since
Windows NT 4.0, though it may be absent from some editions (e.g. Windows XP Home edition), and is not active by default.
History
The first Microsoft web server was a research project at the European Microsoft Windows NT Academic Centre (EMWAC), part of the
University of Edinburgh in Scotland, and was distributed as
freeware. However, since the EMWAC server was unable to handle the volume of traffic going to
Microsoft.com
Microsoft Corporation is an American multinational technology corporation producing computer software, consumer electronics, personal computers, and related services headquartered at the Microsoft Redmond campus located in Redmond, Washing ...
, Microsoft was forced to develop its own web server, IIS.
Almost every version of IIS was released either alongside or with a version of Microsoft Windows:
* IIS 1.0 was initially released as a free add-on for Windows NT 3.51.
* IIS 2.0 was included with Windows NT 4.0.
* IIS 3.0, which was included with
Service Pack
In computing, a service pack comprises a collection of updates, fixes, or enhancements to a software program delivered in the form of a single installable package. Companies often release a service pack when the number of individual patches to a ...
2 of Windows NT 4.0, introduced the
Active Server Pages dynamic scripting environment.
* IIS 4.0 was released as part of the "Option Pack" for Windows NT 4.0. It introduced the new
MMC-based administration application and also was the first version where you can run multiple instances of web and FTP servers, differentiating them by port number and/or hostname. It was also the first version to run application pools.
* IIS 5.0 shipped with Windows 2000 and introduced additional authentication methods, support for the
WebDAV protocol, and enhancements to
ASP
Asp may refer to:
Places
* Asp, part of Densbüren, Aargau, Switzerland
* Aspe (''Asp'' in Valencian), Alicante, Spain
* Asp Lake, a lake in Minnesota
Animals
* Asp (fish)
* Asp (snake), in antiquity, one of several venomous snakes
** ''Cera ...
. IIS 5.0 also dropped support for the
Gopher protocol. IIS 5.0 added HTTP.SYS.
* IIS 5.1 was shipped with Windows XP Professional and was nearly identical to IIS 5.0 on Windows 2000.
* IIS 6.0 included with
Windows Server 2003 and
Windows XP Professional x64 Edition, added support for
IPv6 and included a new worker process model that increased security as well as reliability. HTTP.sys was introduced in IIS 6.0 as an HTTP-specific protocol listener for HTTP requests. Also each component (like for example Server Side Includes or ASP) now has to be explicitly installed, because in earlier versions often hackers entered sites by using security bugs of components that were not even in use by the hacked site, improving security.
* IIS 7.0 was a complete redesign and rewrite of IIS and was shipped with
Windows Vista and
Windows Server 2008. IIS 7.0 included a new modular design that allowed for a reduced attack surface and increased performance. It also introduced a hierarchical configuration system allowing for simpler site deploys, a new
Windows Forms-based management application, new command-line management options and increased support for the
.NET Framework
The .NET Framework (pronounced as "''dot net"'') is a proprietary software framework developed by Microsoft that runs primarily on Microsoft Windows. It was the predominant implementation of the Common Language Infrastructure (CLI) until bein ...
. IIS 7.0 on Vista does not limit the number of allowed connections as IIS on XP did, but limits concurrent requests to 10 (Windows Vista Ultimate, Business, and Enterprise Editions) or 3 (Vista Home Premium). Additional requests are queued, which hampers performance, but they are not rejected as with XP.
* IIS 7.5 was included in
Windows 7 (but it must be turned on in the side panel of Programs and Features) and
Windows Server 2008 R2. IIS 7.5 improved WebDAV and FTP modules as well as command-line administration in
PowerShell. It also introduced
TLS
TLS may refer to:
Computing
* Transport Layer Security, a cryptographic protocol for secure computer network communication
* Thread level speculation, an optimisation on multiprocessor CPUs
* Thread-local storage, a mechanism for allocating vari ...
1.1 and TLS 1.2 support and the Best Practices Analyzer tool and process isolation for application pools.
* IIS 8.0 is only available in
Windows Server 2012 and
Windows 8. IIS 8.0 includes
SNI (binding SSL to hostnames rather than IP addresses), Application Initialization, centralized SSL certificate support, and multicore scaling on
NUMA hardware, among other new features.
* IIS 8.5 is included in
Windows Server 2012 R2 and
Windows 8.1
Windows 8.1 is a release of the Windows NT operating system developed by Microsoft. It was released to manufacturing on August 27, 2013, and broadly released for retail sale on October 17, 2013, about a year after the retail release of its pre ...
. This version includes Idle worker-Process page-out, Dynamic Site Activation, Enhanced Logging, ETW logging, and Automatic Certificate Rebind.
* IIS 10.0 version 1607 a.k.a. version 10.0.14393 is included in
Windows Server 2016 released 2016-09-26 and
Windows 10 Anniversary Update
Windows 10 Anniversary Update (also known as version 1607 and codenamed "Redstone 1") is the second major update to Windows 10 and the first in a series of updates under the Redstone codenames. It carries the build number 10.0.14393. This update, ...
released 2016-08-02. This version includes support for
HTTP/2, running IIS in Windows containers on Nano Server, a new Rest management API and corresponding web-based management GUI, and Wildcard Host Headers.
* IIS 10.0 version 1709 is included in
Windows Server, version 1709 (Semi-Annual Channel) and
Windows 10 Fall Creators Update
Windows 10 is a major release of Microsoft's Windows NT operating system. It is the direct successor to Windows 8.1, which was released nearly two years earlier. It was released to manufacturing on July 15, 2015, and later to retail on J ...
both released 2017-10-17. This version adds support for
HSTS, container enhancements, new site binding
PowerShell cmdlets, and 4 new server variables prefixed with "CRYPT_".
* IIS 10.0 version 1809 a.k.a. version 10.0.17763 is included in
Windows Server 2019 and
Windows 10 October Update released 2018-10-02. This version added flags for control of
HTTP/2 and
OCSP Stapling per site, a compression API and implementing module supporting both
gzip and
brotli schemes, and a UI for configuring
HSTS.
All versions of IIS prior to 7.0 running on client operating systems supported only 10 simultaneous connections and a single website.
Microsoft was criticized by vendors of other web server software, including
O'Reilly & Associates and
Netscape
Netscape Communications Corporation (originally Mosaic Communications Corporation) was an American independent computer services company with headquarters in Mountain View, California and then Dulles, Virginia. Its Netscape web browser was onc ...
, for its licensing of early versions of Windows NT; the "Workstation" edition of the OS permitted only ten simultaneous TCP/IP connections, whereas the more expensive "Server" edition, which otherwise had few additional features, permitted unlimited connections but bundled IIS. It was implied that this was intended to discourage consumers from running alternative web server packages on the cheaper edition. Netscape wrote an
open letter to the Antitrust Division of the
U.S. Department of Justice regarding this distinction in product licensing, which it asserted had no technical merit. O'Reilly showed that the user could remove the enforced limits meant to cripple NT 4.0 Workstation as a web server with two registry key changes and other trivial configuration file tweaking.
Features
IIS 6.0 and higher support the following
authentication mechanisms:
* Anonymous authentication
*
Basic access authentication
*
Digest access authentication
*
Integrated Windows Authentication
* UNC authentication
*
.NET Passport Authentication
A Microsoft account or MSA (previously known as Microsoft Passport, .NET Passport, and Windows Live ID) is a single sign-on Microsoft user account for Microsoft customers to log in to Microsoft services (like Outlook.com), devices running on one ...
(Removed in Windows Server 2008 and IIS 7.0)
* Certificate authentication
IIS 7.0 has a modular architecture. Modules, also called extensions, can be added or removed individually so that only modules required for specific functionality have to be installed. IIS 7 includes native modules as part of the full installation. These modules are individual features that the server uses to process requests.
IIS 7.5 includes the following additional or enhanced security features:
* Client certificate mapping
* IP security
* Request filtering
* URL authorization
Authentication changed slightly between IIS 6.0 and IIS 7, most notably in that the anonymous user which was named "IUSR_" is a built-in account in Vista and future operating systems and named "IUSR". Notably, in IIS 7, each authentication mechanism is isolated into its own module and can be installed or uninstalled.
IIS 8.0 offers new features targeted at performance and easier administration. The new features are:
* Application Initialization: a feature that allows an administrator to configure certain applications to start automatically with server startup. This reduces the wait time experienced by users who access the site for the first time after a server reboot.
* Splash page during application initialization: the administrator can configure a splash page to be displayed to the site visitor during an application initialization.
*
ASP.NET 4.5 support: With IIS 8.0, ASP.NET 4.5 is included by default, and IIS also offers several configuration options for running it side by side with ASP.NET 3.5.
* Centralized SSL certificate support: a feature that makes managing certificates easier by allowing the administrator to store and access the certificates on a file share.
* Multicore scaling on
NUMA hardware: IIS 8.0 provides several configuration options that optimize performance on systems that run NUMA, such as running several worker processes under one application pool, using soft or hard affinity and more.
* WebSocket Protocol Support
* Server Name Indication (SNI): SNI is an extension to Transport Layer Security, which allows the binding of multiple websites with different hostnames to one IP address (similar to how Host Headers are used for non-SSL sites).
* Dynamic IP Address Restrictions: a feature that enables an administrator to dynamically block IPs or IP ranges that hit the server with a large number of requests
* CPU Throttling: a set of controls that allow the server administrator to control CPU usage by each application pool in order to optimize performance in a multi-tenant environment
IIS 8.5 has several improvements related to performance in large-scale scenarios, such as those used by commercial hosting providers and Microsoft's own cloud offerings. It also has several added features related to logging and troubleshooting. The new features are:
* Idle worker-Process page-out: a function to suspend idle sites to reduce the memory footprint of idle sites
* Dynamic Site Activation: a feature that registers listening queues only to sites that have received requests
* Enhanced Logging: a feature to allow the collection of Server variables, request headers and response headers in the IIS logs
* ETW logging: an ETW provider which allows collecting real-time logs using various Event-tracing tools
* Automatic Certificate Rebind: a feature that detects when a site certificate has been renewed and automatically rebinds the site to it
Express
IIS Express, a lightweight (4.5–6.6 MB) version of IIS, is available as a standalone freeware server and may be installed on Windows XP with Service Pack 3 and subsequent versions of Microsoft Windows. IIS 7.5 Express supports only the HTTP and HTTPS protocols. It is portable, stores its configuration on a per-user basis, does not require administrative privileges and attempts to avoid conflicting with existing web servers on the same machine. IIS Express can be downloaded separately or as a part of
WebMatrix
Microsoft WebMatrix is a discontinued cloud-connected website builder and HTML editor for Windows, geared towards web development. WebMatrix enables developers to build websites using built-in templates or popular open-source applications, with f ...
or Visual Studio 2012 and later.
(In Visual Studio 2010 and earlier, web developers developing ASP.NET apps used ASP.NET Development Server, codenamed "Cassini".) By default, IIS Express only serves local traffic.
Extensions
IIS releases new feature modules between major version release to add new functionality. The following extensions are available for IIS 7.5:
* FTP Publishing Service: Lets Web content creators publish content securely to IIS 7 Web servers with SSL-based authentication and data transfer.
* Administration Pack: Adds administration UI support for management features in IIS 7, including ASP.NET authorization, custom errors, FastCGI configuration, and request filtering.
*
Application Request Routing
Application Request Routing (ARR) is an extension to Internet Information Server (IIS), which enables an IIS server to function as a load balancer. With ARR, an IIS server can be configured to route incoming requests to one of multiple web servers ...
: Provides a proxy-based routing module that forwards HTTP requests to content servers based on HTTP headers, server variables, and load balance algorithms.
* Database Manager: Allows easy management of local and remote databases from within IIS Manager.
* Media Services: Integrates a media delivery platform with IIS to manage and administer the delivery of rich media and other Web content.
* URL Rewrite Module: Provides a rule-based rewriting mechanism for changing request URLs before they are processed by the Web server.
* WebDAV: Lets Web authors publish content securely to IIS 7 Web servers, and lets Web administrators and hosters manage
WebDAV settings using IIS 7 management and configuration tools.
* Web Deployment Tool: Synchronizes IIS 6.0 and IIS 7 servers, migrates an IIS 6.0 server to IIS 7, and deploys Web applications to an IIS 7 server.
Usage
According to
Netcraft, in February 2014, IIS had a "market share of all sites" of 32.80%, making it the second most popular web server in the world, behind
Apache HTTP Server
The Apache HTTP Server ( ) is a free and open-source cross-platform web server software, released under the terms of Apache License 2.0. Apache is developed and maintained by an open community of developers under the auspices of the Apache So ...
at 38.22%. Netcraft showed a rising trend in market share for IIS, since 2012. On 14 February 2014, however, the W3Techs shows different results. According to W3Techs, IIS is the third most used web server behind Apache HTTP Server (1st place) and
Nginx. Furthermore, it shows a consistently falling trend for IIS use since February 2013.
Netcraft data in February 2017 indicates IIS had a "market share of the top million busiest sites" of 10.19%, making it the third most popular web server in the world, behind Apache at 41.41% and nginx at 28.34%.
Security
IIS 4 and IIS 5 were affected by the CA-2001-13
security vulnerability which led to the infamous
Code Red attack;
however, both versions 6.0 and 7.0 have no reported issues with this specific vulnerability.
In IIS 6.0 Microsoft opted to change the behaviour of pre-installed
ISAPI handlers, many of which were culprits in the vulnerabilities of 4.0 and 5.0, thus reducing the
attack surface of IIS.
In addition, IIS 6.0 added a feature called "Web Service Extensions" that prevents IIS from launching any program without explicit permission by an administrator.
By default IIS 5.1 and earlier run websites in a single process running the context of the System account, a Windows account with administrative rights. Under 6.0 all request handling processes run in the context of the Network Service account, which has significantly fewer privileges, so should there be a vulnerability in a feature or custom code it won't necessarily compromise the entire system given the
sandboxed
In computer security, a sandbox is a security mechanism for separating running programs, usually in an effort to mitigate system failures and/or software Vulnerability (computing), vulnerabilities from spreading. The isolation metaphor is taken ...
environment these worker processes run in. IIS 6.0 also contained a new kernel HTTP stack (
http.sys
) with a stricter HTTP request parser and response cache for both static and dynamic content.
According to
Secunia, , IIS 7 had a total of six resolved vulnerabilities while
IIS 6 had a total of eleven vulnerabilities, out of which one was still unpatched. The unpatched security advisory has a severity rating of 2 out of 5.
In June 2007, a Google study of 80 million domains concluded that while the IIS market share was 23% at the time, IIS servers hosted 49% of the world's malware, the same as
Apache servers whose market share was 66%. The study also observed the geographical location of these dirty servers and suggested that the cause of this could be the use of unlicensed copies of Windows that could not obtain security updates from Microsoft. In a blog post on 28 April 2009, Microsoft noted that it supplies security updates to everyone without genuine verification.
The
2013 mass surveillance disclosures
Thirteen or 13 may refer to:
* 13 (number), the natural number following 12 and preceding 14
* One of the years 13 BC, AD 13, 1913, 2013
Music
* 13AD (band), an Indian classic and hard rock band
Albums
* ''13'' (Black Sabbath album), 2013
* ...
made it more widely known that IIS is particularly bad in supporting
perfect forward secrecy (PFS), especially when used in conjunction with Internet Explorer. Possessing one of the long term asymmetric secret keys used to establish a
HTTPS session should not make it easier to derive the short term session key to then decrypt the conversation, even at a later time.
Diffie–Hellman key exchange
Diffie–Hellman key exchangeSynonyms of Diffie–Hellman key exchange include:
* Diffie–Hellman–Merkle key exchange
* Diffie–Hellman key agreement
* Diffie–Hellman key establishment
* Diffie–Hellman key negotiation
* Exponential key exc ...
(DHE) and
elliptic curve Diffie–Hellman key exchange (ECDHE) are in 2013 the only ones known to have that property. Only 30% of Firefox, Opera, and Chromium Browser sessions use it, and nearly 0% of Apple's Safari and Microsoft Internet Explorer sessions.
[SSL: Intercepted today, decrypted tomorrow]
Netcraft, 25 June 2013.
See also
*
IIS Metabase
Prior to IIS 7, Microsoft's Internet Information Services stores its information in an internal database called the MetaBase. The metabase is an inheritable, hierarchical database that allows for configuration of HTTP/ HTTPS, FTP, SMTP, and NNT ...
*
Logparser
logparser is a flexible command line utility that was initially written by Gabriele Giuseppini, a Microsoft employee, to automate tests for IIS logging. It was intended for use with the Windows operating system, and was included with the IIS 6. ...
*
Microsoft Personal Web Server
*
Windows Activation Services :
Windows Process Activation Service (also known as WAS) is the process activation mechanism introduced within Internet Information Services v7.0.
Windows Activation Service builds on the existing Internet Information Services v6.0 but is more po ...
*
Comparison of web servers
*
List of mail servers
References
External links
*
{{Authority control
FTP server software
Message transfer agents
Microsoft server technology
Web server software