Restrições de Endereço IP Dinâmico do IIS 8.0

por Robert McMurray

Compatibilidade

Versão Observações
IIS 8.0 Restrições de endereço IP dinâmico internas para o IIS 8.0.
IIS 7.5 As Restrições de Endereço IP Dinâmico estavam disponíveis como um módulo fora de banda para o IIS 7.5.
IIS 7.0 As Restrições de Endereço IP Dinâmico estavam disponíveis como um módulo fora de banda para o IIS 7.0.

Problema

O IIS 7 e versões anteriores tinham funcionalidade interna que permitia aos administradores permitir ou negar acesso a endereços IP individuais ou intervalos de endereços IP. Quando um endereço IP era bloqueado, todos os clientes HTTP desse endereço IP recebiam uma resposta de erro HTTP “403.6 Proibido” do servidor. Essa funcionalidade permite que os administradores personalizem o acesso para o servidor com base na atividade que veem nos logs do servidor ou na atividade do site. No entanto, esse é um processo manual. Embora a funcionalidade possa ser criada por script para descobrir usuários mal-intencionados examinando os arquivos de log do IIS usando uma ferramenta como o utilitário LogParser da Microsoft, isso ainda requer intervenção manual.

Solução

No IIS 8.0, a Microsoft expandiu a funcionalidade interna para incluir vários novos recursos:

  • Filtragem dinâmica de endereços IP, que permite aos administradores configurar seu servidor para bloquear o acesso a endereços IP que excedam o número especificado de solicitações.
  • Os recursos de filtragem de endereço IP agora permitem que os administradores especifiquem o comportamento quando o IIS bloqueia um endereço IP, para que as solicitações de clientes mal-intencionados possam ser abortadas pelo servidor em vez de retornar respostas HTTP 403.6 ao cliente.
  • A filtragem de IP agora apresenta um modo de proxy, que permite que os endereços IP sejam bloqueados não apenas pelo IP do cliente que é visto pelo IIS, mas também pelos valores recebidos no cabeçalho HTTP x-forwarded-for

Instruções passo a passo

Pré-requisitos:

  • Computador do Windows Server 2012 com o IIS 8.0 instalado.

    Observação

    O recurso Restrições de IP e Domínio deve ser instalado como parte do IIS.

    Screenshot that shows a selected checkbox for I P and Domain Restrictions.

Soluções alternativas para bugs conhecidos:

No momento, não há bugs conhecidos neste recurso.

Configurando o IIS para negar acesso com base em solicitações HTTP

O IIS 8.0 pode ser configurado para negar acesso a sites com base no número de vezes que um cliente HTTP acessa o servidor dentro de um intervalo de tempo especificado ou com base no número de conexões simultâneas de um cliente HTTP.

Para configurar o IIS para negar acesso com base no número de solicitações HTTP que ele recebe, use as seguintes etapas:

  1. Faça logon como administrador em seu computador Windows Server 2012.
  2. Abra o Gerenciador de IIS (Serviços de Informações da Internet).
  3. Realce o nome do servidor, o site ou o caminho da pasta no painel Conexões e clique duas vezes em Endereço IP e Restrições de Domínio na lista de recursos.
    Screenshot that shows the I I S Manager, with the Default Web Site Home pane open and I P Address and Domain Restrictions selected.
  4. Clique em Editar Configurações de Restrição Dinâmica no painel Ações.
    Screenshot that shows the I P Address and Domain Restrictions pane open. Edit Dynamic Restriction Settings is highlighted in the Actions pane.
  5. Quando a caixa de diálogo Configurações de Restrição Dinâmica de IP for exibida, marque a opção Negar Endereço IP com base no número de solicitações simultâneas se quiser impedir que um cliente HTTP estabeleça muitas conexões simultâneas. E marque a caixa para Negar endereço IP com base no número de solicitações durante um período se quiser impedir que um cliente HTTP estabeleça muitas conexões dentro de um período específico.
    Screenshot that shows the Dynamic I P Restriction Settings dialog box. The first two items have selected checkboxes.
  6. Clique em OK.

Configurando o comportamento do IIS ao negar endereços IP

No IIS 7 e versões anteriores, o IIS retornaria uma resposta de erro HTTP “403.6 Proibido” do servidor quando um endereço IP do cliente foi bloqueado. No IIS 8.0, os administradores podem configurar seu servidor para negar acesso a endereços IP de várias maneiras adicionais.

Para configurar o comportamento que o IIS usará ao negar endereços IP, use as seguintes etapas:

  1. Faça logon como administrador em seu computador Windows Server 2012.

  2. Abra o Gerenciador de IIS (Serviços de Informações da Internet).

  3. Realce o nome do servidor, o site ou o caminho da pasta no painel Conexões e clique duas vezes em Endereço IP e Restrições de Domínio na lista de recursos.
    Screenshot that shows the I I S Manager. I P Address and Domain Restrictions is selected in the Default Web Site Home pane.

  4. Clique em Editar Configurações de Recurso... no painel Ações.
    Screenshot that shows the I P Address and Domain Restrictions pane, with Edit Feature Settings highlighted in the Actions pane.

  5. Quando a caixa de diálogo Editar configurações de restrição de IP e domínio for exibida, clique no menu suspenso Negar tipo de ação e escolha o comportamento que o IIS usa a partir dos seguintes valores:

    • Não autorizado: o IIS retorna uma resposta HTTP 401.

    • Proibido: o IIS retorna uma resposta HTTP 403.

    • Não encontrado: o IIS retorna uma resposta HTTP 404.

    • Anular: o IIS encerra a conexão HTTP.

      Screenshot that shows the Edit I P and Domain Restrictions Settings dialog box. Forbidden is selected from the Deny Action Type list.

  6. Clique em OK.

Configurando o IIS para o modo de proxy

Um dos desafios da filtragem de IP é que muitos clientes acessam o IIS por meio de um ou mais firewalls, balanceamento de carga ou servidores proxy; portanto, o endereço IP sempre pode aparecer como o servidor no caminho de solicitação mais próximo do servidor IIS. No IIS 8.0, os administradores podem configurar seu servidor para examinar o cabeçalho HTTP x-forwarded-for, além do endereço IP do cliente, a fim de determinar quais solicitações bloquear. Esse comportamento é chamado de “Modo de proxy”.

Para configurar o IIS para o modo proxy, use as seguintes etapas:

  1. Faça logon como administrador em seu computador Windows Server 2012.
  2. Abra o Gerenciador de IIS (Serviços de Informações da Internet).
  3. Realce o nome do servidor, o site ou o caminho da pasta no painel Conexões e clique duas vezes em Endereço IP e Restrições de Domínio na lista de recursos.
    Screenshot that shows the Default Web Site Home pane, with I P Address and Domain Restrictions selected.
  4. Clique em Editar Configurações de Recurso... no painel Ações.
    Screenshot that shows the I I S Manager, with Edit Feature Settings highlighted in the Actions pane.
  5. Quando a caixa de diálogo Editar Configurações de Restrição de IP e Domínio for exibida, marque a caixa para Habilitar Modo de Proxy.
    Screenshot that shows the Edit and Domain Restrictions Settings dialog box. Enable Proxy Mode is selected in the checkbox.
  6. Clique em OK.

Resumo

Neste guia, você analisou a configuração do IIS para negar dinamicamente o acesso ao servidor com base no número de solicitações de um endereço IP de cliente, bem como a configuração do comportamento que o IIS usará quando negar acesso a usuários potencialmente mal-intencionados.