Temos uma máquina Windows 10 Pro em nosso escritório que tem uma porta aberta para a Internet para conexões de entrada de área de trabalho remota (um "host"). Ele é bem protegido por senha complexa e número limitado de tentativas permitidas e somente TLS 1.1 ou superior, mas não apresenta um certificado SSL verificado externamente, somente o certificado auto-gerado auto-assinado fornecido pelos Serviços de Área de Trabalho Remota. nos dá dois problemas:
- Não podemos estar totalmente confiantes quando nos conectamos remotamente, estamos realmente conectando a esta máquina e não alguma conexão seqüestrada.
- Nosso site falha na verificação de conformidade com o PCI-DSS 3.1 (necessária porque usamos uma máquina de cartão de débito / crédito para ponto de venda que se conecta via internet). A verificação relata erros fatais nessa porta de área de trabalho remota voltada para a Internet: 'Certificado auto-assinado SSL' e 'Certificado SSL com nome de host incorreto'.
Como obtenho uma máquina Windows 10 Pro (ou Windows 7/8 / 8.1 Pro) atuando como servidor / host para apresentar um certificado SSL apropriado para a verificação da Área de Trabalho Remota?
Respostas:
Você pode configurar essa máquina host para usar e apresentar seu certificado SSL (existente, adquirido) com verificação externa (instruções provavelmente também funcionam para o Windows 8 e 8.1, podem ou não funcionar para o Windows 7) (partes disso com base em um Microsoft KB 2001849 ):
Primeiro, você precisa ter comprado um certificado SSL genuíno verificado.
Se você tiver esse certificado no arquivo de formato pkcs12 (por exemplo, extensão pfx), poderá visualizar a impressão digital SHA1 usando o Linux ou o Cygwin (você precisará dela abaixo):
Como alternativa, se você tiver os arquivos de certificado individuais em seu servidor Linux em / etc / ssl (/etc/ssl/certs/mysite.crt, /etc/ssl/mysite.ca-bundle e /etc/ssl/private/mysite.key ) você pode criar um arquivo pfx e obter a impressão digital SHA1 da seguinte forma:
openssl x509 -in /etc/ssl/certs/mysite.crt -noout -fingerprint
Importe o arquivo de formato pkcs12 (por exemplo, pfx) para o armazenamento de certificados pessoais da máquina host do Windows:
Use o regedit para adicionar um novo valor binário chamado SSLCertificateSHA1Hash em HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Terminal Server \ WinStations \ RDP-Tcp. O valor necessário é a impressão digital SHA1 do certificado obtido acima: clique com o botão direito do mouse no novo valor, escolha Modificar e digite os códigos hexadecimais sequencialmente (sem vírgula, espaço ou vírgula, letras não diferenciam maiúsculas de minúsculas) - existem 20 pares hexadecimais ao todo (40 caracteres).
Talvez seja necessário reinicializar a máquina host ou reiniciar os Serviços de Área de Trabalho Remota (em Services.msc) antes que funcione.
Agora, depois de fazer uma conexão de área de trabalho remota para este host usando o nome do site correto (por exemplo, mysite.com) você verá um cadeado fechado no lado esquerdo da barra de conexão superior: clicar neste mostra que a identidade do controle remoto computador foi verificado. Uma porta que está aberta da Internet para esse host agora deve passar pelo teste de nome de host do PCI-DSS 3.1.
fonte
Aqui estão os passos básicos que uso:
Obtenha um certificado válido para o host (ele não precisa vir de uma CA externa, mas todas as suas máquinas precisam confiar nele). Certifique-se de que tenha o nome de host correto, eu tive problemas com certificados curinga.
Instale o certificado no host, como:
encontre a impressão digital do certificado, na interface do usuário ou no PowerShell:
agora diga ao Remote Desktop para usar esse certificado:
não é necessário reiniciar
fonte