3 votes

RDP présente un certificat auto-signé au lieu de celui de l'autorité de certification.

Il y a quelques jours, j'ai été témoin d'un problème étrange dans mon domaine :

  • Lors de la connexion RDP, je vois des avertissements sur le fait que le certificat n'est pas fiable (et je vois un certificat auto-signé, non émis par l'autorité de certification du domaine).

  • Je ne peux plus me connecter par RDP à des serveurs pour lesquels l'option NLA (Network Layer Authentication) est activée.

Ce problème est omniprésent - je l'expérimente sur différents postes de travail et sur différents serveurs, y compris Windows Server 2012R2|2008R2, Windows 7 et Windows 10.

En ce qui concerne l'infrastructure de l'autorité de certification : une autorité de certification racine hors ligne et une autorité de certification émettrice au niveau du domaine. pkiview.msc indique que tout est correct : l'autorité racine et l'autorité émettrice ont toutes deux des certificats, des CDP, des IAI et des DeltaCRL valides (uniquement pour l'autorité émettrice). J'ai mis à jour les CRLs de la racine et les ai republiées dans AD parce que je pensais que c'était peut-être le cas, mais en vain.

Le modèle de certificat personnalisé avec Auth Client|Serveur|RDP existe toujours et je peux confirmer que les serveurs en question ont de tels certificats dans le dossier personnel de l'applet MMC Certificates (et peuvent en demander de nouveaux à partir de là), bien que seul le certificat auto-signé soit présent dans le dossier RDP.

En utilisant l'applet MMC Certificats, je vois également que les certificats racine et émetteur sont approuvés.

Donc je ne sais pas vraiment quoi faire et comment le réparer, et pourquoi il est cassé en premier lieu. Toute aide est la bienvenue.

PS. Il y a quelque temps, j'ai également modifié la GPO Default Domain, qui impose des plages d'adresses IP pour le réseau privé. Est-ce que cela peut être la raison ? Quoi qu'il en soit, j'ai rétabli les paramètres par défaut, mais rien n'y fait non plus.

MISE À JOUR Quelques photos pour clarifier un peu les choses :

1) Avertissement de sécurité

Security Warning

2) ...parce que les serveurs présentent un certificat auto-signé

...because it present Self-Signed Certificate

3) Cependant, nous pouvons voir le certificat CA approprié dans le stockage personnel sur le serveur en question.

However we can see proper CA-certificate in Personal storage on server in question

4) Dans le stockage des certificats de Remote Desktop, je ne vois que le certificat auto-signé. J'ai copié le bon certificat, mais cela n'a eu aucun effet. Et si je supprime le certificat auto-signé, je ne pourrai plus me connecter au serveur via RDP.

In Remote Desktop certificate storage I can see just Self-Signed Cert. I copied proper one there as well, but no effect. And if I delete Self-Signed Cert from there it won't connect to server over RDP at all.

5) Vous pouvez également voir que mes autorités de certification locales sont approuvées par le serveur :

Also you can see that my local CAs are trusted by server

6) C'est l'erreur que j'obtiens lorsque j'essaie de me connecter au serveur NLA. Donc le client, pour une raison ou une autre, ne peut pas ou ne veut pas utiliser CredSSP. Cela a fonctionné une semaine auparavant, je pense donc que c'est lié à un problème de certificat.

And that is the error I get when I try to RDP to NLA-enabled server. So client for some reason can't or won't willingly use CredSSP. I think it's connected to cert problem.

7) Enfin quelques écrans de l'AC émettrice. Il semble que tout soit en ordre.

Finally some screens from Issuing CA.

enter image description here

2voto

Crypt32 Points 6184

Parfois, RDS perd la liaison de certificat pour les certificats statiques (qui ne sont pas attribués via GPO). Il se peut que vous deviez exécuter la commande suivante :

$path = (Get-WmiObject "Win32_TSGeneralSetting" -ComputerName "<RDS Server Name>" -Namespace root\cimv2\terminalservices -Filter "TerminalName='RDP-tcp'").__path
Set-WmiInstance -Path $path -argument @{SSLCertificateSHA1Hash="<Thumbprint>"}

Remplacer <RDS Server Name> avec le nom du serveur actuel (s'il est exécuté à distance) et <Thumbprint> avec l'empreinte réelle du certificat. L'empreinte doit être spécifiée en hexadécimal sans espace, par exemple F02B346CDC02165543936A37B50F2ED9D5285F62 .

Pour les machines internes (qui font partie de la forêt AD et auxquelles on accède par des noms internes), il est recommandé d'utiliser des certificats RDS attribués par GPO : Configuration des certificats pour le bureau à distance

1voto

OK, j'ai résolu le problème. Michal Sokolowski avait raison lorsqu'il a pointé du doigt la mise à jour de mai 2018 de CredSSP. Apparemment, tout ce que j'ai vu était dû à cette mise à jour. Dès que j'ai modifié la GPO locale sur le poste client tout s'est bien passé.

La solution est donc la suivante :

1) exécuter gpedit.msc sur le client

2) ouvrir Configuration de l'ordinateur -> Modèles d'administration -> Système -> Délégation des pouvoirs

3) activer Encryption Oracle Remediation et le régler sur Vulnerable

4) exécuter gpupdate /force

Et tout rentre dans l'ordre.

1voto

Jamie Lawson Points 11

Appliquez tous les correctifs au serveur et aux clients, ce qui résoudra l'erreur credssp.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X