IIS 7.5 A autenticação do Windows não funciona externamente

2

Estou tentando me conectar a um site asp.net que criamos. Usa a autenticação do Windows e nega o acesso a usuários não autenticados

web.config:

<authentication mode="Windows" />
<authorization>
    <deny users="?" />
</authorization>

O site está na nossa DMZ. O servidor está conectado ao domínio. Está funcionando sem problemas quando tento me conectar ao site pela rede interna. Eu recebo uma caixa de diálogo Autenticação necessária , preenche minhas credenciais e posso entrar no site.

Quando me conecto de uma rede externa, isso não funciona. O navegador está se conectando ao site, mas a caixa pop-up nunca é mostrada. Eventualmente eu recebo um A conexão foi redefinida

Aparentemente, o firewall vê minha solicitação como uma vulnerabilidade e a bloqueia. Esta mensagem pode ser encontrada no pacote de rede da firewal:

401 - Unauthorized: Access is denied due to invalid credentials.

Esse é o mesmo erro que recebo quando me conecto ao site a partir de um local interno e clico em cancelar ou preencher as credenciais erradas.

Eu já tentei isso sem sorte:

  • Mover o NTLM para o topo dos meus provedores
  • Use a autenticação do Kerberos
  • Verifique os módulos no IIS: WindowsAuthentication e WindowsAuthenticationModule estão lá
  • Adicionando DisableStrictNameChecking e DisableLoopbackCheck ao registro
  • Permitir autenticação anônima (nível do IIS)
  • Permitir autenticação básica (nível do IIS)
  • Permitir todos os usuários com autenticação do windows (no web.config): Basicamente, excluir o nó de autorização. Isso usa anônimo e funciona. O site pode ser acessado, mas o usuário não é autenticado e não vê seus relatórios pessoais (portanto inutilizável)
  • Alterar o usuário do pool de aplicativos
  • Conceder direitos de acesso na pasta arp para IUSR

Por que existem dois 401 estatutos quando vou ao site? Isso faz com que o firewall bloqueie o tráfego e, portanto, nunca mostre o pop-up Autenticação necessária.

    
por Rubanov 20.06.2014 / 10:08

2 respostas

3

Como usamos o NTLM, várias viagens de ida e volta são feitas com 401 pacotes. Nosso firewall viu isso como um ataque de força bruta e o bloqueou. No final, consertamos isso configurando o firewall e permitindo vários 401 pacotes antes que o firewall os veja como uma vulnerabilidade. A forma como o nosso sistema está configurado, não podemos usar o Kerberos. Que envia apenas um pacote 401 e não seria bloqueado pelo nosso firewall (em sua configuração original)

Créditos para @TristanK para a resposta.

    
por 24.06.2014 / 10:17
-1

O mesmo problema aqui, mas acho que tive sorte e encontrei uma solução. Parecia um problema de firewall aqui também, mas ao desativá-lo não houve alteração. Acesso de localhost funcionou bem, mas não da mesma rede ou da internet. Eu tentei mudar todos os valores sem sorte, mas finalmente eu tentei editar as configurações de recurso de mensagens de erro (meu servidor tem mensagens de erro) e parece resolver o problema. Eu tinha erros detalhados para local e personalizado para remoto . Depois de mudar para erro detalhado , o pop-up de login funciona muito bem !!! :)

    
por 07.05.2015 / 01:34