Comment réparer "Le client WinRM ne peut pas traiter la demande car l'URI CustomRemoteShell spécifié est invalide".
Description de l'erreur
This error occurs when the Windows Remote Management (WinRM) client attempts to establish a connection using a custom connection URI or shell plugin that is missing, misconfigured, or not registered on the target remote computer. WinRM relies on specific Uniform Resource Identifiers (URIs) to route commands to the correct shell environment (like PowerShell or CMD). If the client specifies a CustomRemoteShell URI que le serveur distant ne reconnaît pas ou ne supporte pas, la connexion échoue immédiatement.
Réparations étape par étape
Méthode 1: Réinitialiser les configurations de la coquille à la valeur par défaut
La solution la plus rapide est de restaurer les configurations de shell WinRM par défaut sur les machines locales et distantes.
- Ouvrez la porte. Start Menu.
- Quel type ? cmd, cliquez avec le bouton droit. Command Prompt, et sélectionnez Run as administrator.
- Tapez la commande suivante pour réinitialiser la configuration WinRM et appuyez Enter:
winrm quickconfig - Quel type ? Y et appuyez. Enter si vous êtes invité à apporter des modifications.
- Ensuite, restaurez les espaces de noms de shell par défaut en exécutant:
winrm reset
Méthode 2: Utilisez l'URI de connexion standard dans votre script
Si vous recevez cette erreur lors de l'exécution d'une session PowerShell ( New-PSSession ou... Invoke-Command ), vous passez peut-être explicitement un URI incorrect.
- Localisez le script ou la commande que vous exécutez.
- Vérifie le...
-ConnectionURIparamètre. - Assurez-vous que vous utilisez le format URI PowerShell standard au lieu d' un format personnalisé:
http://<RemoteComputerName>:5985/wsman - Vous pouvez aussi retirer le
-ConnectionURIParamètre entièrement et utiliser la plaine-ComputerNameparamètre au lieu de:New-PSSession -ComputerName "TargetPC" -Credential (Get-Credential)
Méthode 3: Activer et configurer l'accès à distance par shell
Assurez-vous que l'accès à distance de la shell n'est pas restreint par la stratégie de groupe Windows ou les configurations locales.
- Ouvrez. Command Prompt as administrator.
- Exécutez cette commande pour vérifier si les shells distants sont activés:
winrm get winrm/config/winrs - Si.
AllowRemoteShellAccesss'il est réglé sur faux, activez-le en exécutant:winrm set winrm/config/winrs @{AllowRemoteShellAccess="true"}
Méthode 4: redémarrer le service WinRM
Parfois, le service WinRM ne parvient pas à enregistrer ses terminaux correctement jusqu'à ce que le service soit recyclé.
- Appuyez dessus. Windows Key + R pour ouvrir la boîte de dialogue Exécuter.
- Quel type ? services.msc et appuyez. Enter.
- Faites défiler vers le bas pour trouver le Windows Remote Management (WS-Management) le service.
- Cliquez dessus avec le bouton droit et sélectionnez Restart.
Il y a peut-être des erreurs.. Learn Microsoft