Como corrigir o RDP no Windows Server 2012?

12

Aqui está um instantâneo do status do RDP. Parece bom: insira a descrição da imagem aqui

Quando vou me conectar de uma máquina remota, recebo um erro:

"This computer can't connect to the remote computer. 
Try connecting again. If the problem continues..."

Testei a porta 3389 remotamente, está aberta. Eu testei com netstat.

TCP    0.0.0.0:3389           hostname:0                LISTENING
  • Nenhum firewall do Windows
  • Sem firewall de rede
  • Certificado autoassinado novinho em folha
  • A máquina foi reiniciada recentemente, funcionou antes disso
  • Serviços de terminal está sendo executado
  • Quando inspeciono o certificado SSL, ele mostra todos os detalhes, parece bom, expira em 2014
  • hklm: \ System \ CurrentControlSet \ Control \ Terminal Server \ fDenyTSConnections é 0
  • O administrador de C: \ ProgramData \ Microsoft \ Crypto \ RSA \ MachineKeys possui todos os privilégios

Atualizar:

Agora estou encontrando isso no log de eventos em Eventos administrativos:

"A fatal error occurred when attempting to access the SSL server credential 
private key. The error code returned from the cryptographic module is 0x8009030D. 
The internal error state is 10001." 

Não sei como resolver o erro acima. Também não tenho certeza de que é meu certificado RD importado, embora eu saiba que isso acontece quando tento fazer o RDP da minha máquina.

Atualização II:

Eu tentei usar o PowerShell para gerar certs com chaves privadas. Sem sorte Técnicas usadas aqui e aqui sem sorte. Cada vez que adicionei o certificado a raízes e pessoais confiáveis ​​para o usuário do sistema no snap-in Certificado MMC.

Atualização III:

Tão irritante

Este fórum indica que o Windows pode ter sido atualizado durante a reinicialização, causando um erro irrecuperável na instalação da função do Agente de Conexão de Área de Trabalho Remota (aparentemente necessário para gerar um arquivo pfx de chave privada a ser importado para o MMC). O bug está com o hotfix KB2821895 de junho de 2013. Isso pode ser remediado com isso? http://support.microsoft.com/kb/2871777

Por isso, executei a atualização mais recente do Windows e tentei instalar o Remote Desktop Connection Broker para que eu possa gerar o arquivo pfx. Sem sorte Ele diz que um ou mais recursos pai não estão instalados - mesmo que o Hyper-V etc. E não diz que outros papéis adicionar ...

Resumo da atualização Pergunta!

Então, tudo dito e feito, teoricamente, obter o RD Connection Broker para instalar (a fim de gerar uma chave privada) provavelmente resolveria meu erro de criptografia?

FlavorScape
fonte
Sua captura de tela é do gateway rdp, mas você está falando sobre o vanilla rdp. São duas coisas separadas; um gateway rdp funciona em: 443 para encapsular conexões rdp dentro de uma rede.
Mark Henderson
Certo Eu estava recebendo uma suspeita de que estava no lugar errado. Como resolvo o problema de certificado? Não vejo onde nas configurações de baunilha RD para mudar isso.
FlavorScape 26/09/2013
Verificar se o serviço está sendo executado via netstat não é um teste suficiente. Em um sistema remoto, execute "telnet IP_OF_RDP_HOST 3389" (sem aspas) e ele deverá remover todo o texto na janela do cmd. Como alternativa, execute uma captura de rede (netmon / wireshark) para determinar se uma sessão TCP está sendo estabelecida.
precisa saber é o seguinte
Tente passar por blogs.technet.microsoft.com/askperf/2014/10/22/... - ele trabalhou para mim com ligação RDP rejeitado para Win2012 svr :-)
Nigel Harvey

Respostas:

7

Você pode encontrar este erro ao se conectar após importar um certificado SSL (e chave privada associada) para o Windows Server 2012:

This computer can't connect to the remote computer. Try connecting again. If the problem continues, contact the owner of the remote computer or your network administrator. 

Além disso, nos logs de eventos do Windows, você vê:

"A fatal error occurred when attempting to access the SSL server credential 
private key. The error code returned from the cryptographic module is 0x8009030D. 
The internal error state is 10001." 

Solução:

Citação da Microsoft KB2001849:

"O serviço Remote Desktop Host Services é executado na conta NETWORK SERVICE. Portanto, é necessário definir a ACL do arquivo de chave usado pelo RDS (referenciado pelo certificado nomeado no valor do registro SSLCertificateSHA1Hash) para incluir o NETWORK SERVICE com" Read " Para modificar as permissões, siga as etapas abaixo:

Abra o snap-in Certificados para o computador local:

  1. Clique em Iniciar, clique em Executar, digite mmc e clique em OK.

  2. No menu Arquivo, clique em Adicionar / remover snap-in.

  3. Na caixa de diálogo Adicionar ou remover snap-ins, na lista Snap-ins disponíveis, clique em Certificados e clique em Adicionar.

  4. Na caixa de diálogo Snap-in de certificados, clique em Conta do computador e clique em Avançar.

  5. Na caixa de diálogo Selecionar computador, clique em Computador local: (o computador em que este console está executando) e clique em Concluir.

  6. Na caixa de diálogo Adicionar ou remover snap-ins, clique em OK.

  7. No snap-in Certificados, na árvore do console, expanda Certificados (Computador Local), expanda Pessoal e navegue até o certificado SSL que você deseja usar.

  8. Clique com o botão direito do mouse no certificado, selecione Todas as tarefas e selecione Gerenciar chaves privadas.

  9. Na caixa de diálogo Permissões, clique em Adicionar, digite SERVIÇO DE REDE, clique em OK, selecione Ler na caixa de seleção Permitir e clique em OK. "

Fonte: https://support.microsoft.com/en-us/kb/2001849

hwdsl2
fonte
3

Desativei os serviços de gateway. Acabei executando o MMC e excluindo o certificado RD por completo. Então desabilitei e reativei para permitir conexões remotas. Isso gerou um novo certificado bom e eu consegui fazer login no domínio da máquina!

FlavorScape
fonte
2

Estou certo de que você importou o certificado autoassinado? Se esse for o caso, você provavelmente marcou o certificado como não exportável, o que explicaria o erro ... Consulte http://blogs.msdn.com/b/kaushal/archive/2012/10/07/error -hresult-0x80070520-ao-adicionar-ssl-binding-in-iis.aspx para obter mais detalhes. Se estiver certo, você precisa excluir e reimportar o certificado com o sinalizador "Permitir exportação" definido.

CHfish
fonte
Meu certificado nunca gerou uma chave privada, portanto, não posso exportar / importar para obtê-la no sistema em vez do meu repositório de certificados de usuário. Agora estou tentando usar o PowerShell para gerar um com uma chave privada, porque aparentemente o que está na caixa de diálogo RD não faz isso.
FlavorScape 24/09/2013
Eu não estou adicionando a ligação para o IIS seja, é para o Remote Desktop ...
FlavorScape
1

Tenha uma solução para você:

Baixe makecert.exe e gere um novo certificado para RDP

makecert -r -pe -n "CN = FQDN do servidor" -eku 1.3.6.1.5.5.7.3.1 -ss my -sr LocalMachine -sky exchange -sp "Provedor criptográfico Microsoft RSA SChannel" -sy 12 "

Mude o FQDN do servidor com valor real.

Vá para certificados do computador e, na área de trabalho remota, exclua o certificado atual. Em seguida, da loja pessoal, mova o certificado recém-criado para a Área de Trabalho Remota. Abra o certificado e copie a impressão digital.

Abra o regedit e vá para:

HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ WinStations

Atualize a chave SelfSignedCertificate com a nova impressão cert.

Reinicie o serviço Remote Desktop Services

opti2k4
fonte
1

Eu tive o mesmo problema, com o erro aparecendo assim que clicamos em conectar.

Para resolver, alterei o serviço Serviços de Área de Trabalho Remota para que ele fosse executado como Conta do Sistema Local em vez de SERVIÇO DE REDE. Reiniciei o serviço e tudo funcionou normalmente.

EDIT:
Acabei de descobrir que isso fará com que o acesso seja negado à mensagem e deve ser definido como SERVIÇO DE REDE. Mas alterar isso para Conta do sistema local e voltar para SERVIÇO DE REDE resolveu meu problema completamente.

0x0000001E
fonte
1

Finalmente, foi isso que corrigiu o mesmo problema para mim (grandes sugestões para esta postagem do TechNet sobre como rastrear qual chave privada é o infrator)

  1. Faça o download e execute o Procmon (do Sysinternals Suite)
  2. Monitore a pasta MachineKeys em busca de atividade (provavelmente: C: \ ProgramData \ Microsoft \ Crypto \ RSA \ MachineKeys) ouvindo qualquer atividade nesse caminho
  3. Tente RDP na máquina ofensora e você deverá ver Procmon, observe o erro de acesso negado, junto com o arquivo que estava negando acesso
  4. Exclua o arquivo incorreto (talvez seja necessário primeiro torná-lo proprietário e depois ter controle total)
  5. Reinicie o computador e ele deve gerar novamente sua chave ausente com as permissões corretas aplicadas
si1ic0n_gh0st
fonte
0

Estou atrasado para a festa, mas foi isso que me ajudou.

  • Gere um novo certificado PFX. Autoassinado funcionará:

    Módulo de instalação SharePointPnPPowerShellOnline $ password = ConvertTo-SecureString "P @ ssword" -Force -AsPlainText New-PnPAzureCertificate -CommonName RDS_CertName -ValidYears 30 -OutPfx "RDS_CertName .pfx" -CertificatePassword $ password

  • Capture uma impressão digital na janela de saída
  • Instale o certificado PFX gerado em Meu computador> Armazenamento pessoal
  • Execute o seguinte comando usando a impressão digital capturada nas etapas acima:

    espaço de nomes / wmic: \ root \ cimv2 \ TerminalServices PATH Win32_TSGeneralSetting Set SSLCertificateSHA1Hash = " THUMB_PRINT "

Zerg00s
fonte