Serviços de Informação da Internet - Internet Information Services

Serviços de Informação da Internet
IIS 8.5.9431 management console.png
Captura de tela do console do Gerenciador do IIS dos Serviços de Informações da Internet 8.5
Desenvolvedor (s) Microsoft
lançamento inicial 30 de maio de 1995 ; 26 anos atrás ( 30/05/1995 )
Versão estável
10.0.17763.1 / 2 de outubro de 2018 ; 2 anos atrás ( 02/10/2018 )
Escrito em C ++
Sistema operacional Windows NT
Disponível em Mesmos idiomas do Windows
Modelo servidor web
Licença Parte do Windows NT (mesma licença)
Local na rede Internet www .iis .net

Internet Information Services ( IIS , anteriormente Internet Information Server ) é um software de servidor da Web extensível criado pela Microsoft para uso com a família Windows NT . O IIS oferece suporte a HTTP , HTTP / 2 , HTTPS , FTP , FTPS , SMTP e NNTP . Ele é parte integrante da família Windows NT desde o Windows NT 4.0 , embora possa estar ausente em algumas edições (por exemplo, Windows XP Home edition) e não está ativo por padrão.

História

O primeiro servidor web da Microsoft foi um projeto de pesquisa no European Microsoft Windows NT Academic Centre (EMWAC), parte da Universidade de Edimburgo, na Escócia, e foi distribuído como freeware . No entanto, como o servidor EMWAC não conseguiu lidar com o volume de tráfego que ia para o Microsoft.com , a Microsoft foi forçada a desenvolver seu próprio servidor web, o IIS.

Quase todas as versões do IIS foram lançadas juntamente ou com uma versão do Microsoft Windows:

  • O IIS 1.0 foi inicialmente lançado como um complemento gratuito para o Windows NT 3.51.
  • O IIS 2.0 foi incluído no Windows NT 4.0.
  • IIS 3.0, que foi incluído no Service Pack 2 do Windows NT 4.0, introduziu o ambiente de script dinâmico Active Server Pages .
  • O IIS 4.0 foi lançado como parte do "Option Pack" para o Windows NT 4.0. Ele introduziu o novo aplicativo de administração baseado em MMC e também foi a primeira versão em que você pode executar várias instâncias de servidores web e FTP, diferenciando-os pelo número da porta e / ou nome do host. Também foi a primeira versão a executar pools de aplicativos.
  • IIS 5.0 fornecido com o Windows 2000 e introduziu métodos de autenticação adicionais, suporte para o protocolo WebDAV e aprimoramentos para ASP . O IIS 5.0 também abandonou o suporte para o protocolo Gopher . IIS 5.0 adicionou HTTP.SYS.
  • O IIS 5.1 foi fornecido com o Windows XP Professional e era quase idêntico ao IIS 5.0 no Windows 2000.
  • O IIS 6.0 incluído no Windows Server 2003 e no Windows XP Professional x64 Edition adicionou suporte para IPv6 e incluiu um novo modelo de processo de trabalho que aumentou a segurança e a confiabilidade. HTTP.sys foi introduzido no IIS 6.0 como um ouvinte de protocolo específico de HTTP para solicitações HTTP. Além disso, cada componente (como por exemplo Server Side Includes ou ASP) agora deve ser instalado explicitamente, porque em versões anteriores, os hackers costumavam entrar em sites usando bugs de segurança de componentes que nem estavam em uso pelo site invadido, melhorando a segurança.
  • O IIS 7.0 foi uma reformulação completa e uma reescrita do IIS, e foi fornecido com o Windows Vista e o Windows Server 2008 . O IIS 7.0 incluiu um novo design modular que permitiu uma superfície de ataque reduzida e melhor desempenho. Ele também introduziu um sistema de configuração hierárquica que permite implantações de site mais simples, um novo aplicativo de gerenciamento baseado em Windows Forms , novas opções de gerenciamento de linha de comando e maior suporte para o .NET Framework . O IIS 7.0 no Vista não limita o número de conexões permitidas como o IIS no XP, mas limita as solicitações simultâneas a 10 (Windows Vista Ultimate, Business e Enterprise Editions) ou 3 (Vista Home Premium). Pedidos adicionais são enfileirados, o que prejudica o desempenho, mas não são rejeitados como no XP.
  • O IIS 7.5 foi incluído no Windows 7 (mas deve ser ativado no painel lateral de Programas e Recursos) e no Windows Server 2008 R2 . O IIS 7.5 aprimorou os módulos WebDAV e FTP, bem como a administração de linha de comando no PowerShell . Ele também introduziu o suporte TLS 1.1 e TLS 1.2 e a ferramenta Best Practices Analyzer e isolamento de processos para pools de aplicativos.
  • O IIS 8.0 está disponível apenas no Windows Server 2012 e Windows 8 . O IIS 8.0 inclui SNI (vinculando SSL a nomes de host em vez de endereços IP), inicialização de aplicativo, suporte a certificado SSL centralizado e dimensionamento de vários núcleos em hardware NUMA , entre outros novos recursos.
  • O IIS 8.5 está incluído no Windows Server 2012 R2 e no Windows 8.1 . Esta versão inclui saída de página de processo de trabalho ocioso, ativação dinâmica de site, registro aprimorado, registro ETW e religação automática de certificado.
  • O IIS 10.0 versão 1607, também conhecido como versão 10.0.14393, está incluído no Windows Server 2016 lançado em 2016-09-26 e no Windows 10 Anniversary Update lançado em 2016-08-02. Esta versão inclui suporte para HTTP / 2 , executando IIS em contêineres do Windows no Nano Server, uma nova API de gerenciamento Rest e GUI de gerenciamento baseado na web correspondente e cabeçalhos de host curinga.
  • O IIS 10.0 versão 1709 está incluído no Windows Server, versão 1709 (Canal Semestral) e no Windows 10 Fall Creators Update, ambos lançados em 2017-10-17. Esta versão adiciona suporte para HSTS , aprimoramentos de contêiner, novos cmdlets PowerShell de associação de site e 4 novas variáveis ​​de servidor prefixadas com "CRYPT_".
  • O IIS 10.0 versão 1809, também conhecido como versão 10.0.17763, está incluído no Windows Server 2019 e a atualização do Windows 10 de outubro foi lançada em 02/10/2018. Esta versão adicionou sinalizadores para controle de HTTP / 2 e grampeamento OCSP por site, uma API de compactação e módulo de implementação com suporte para esquemas gzip e brotli e uma interface de usuário para configuração de HSTS .

Todas as versões do IIS anteriores a 7.0 em execução em sistemas operacionais clientes suportavam apenas 10 conexões simultâneas e um único site.

A Microsoft foi criticada por fornecedores de outro software de servidor web, incluindo O'Reilly & Associates e Netscape , por licenciar as primeiras versões do Windows NT; a edição "Workstation" do sistema operacional permitia apenas dez conexões TCP / IP simultâneas, enquanto a edição mais cara "Server", que de outra forma tinha poucos recursos adicionais, permitia conexões ilimitadas, mas agrupava o IIS. Ficou implícito que a intenção era desencorajar os consumidores de executar pacotes alternativos de servidores da Web na edição mais barata. A Netscape escreveu uma carta aberta à Divisão Antitruste do Departamento de Justiça dos Estados Unidos com relação a essa distinção no licenciamento de produtos, que afirmou não ter mérito técnico. O'Reilly mostrou que o usuário pode remover os limites impostos destinados a incapacitar o NT 4.0 Workstation como um servidor web com duas mudanças de chave de registro e outros ajustes triviais de arquivo de configuração.

Recursos

O IIS 6.0 e superior oferecem suporte aos seguintes mecanismos de autenticação :

O IIS 7.0 tem uma arquitetura modular. Módulos, também chamados de extensões, podem ser adicionados ou removidos individualmente para que apenas os módulos necessários para uma funcionalidade específica tenham que ser instalados. O IIS 7 inclui módulos nativos como parte da instalação completa. Esses módulos são recursos individuais que o servidor usa para processar solicitações.

O IIS 7.5 inclui os seguintes recursos de segurança adicionais ou aprimorados:

  • Mapeamento de certificado de cliente
  • Segurança IP
  • Solicitar filtragem
  • Autorização de URL

A autenticação mudou ligeiramente entre o IIS 6.0 e o IIS 7, principalmente porque o usuário anônimo chamado "IUSR_ {nome da máquina}" é uma conta integrada no Vista e em sistemas operacionais futuros e é chamada de "IUSR". Notavelmente, no IIS 7, cada mecanismo de autenticação é isolado em seu próprio módulo e pode ser instalado ou desinstalado.

O IIS 8.0 oferece novos recursos voltados para desempenho e administração mais fácil. Os novos recursos são:

  • Inicialização do aplicativo: um recurso que permite a um administrador configurar certos aplicativos para iniciar automaticamente com a inicialização do servidor. Isso reduz o tempo de espera experimentado pelos usuários que acessam o site pela primeira vez após a reinicialização do servidor.
  • Página inicial durante a inicialização do aplicativo: o administrador pode configurar uma página inicial a ser exibida ao visitante do site durante a inicialização do aplicativo.
  • Suporte ao ASP.NET 4.5: com o IIS 8.0, o ASP.NET 4.5 é incluído por padrão e o IIS também oferece várias opções de configuração para executá-lo lado a lado com o ASP.NET 3.5.
  • Suporte a certificado SSL centralizado: um recurso que torna o gerenciamento de certificados mais fácil, permitindo que o administrador armazene e acesse os certificados em um compartilhamento de arquivo.
  • Escala multicore em hardware NUMA : o IIS 8.0 oferece várias opções de configuração que otimizam o desempenho em sistemas que executam NUMA, como a execução de vários processos de trabalho em um pool de aplicativos, usando afinidade soft ou hard e muito mais.
  • Suporte ao protocolo WebSocket
  • Server Name Indication (SNI): SNI é uma extensão do Transport Layer Security, que permite vincular vários sites com diferentes nomes de host a um endereço IP (semelhante a como os cabeçalhos de host são usados ​​para sites não SSL).
  • Restrições de endereço IP dinâmico: um recurso que permite a um administrador bloquear dinamicamente IPs ou intervalos de IP que atingem o servidor com um grande número de solicitações
  • Otimização da CPU: um conjunto de controles que permite ao administrador do servidor controlar o uso da CPU por cada pool de aplicativos para otimizar o desempenho em um ambiente multilocatário

O IIS 8.5 tem várias melhorias relacionadas ao desempenho em cenários de grande escala, como aqueles usados ​​por provedores de hospedagem comercial e as próprias ofertas de nuvem da Microsoft. Ele também possui vários recursos adicionais relacionados ao registro e solução de problemas. Os novos recursos são:

  • Trabalho ocioso - Saída de página do processo: uma função para suspender o site ocioso para reduzir a pegada de memória de sites ociosos
  • Ativação dinâmica de sites: um recurso que registra filas de escuta apenas para sites que receberam solicitações
  • Registro aprimorado: um recurso que permite a coleta de variáveis ​​de servidor, cabeçalhos de solicitação e cabeçalhos de resposta nos logs do IIS
  • Log de ETW: um provedor de ETW que permite coletar logs em tempo real usando várias ferramentas de rastreamento de eventos
  • Religação automática de certificado: um recurso que detecta quando um certificado de site foi renovado e automaticamente vincula novamente o site a ele

Expressar

O IIS Express , uma versão leve (4,5–6,6 MB) do IIS, está disponível como um servidor freeware autônomo e pode ser instalado no Windows XP com Service Pack 3 e versões subseqüentes do Microsoft Windows. O IIS 7.5 Express oferece suporte apenas aos protocolos HTTP e HTTPS. É portátil, armazena sua configuração por usuário, não requer privilégios administrativos e tenta evitar conflito com servidores web existentes na mesma máquina. O IIS Express pode ser baixado separadamente ou como parte do WebMatrix ou Visual Studio 2012 e posterior. (No Visual Studio 2010 e anteriores, os desenvolvedores da Web que desenvolvem aplicativos ASP.NET usavam o Servidor de Desenvolvimento ASP.NET, codinome "Cassini".) Por padrão, o IIS Express atende apenas o tráfego local.

Extensões

O IIS lança novos módulos de recursos entre os lançamentos de versões principais para adicionar novas funcionalidades. As seguintes extensões estão disponíveis para IIS 7.5:

  • Serviço de publicação FTP: permite que os criadores de conteúdo da Web publiquem conteúdo com segurança em servidores Web IIS 7 com autenticação baseada em SSL e transferência de dados.
  • Pacote de administração: adiciona suporte de IU de administração para recursos de gerenciamento no IIS 7, incluindo autorização ASP.NET, erros personalizados, configuração FastCGI e filtragem de solicitações.
  • Roteamento de solicitação de aplicativo : fornece um módulo de roteamento baseado em proxy que encaminha solicitações HTTP para servidores de conteúdo com base em cabeçalhos HTTP, variáveis ​​de servidor e algoritmos de equilíbrio de carga.
  • Gerenciador de banco de dados: permite o gerenciamento fácil de bancos de dados locais e remotos a partir do Gerenciador do IIS.
  • Serviços de mídia: integra uma plataforma de entrega de mídia com o IIS para gerenciar e administrar a entrega de mídia avançada e outros conteúdos da web.
  • Módulo de regravação de URL: fornece um mecanismo de regravação baseado em regras para alterar URLs de solicitação antes de serem processados ​​pelo servidor web.
  • WebDAV: permite que os autores da Web publiquem conteúdo com segurança em servidores da Web do IIS 7 e permite que os administradores e hosters da Web gerenciem as configurações do WebDAV usando as ferramentas de gerenciamento e configuração do IIS 7.
  • Ferramenta de implantação da Web: sincroniza os servidores IIS 6.0 e IIS 7, migra um servidor IIS 6.0 para o IIS 7 e implanta aplicativos da Web em um servidor IIS 7.

Uso

De acordo com a Netcraft , em fevereiro de 2014, o IIS tinha uma "participação de mercado de todos os sites" de 32,80%, tornando-se o segundo servidor web mais popular do mundo, atrás do Apache HTTP Server com 38,22%. A Netcraft mostrou uma tendência de aumento na participação de mercado para IIS, desde 2012. Em 14 de fevereiro de 2014, porém, a W3Techs mostra resultados diferentes. De acordo com a W3Techs, o IIS é o terceiro servidor web mais usado, atrás apenas do Apache HTTP Server (1º lugar) e do Nginx . Além disso, ele mostra uma tendência de queda consistente para o uso do IIS desde fevereiro de 2013.

Dados da Netcraft em fevereiro de 2017 indicam que o IIS tinha uma "participação de mercado dos milhões de sites mais ocupados" de 10,19%, tornando-o o terceiro servidor web mais popular do mundo, atrás do Apache com 41,41% e do nginx com 28,34%.

Segurança

IIS 4 e IIS 5 foram afetados pela vulnerabilidade de segurança CA-2001-13 que levou ao infame ataque Code Red ; no entanto, as versões 6.0 e 7.0 não relataram problemas com essa vulnerabilidade específica. No IIS 6.0, a Microsoft optou por alterar o comportamento dos manipuladores ISAPI pré-instalados , muitos dos quais eram culpados nas vulnerabilidades do 4.0 e 5.0, reduzindo assim a superfície de ataque do IIS. Além disso, o IIS 6.0 adicionou um recurso chamado "Web Service Extensions" que impede o IIS de iniciar qualquer programa sem permissão explícita de um administrador.

Por padrão, o IIS 5.1 e anteriores executam sites em um único processo que executa o contexto da conta do sistema, uma conta do Windows com direitos administrativos. No 6.0, todos os processos de tratamento de solicitações são executados no contexto da conta do serviço de rede, que tem significativamente menos privilégios, de modo que, se houver uma vulnerabilidade em um recurso ou código personalizado, isso não comprometerá necessariamente todo o sistema, dado o ambiente em sandbox. os processos de trabalho são executados. O IIS 6.0 também continha uma nova pilha HTTP do kernel ( http.sys) com um analisador de solicitações HTTP mais restrito e cache de resposta para conteúdo estático e dinâmico.

De acordo com a Secunia , em junho de 2011, o IIS 7 tinha um total de seis vulnerabilidades resolvidas, enquanto o IIS 6 tinha um total de onze vulnerabilidades, das quais uma ainda não estava corrigida. O comunicado de segurança sem patch tem uma classificação de gravidade de 2 de 5.

Em junho de 2007, um estudo do Google com 80 milhões de domínios concluiu que, embora a participação de mercado do IIS fosse de 23% na época, os servidores IIS hospedavam 49% do malware mundial, o mesmo que os servidores Apache, cuja participação no mercado era de 66%. O estudo também observou a localização geográfica desses servidores sujos e sugeriu que a causa disso poderia ser o uso de cópias não licenciadas do Windows que não conseguiam obter atualizações de segurança da Microsoft. Em uma postagem de blog em 28 de abril de 2009, a Microsoft observou que fornece atualizações de segurança para todos sem verificação genuína.

As divulgações de vigilância em massa de 2013 tornaram mais amplamente conhecido que o IIS é particularmente ruim no suporte a sigilo perfeito para encaminhamento (PFS), especialmente quando usado em conjunto com o Internet Explorer. Possuir uma das chaves secretas assimétricas de longo prazo usadas para estabelecer uma sessão HTTPS não deve facilitar a derivação da chave de sessão de curto prazo para descriptografar a conversa, mesmo em um momento posterior. A troca de chave Diffie – Hellman (DHE) e a troca de chave Diffie – Hellman (ECDHE) de curva elíptica são, em 2013, as únicas conhecidas com essa propriedade. Apenas 30% das sessões do Firefox, Opera e Chromium Browser o usam, e quase 0% das sessões do Safari da Apple e do Microsoft Internet Explorer.

Veja também

Referências

links externos