Compartilhar via


Solucionar problemas de erros de autenticação quando você usa o RDP para se conectar à VM do Azure

Aplica-se a: ✔️ Windows VMs

Este artigo pode ajudá-lo a solucionar problemas de erros de autenticação que ocorrem quando você usa a conexão de protocolo RDP para se conectar a uma VM (Máquina Virtual) do Azure.

Observação

Este artigo foi útil? Sua opinião é importante para nós. Por favor, use o botão Feedback nesta página para nos informar como este artigo funcionou para você ou como podemos melhorá-lo.

Sintomas

Você obtém uma captura de tela de uma VM do Azure que mostra a tela de boas-vindas e indica que o sistema operacional está em execução. No entanto, ao tentar se conectar à VM usando a Conexão de Área de Trabalho Remota, você recebe uma das seguintes mensagens de erro:

  • Ocorreu um erro de autenticação. A Autoridade de Segurança Local não pode ser contatada.
  • O computador remoto ao qual você está tentando se conectar requer NLA (Autenticação em Nível de Rede), mas o controlador de domínio do Windows não pode ser contatado para executar NLA. Se você for um administrador no computador remoto, poderá desabilitar NLA usando as opções na guia Remoto da caixa de diálogo Propriedades do Sistema.
  • Este computador não pode se conectar ao computador remoto. Tente se conectar novamente e, se o problema persistir, entre em contato com o proprietário do computador remoto ou o administrador da rede.

Causa

Há vários motivos pelos quais o NLA pode bloquear o acesso RDP a uma VM:

  • A VM não consegue se comunicar com o DC (controlador de domínio). Esse problema pode impedir que uma sessão de RDP acesse uma VM usando as credenciais de domínio. No entanto, você ainda poderá fazer logon usando as credenciais de Administrador Local. Esse problema pode ocorrer nas seguintes situações:
    • O canal de segurança do Active Directory entre essa VM e o DC é interrompido.
    • A VM tem uma cópia antiga da senha da conta e o DC tem uma cópia mais recente.
    • O DC ao qual essa VM está se conectando não está íntegro.
  • O nível de criptografia da VM é maior do que o usado pelo computador cliente.
  • Os protocolos TLS 1.0, 1.1 ou 1.2 (servidor) estão desabilitados na VM. A VM foi definida para desabilitar logon usando as credenciais de domínio e a LSA (Autoridade de Segurança Local) está configurada incorretamente.
  • A VM foi sido configurada para aceitar apenas conexões de algoritmo em conformidade com FIPS (Federal Information Processing Standard). Geralmente, isso é feito por meio da política do Active Directory. Essa é uma configuração rara, mas o padrão FIPS pode ser imposto apenas a conexões de Área de Trabalho Remota.

Antes de solucionar problemas

Criar um instantâneo de backup

Para criar um instantâneo de backup, siga as etapas em Criar instantâneo de um disco.

Conectar-se à VM remotamente

Para se conectar à VM remotamente, use um dos métodos em Como usar ferramentas remotas para solucionar problemas de VM do Azure.

Serviço de cliente de política de grupo

Quando se trata de uma VM ingressada no domínio, primeiro interrompa o serviço de cliente de Política de Grupo para impedir que qualquer Política do Active Directory substitua as alterações. Para fazer isso, execute o seguinte comando:

REM Disable the member server to retrieve the latest GPO from the domain upon start
REG add "HKLM\SYSTEM\CurrentControlSet\Services\gpsvc" /v Start /t REG_DWORD /d 4 /f

Depois que o problema for corrigido, restaure a capacidade dessa VM de entrar em contato com o domínio para recuperar o GPO mais recente do domínio. Para fazer isso, execute os seguintes comandos:

sc config gpsvc start= auto
sc start gpsvc

gpupdate /force

Se a alteração for revertida, isso que uma política do Active Directory está causando o problema.

Solução alternativa

Como solução alternativa para se conectar à VM e resolver a causa, você pode desabilitar temporariamente o NLA. Para desabilitar o NLA, use os comandos abaixo ou use o DisableNLA script em Executar comando.

REM Disable the Network Level Authentication
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v UserAuthentication /t REG_DWORD /d 0

Em seguida, reinicie a VM e prossiga para a seção de solução de problemas.

Depois de resolver o problema, habilite novamente o NLA, executando os seguintes comandos e reiniciando a VM:

REG add "HKLM\SYSTEM\CurrentControlSet\Control\Lsa" /v disabledomaincreds /t REG_DWORD /d 0 /f
REG add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v UserAuthentication /t REG_DWORD /d 1 /f

Solução de problemas

  1. Solucionar problemas de VMs ingressadas no domínio.
  2. Solucione problemas de VMs autônomas.

Solucionar problemas de VMs ingressadas no domínio

Para solucionar esse problema:

  1. Verifique se a VM pode se conectar a um controlador de domínio.
  2. Verifique a integridade do CD.

Observação

Para testar a integridade do controlador de domínio, você pode usar outra VM que esteja na mesma VNET, sub-rede e use o mesmo servidor de logon.

Conecte-se à VM que tem o problema usando o console serial, o CMD remoto ou o PowerShell remoto, de acordo com as etapas na seção Conectar-se à VM remotamente.

  1. Determine o controlador de domínio ao qual a VM está tentando se conectar. Execute o seguinte comando no console:

    set | find /i "LOGONSERVER"
    
  2. Teste a integridade do canal seguro entre a VM e o DC. Para fazer isso, execute o comando em uma instância elevada do Test-ComputerSecureChannel PowerShell. Este comando retorna True ou False indicando se o canal seguro está ativo:

    Test-ComputerSecureChannel -verbose
    

    Se o canal for interrompido, execute o seguinte comando para repará-lo:

    Test-ComputerSecureChannel -repair
    
  3. Verifique se a senha da conta de computador no Active Directory está atualizada na VM e no DC:

    Reset-ComputerMachinePassword -Server "<COMPUTERNAME>" -Credential <DOMAIN CREDENTIAL WITH DOMAIN ADMIN LEVEL>
    

Se a comunicação entre o DC e a VM for boa, mas o DC não estiver íntegro o suficiente para abrir uma sessão do RDP, você poderá tentar reiniciar o controlador de domínio.

Se os comandos anteriores não consertar o problema de comunicação com o domínio, você poderá reingressar essa VM no domínio. Para fazer isso, siga estas etapas:

  1. Crie um script chamado Unjoin.ps1 usando o conteúdo a seguir e implante o script como uma Extensão de Script Personalizado no portal do Azure:

    cmd /c "netdom remove <<MachineName>> /domain:<<DomainName>> /userD:<<DomainAdminhere>> /passwordD:<<PasswordHere>> /reboot:10 /Force"
    

    Esse script remove à força a VM do domínio e reinicia a VM 10 segundos depois. Em seguida, você precisa limpar o objeto Computer no lado do domínio.

  2. Após a limpeza, reingresse essa VM no domínio. Para fazer isso, crie um script chamado JoinDomain.ps1 usando o conteúdo a seguir e, em seguida, implante o script como uma Extensão de Script Personalizado no portal do Azure:

    cmd /c "netdom join <<MachineName>> /domain:<<DomainName>> /userD:<<DomainAdminhere>> /passwordD:<<PasswordHere>> /reboot:10"
    

Observação

Isso adiciona a VM ao domínio usando as credenciais especificadas.

Se o canal do Active Directory estiver íntegro, a senha do computador estiver atualizada e o controlador de domínio estiver funcionando conforme o esperado, tente as etapas a seguir.

Se o problema persistir, verifique se a credencial de domínio está desabilitada. Para fazer isso, abra uma janela de prompt de comandos com privilégios elevados e, em seguida, execute o seguinte comando para determinar se a VM está configurada para desabilitar contas de domínio para fazer logon na VM:

REG query "HKLM\SYSTEM\CurrentControlSet\Control\Lsa" /v disabledomaincreds

Se a chave está definida como 1, isso significa que o servidor foi definido para não permitir credenciais de domínio. Altere essa chave para 0.

Solucionar problemas de VMs autônomas

Verificar MinEncryptionLevel

Em uma instância do CMD, execute o seguinte comando para consultar o valor do Registro MinEncryptionLevel :

reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v MinEncryptionLevel

Com base no valor do Registro, siga estas etapas:

  • 4 (FIPS): Verifique as conexões de algoritmos compatíveis com FIPs.

  • 3 (criptografia de 128 bits): defina a gravidade como 2 executando o seguinte comando:

    reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v MinEncryptionLevel /t REG_DWORD /d 2 /f
    
  • 2 (Criptografia mais alta possível, conforme determinado pelo cliente): você pode tentar definir a criptografia para o valor mínimo de 1 executando o seguinte comando:

    reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v MinEncryptionLevel /t REG_DWORD /d 1 /f
    

Reinicie a VM para que as alterações no Registro entrem em vigor.

Versão do TLS

Dependendo do sistema, o RDP usa o protocolo TLS 1.0, 1.1 ou 1.2 (servidor). Para consultar como esses protocolos são configurados na VM, abra uma instância CMD e, em seguida, execute os seguintes comandos:

reg query "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server" /v Enabled
reg query "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server" /v Enabled
reg query "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server" /v Enabled

Se os valores retornados não forem todos 1, isso significa que o protocolo está desabilitado. Para habilitar esses protocolos, execute os seguintes comandos:

reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server" /v Enabled /t REG_DWORD /d 1 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server" /v Enabled /t REG_DWORD /d 1 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server" /v Enabled /t REG_DWORD /d 1 /f

Para outras versões do protocolo, você pode executar os comandos a seguir:

reg query "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS x.x\Server" /v Enabled
reg query "HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS x.x\Server" /v Enabled

Observação

Obtenha o SSH/TLS versão x.x dos Logs do SO convidado nos erros de SCHANNEL.

Verifique as conexões de algoritmos compatíveis com FIPs

A área de trabalho remota pode ser imposta para usar somente conexões de algoritmo em conformidade com FIPs. Isso pode ser definido usando uma chave do Registro. Para fazer isso, abra uma janela de prompt de comandos com privilégios elevados e consulte as chaves a seguir:

reg query "HKLM\SYSTEM\CurrentControlSet\Control\Lsa\FIPSAlgorithmPolicy" /v Enabled

Se o comando retornar 1, altere o valor do Registro para 0.

reg query "HKLM\SYSTEM\CurrentControlSet\Control\Lsa\FIPSAlgorithmPolicy" /v Enabled /t REG_DWORD /d 0

Verifique qual é o MinEncryptionLevel atual na VM:

reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v MinEncryptionLevel

Se o comando retornar 4, altere o valor do Registro para 2

reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /v MinEncryptionLevel /t REG_DWORD /d 2

Reinicie a VM para que as alterações no Registro entrem em vigor.

Próximas etapas

Entre em contato conosco para obter ajuda

Se você tiver dúvidas ou precisar de ajuda, crie uma solicitação de suporte ou peça ajuda à comunidade de suporte do Azure. Você também pode enviar comentários sobre o produto para a comunidade de comentários do Azure.