Correction de l'erreur de serveur HTTP 500 de WinRM
Définition
This error occurs when a WinRM (Windows Remote Management) client attempts to connect to a remote server, but the remote IIS (Internet Information Services) or WinRM service encounters an internal server error (HTTP 500). Because it is a generic server-side failure, the remote service fails to provide specific details to the client.
Ce problème provient généralement de paramètres de service WinRM mal configurés, de configurations WS-Management corrompues, de déséquilibres d'authentification, d'un manque d'autorisations d'utilisateur suffisantes ou de logiciels tiers en conflit (tels que des antivirus ou des pare-feu) bloquant l'environnement d'exécution sur la machine cible.
Réparations étape par étape
Effectuez ces étapes de dépannage sur le remote target machine Vous essayez de vous connecter.
Étape 1: redémarrer le service WinRM
Parfois, le service tombe en panne et a besoin d'un nouveau départ.
- Ouvrez. PowerShell ou... Command Prompt en tant qu'administrateur.
- Exécutez la commande suivante pour arrêter le service:
net stop winrm - Exécutez la commande suivante pour démarrer le service:
net start winrm
Étape 2: réparer la configuration WinRM
La réinitialisation et la vérification de la configuration rapide par défaut peuvent réparer les écouteurs et les règles de pare-feu corrompus.
- Ouvrez. PowerShell en tant qu'administrateur.
- Tapez la commande suivante et appuyez sur Enter:
winrm quickconfig - If prompted to make changes to configure the listener and enable the firewall exceptions, press
YEt puis...Enter.
Étape 3: Augmenter l'allocation de mémoire WinRM
L'erreur HTTP 500 se produit fréquemment parce que la shell distante est à court de mémoire de machine allouée lors du traitement des requêtes.
- Ouvrez. PowerShell en tant qu'administrateur.
- Vérifiez la limite de mémoire en exécutant:
Get-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB - Augmentez la limite de mémoire à 1024 Mo (ou plus si nécessaire) en exécutant:
Set-Item WSMan:\localhost\Shell\MaxMemoryPerShellMB 1024 - Redémarrez le service WinRM pour appliquer les modifications:
Restart-Service winrm
Étape 4: Vérifier la politique LocalAccountTokenFilter (pour les groupes de travail)
Si vous vous connectez à une machine qui ne fait pas partie d'un domaine Active Directory, Windows User Account Control (UAC) peut restreindre les privilèges d'administrateur sur les connexions distantes.
- Ouvrez. PowerShell en tant qu'administrateur.
- Execute the following command to allow remote administrative tasks for local accounts:
New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" -Name "LocalAccountTokenFilterPolicy" -Value 1 -PropertyType DWord -Force
Étape 5: Vérifier le pool d'applications et l'IIS (le cas échéant)
Si votre trafic WinRM est acheminé par un proxy IIS ou un point de terminaison personnalisé:
- Ouvrez la porte. IIS Manager sur le serveur distant.
- Navigation à Application Pools.
- S'assurer que le pool d'applications gérant le point final WinRM ou WS-Management est en cours d'exécution et n'est pas tombé en panne.
Il y a peut-être des erreurs.. Learn Microsoft