Comment résoudre les erreurs d'authentification lorsque j'utilise RDP pour me connecter à une instance Windows EC2 ?

Dernière mise à jour 30-08-2022

Je ne parviens pas à me connecter à mon instance Amazon Elastic Compute Cloud (Amazon EC2) avec le protocole RDP (Remote Desktop Protocol). Je reçois l'un des messages d'erreur d'authentification suivants :

  • « An authentication error has occurred. The Local Security Authority cannot be contacted » (Une erreur d'authentification s'est produite (L'autorité de sécurité local ne peut pas être contactée).
  • « The remote computer that you are trying to connect to requires Network Level Authentication (NLA), but your Windows domain controller cannot be contacted to perform NLA ». If you are an administrator on the remote computer, you can disable NLA by using the options on the Remote tab of the System Properties dialog box » (L'ordinateur distant auquel vous essayez de vous connecter nécessite une authentification au niveau du réseau (NLA), mais votre contrôleur de domaine Windows ne peut pas être contacté pour effectuer l'authentification NLA. Si vous êtes administrateur sur l'ordinateur distant, vous pouvez désactiver l'authentification NLA en utilisant les options de l'onglet Remote (Distant) de la boîte de dialogue System Properties (Propriétés système).

Brève description

Les erreurs précédentes peuvent se produire dans les deux scénarios suivants :

  • L'authentification au niveau du réseau (NLA) est activée sur le serveur.
  • La relation d'approbation entre votre domaine et l'instance EC2 jointe à ce domaine échoue lors de la connexion RDP.

Solution

NLA est activée sur le serveur

Des erreurs NLA se produisent souvent lorsque l'instance a perdu la connectivité à un contrôleur de domaine, car les autorisations du domaine ne sont pas authentifiées. Pour résoudre ce problème, vous pouvez utiliser le document d'automatisation AWS Systems Manager AWSSupport-TroubleshootRDP. Vous pouvez également désactiver l'authentification NLA sur l'instance.

Document d'automatisation AWSSupport-TroubleshootRDP

Le document d'automatisation AWSSupport-TroubleshootRDP vous permet de modifier des paramètres courants (comme le port RDP, l'authentification au niveau du réseau (NLS) et les profils de pare-feu Windows) sur une instance Windows Amazon EC2 qui peut avoir un impact sur les connexions RDP. Pour obtenir les instructions de dépannage en utilisant le document AWSSupport-TroubleshootRDP, consultez AWSSupport-TroubleshootRDP.

Désactiver l'authentification NLA sur l'instance

Vous pouvez désactiver l'authentification NLA sur l'instance inaccessible en procédant de l'une des manières suivantes :

  • Désactivez l'authentification NLA en vous reportant au document Systems Manager AWS-RunPowerShellScript.
  • Modifiez manuellement le registre hors ligne.

Remarque : la désactivation de l'authentification NLA nécessite des modifications de registre. Avant de commencer, créez une Amazon Machine Image (AMI) à partir de votre instance. Vous créez ainsi une sauvegarde avant de modifier le registre.

Désactiver l'authentification NLA en vous reportant au document Systems Manager AWS-RunPowerShellScript

Pour utiliser la commande d'exécution AWS Systems Manager AWS-RunPowerShellScript pour ajouter des clés de registre, procédez comme suit :

Important : l'agent SSM AWS Systems Manager doit être installé sur l'instance. L'instance doit également posséder un rôle AWS Identity and Access Management (IAM) (AmazonEC2RoleForSSM) avec des autorisations sur Systems Manager, et doit présenter des rapports « en ligne » sur le tableau de bord de Systems Manager. Pour plus d'informations, consultez la section Prérequis de Systems Manager.

1.    Ouvrez la console AWS Systems Manager.

2.    Dans la section Instances & Nodes (Instances et nœuds) du volet de navigation, choisissez Run Command.

3.    Pour Command document (Document de commande), sélectionnez AWS-RunPowerShellScript.

4.    Pour Command parameters (Paramètres de commande), entrez ce qui suit :

reg add "HKLM\SYSTEM\CurrentControlSet\Control\TerminalServer\WinStations\RDP-Tcp" /v SecurityLayer /t REG_DWORD /d 0 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\TerminalServer\WinStations\RDP-Tcp" /v UserAuthentication /t REG_DWORD /d 0 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\TerminalServer\WinStations\RDP-Tcp" /v fAllowSecProtocolNegotiation /t REG_DWORD /d 0 /f

5.    Pour Targets (Cibles), sélectionnez Choose instances manually (Choisir manuellement les instances).

6.    Sélectionnez votre instance.

7.    Sélectionnez Exécuter.

8.    Patientez jusqu'à ce que Overall status (Statut global) passe à Success (Réussi). Actualisez la page au bout de 2 minutes.

9.    Redémarrez l'instance.

10.    Connectez-vous à l'instance à l'aide de RDP.

Effectuez manuellement les modifications du registre

  1. Arrêtez l'instance inaccessible et détachez le volume racine.
  2. Lancez une nouvelle instance dans la même zone de disponibilité que l'instance d'origine que vous venez d'arrêter. Cela devient votre instance de secours. Il est recommandé de lancer une version Windows différente de l'instance inaccessible. Vous évitez les problèmes de signature de disque.
  3. Attachez le volume détaché à l'instance de secours en tant que /dev/xvdf.
  4. Connectez-vous à l'instance de secours en utilisant RDP, puis mettez en ligne le volume que vous venez d'attacher dans Disk Manager (Gestionnaire de disque).
  5. Exécutez regedit.exe pour ouvrir l'éditeur du Registre.
  6. Sélectionnez HKEY_LOCAL_MACHINE, puis File, (Fichier) Load Hive (Charger la ruche).
  7. Accédez au dossier Windows sur le volume attaché, puis sélectionnez le fichier SYSTEM. Le chemin par défaut est D:\Windows\System32\config.
  8. Nommez le fichier SYSTEM. Par exemple badsys.
  9. badsys apparaît maintenant sous HKEY_LOCAL_MACHINE. Sous badsys, accédez à ControlSet001, Control, Terminal Server, WinStations, RDP-Tcp.
  10. Double-cliquez sur SecurityLayer et définissez 0 pour ses données de valeur. Sélectionnez UserAuthentication et définissez 0 pour ses données de valeur. Ensuite, sélectionnez AllowSecProtocolNegotiation et définissez 0 pour ses données de valeur.
  11. Faites défiler vers le haut et sélectionnez badsys, File (Fichier), Unload Hive (Charger la ruche).
  12. Après le déchargement de la ruche, ouvrez Disk Manager (Gestionnaire de disque) et mettez hors ligne le disque.
  13. Détachez le volume de l'instance de secours et attachez-le à l'instance inaccessible en tant que volume racine (/dev/sda1).
  14. Démarrez l'instance et testez RDP.

La relation d'approbation entre votre domaine et l'instance EC2 jointe à ce domaine échoue lors de la connexion RDP

Essayer de vous connecter à l'instance inaccessible à l'aide des informations d'identification utilisateur mises en cache.

Prérequis

  • Un compte local qui peut s'authentifier dans l'instance EC2.
  • (Options) Au moins un compte de domaine s'est connecté lorsque l'instance est parvenue à communiquer avec le contrôleur de domaine. Pour que le compte de domaine fonctionne, les informations d'identification du compte de domaine doivent être mises en cache sur le serveur. Il est recommandé d'utiliser un compte local.
  • Pour utiliser des connexions interactives, vérifiez que la politique qui définit le nombre de connexions précédentes à mettre en cache (si le contrôleur de domaine n'est pas disponible) a au minimum la valeur 1. Vous pouvez également définir la valeur par défaut de 10 pour la politique. Par défaut, cette politique n'est pas définie dans le GPO, et la politique locale du serveur est utilisée.

Pour vous connecter en utilisant les informations d'identification mises en cache, procédez comme suit :

  1. Ouvrez la console Amazon EC2, puis sélectionnez Security Group (Groupes de sécurité).
  2. Sélectionnez Create Security Group (Créer un groupe de sécurité), puis ajoutez un nom et une description.
  3. Sous Security group rules (Règles de groupe de sécurité), sélectionnez Inbound – Add Rule (Entrant - Ajouter une règle).
  4. Saisissez RDP.
  5. Dans le champ Source, saisissez l'adresse IP à partir de laquelle vous souhaitez exécuter RDP.
  6. Pour Outbound rule (Règle sortante), supprimez tous les accès sortants, puis sélectionnez Create (Créer).
  7. Choisissez l'instance inaccessible, puis sélectionnez Actions, Networking (Réseaux), Change Security Groups (Modifier les groupes de sécurité). Supprimez tous les groupes de sécurité existants et affectez uniquement le groupe de sécurité que vous venez de créer.
  8. RDP vers l'instance EC2 en utilisant le compte de domaine normal. Étant donné que tous les accès sortants sont supprimés d'EC2, RDP utilise les autorisations mises en cache stockées dans le serveur.

Remarque : Au départ, l'authentification est tentée par rapport au contrôleur de domaine. Toutefois, étant donné qu'il n'y a pas d'accès sortant depuis EC2, l'authentification finit par vérifier les autorisations mises en cache dans le serveur. En utilisant les informations d'identification mises en cache, l'authentification est retentée et la connexion aboutit. Une fois connecté, vous pouvez rétablir l'état d'origine des paramètres du groupe de sécurité et continuer à résoudre les problèmes liés à votre domaine.

Dépannage supplémentaire

Si vous ne parvenez toujours pas à vous connecter, consultez la section Comment résoudre les problèmes de connexion Bureau à distance à mon instance Windows Amazon EC2 ?


Cet article vous a-t-il été utile ?


Avez-vous besoin d'aide pour une question technique ou de facturation ?