🇬🇧 | 🇩🇪 | 🇫🇷 | 🇪🇸 | 🇨🇳 | 🇸🇦
Nous n'avons pas de DLL mais nous avons:
L'analyseur de fichiers Windows et l'antivirus rapide en ligne

Une interface minimaliste avec une recherche rapide, un téléchargement pratique et une structure de section propre.

🛡️🔍 Vérifiez rapidement votre dossier, cliquez sur cette page.
Vérifier les virus, les hachages, vérifier les signets, l'architecture, les informations sur l'IA.

Correction de l'erreur WinRM: Code d'état de redirection HTTP non pris en charge

Description de l'erreur

Cette erreur se produit lorsqu'un client Windows Remote Management (WinRM) tente de se connecter à un serveur distant ou à un point final, mais le serveur cible redirige le trafic (généralement via un code d'état HTTP 301, 302 ou 307) vers une URL ou un port HTTPS différent. Par défaut, le protocole WinRM traite les redirections HTTP comme un risque de sécurité et les interdit explicitement. Parce que WinRM refuse de suivre le lien de redirection, la connexion échoue immédiatement. Ce problème se produit fréquemment lorsque les administrateurs configurent des redirections IIS globales sur un serveur, utilisent des équilibreurs de charge qui forcent automatiquement le trafic HTTP vers HTTPS ou tapent le mauvais bloc d'adresses dans leurs scripts d'automatisation.


Réparations étape par étape

Méthode 1: contourner les redirections en se connectant directement au point de terminaison HTTPS

Le moyen le plus sûr de résoudre ce problème est d'éviter complètement la redirection en ciblant directement l'URL HTTPS finale.

  1. Ouvrez votre console PowerShell ou votre script de gestion.
  2. Localiser la commande à l'origine de l'erreur (généralement Enter-PSSession, New-PSSession, ou Invoke-Command ) et de l'Union européenne.
  3. Modifiez le paramètre du protocole de connexion de HTTP à HTTPS et ajoutez explicitement le port HTTPS correct (par défaut 5986).
    • Example of a bad command causing a redirect:
      New-PSSession -ComputerName "Server01"
    • Example of the corrected command:
      New-PSSession -ComputerName "Server01" -UseSSL
  4. Si vous utilisez un URI de connexion spécifique, assurez-vous qu'il commence explicitement par https:// et inclut le nom de domaine correct pour correspondre au certificat SSL du serveur.

Méthode 2: Modifier les règles de redirection IIS sur le serveur cible

Si vous contrôlez le serveur distant, une règle de redirection HTTP globale dans Internet Information Services (IIS) est susceptible de briser WinRM. Vous devez exclure le répertoire virtuel WinRM de la règle de redirection.

  1. Connectez-vous au serveur Windows distant à l'origine de l'erreur.
  2. Cliquez sur le Start Menu, type IIS Manager, et ouvrez-le.
  3. À gauche. Connections panneau, élargir votre nœud de serveur et cliquez sur Sites, puis sélectionnez le site qui héberge vos règles de redirection (généralement le Default Web Site ) et de l'Union européenne.
  4. Dans le panneau du milieu, double-cliquez sur HTTP Redirect.
  5. Si elle redirige toutes les demandes vers un site HTTPS, vous devez ajouter une exception pour le chemin WinRM.
  6. To do this using web.config configuration rather than the GUI, open the website root folder (usually C:\inetpub\wwwroot Je vais ouvrir la porte. web.config Le fichier.
  7. Ajoutez un. <location> Règle de chemin pour désactiver la redirection pour le PowerShell ou... wsman les chemins:
    <location path="PowerShell">
        <system.webServer>
            <httpRedirect enabled="false" />
        </system.webServer>
    </location>
  8. Enregistrez le fichier et redémarrez IIS en exécutant iisreset dans une liste de commandes administrative.

Méthode 3: Activer le drapeau " Permettre la redirection " dans les sessions PowerShell

Si vous devez autoriser la redirection en raison de votre infrastructure réseau ou de la configuration de l'équilibrage de charge, vous pouvez explicitement demander à votre option de session client WinRM d'autoriser les redirections.

  1. Ouvrez votre script ou console PowerShell.
  2. Définissez un nouvel objet d' option de session WinRM et définissez le AllowRedirection propriété à vrai.
    $SessionOptions = New-PSSessionOption -AllowRedirection
  3. Passez cet objet option dans votre commande de connexion en utilisant le -SessionOption paramètre.
    New-PSSession -ComputerName "Server01" -SessionOption $SessionOptions
  4. Remarque: WinRM ne suivra la redirection que si vous utilisez un format URI de connexion explicite ou des informations d'identification explicites avec cette option.

Méthode 4: Mise à jour des paramètres SPN et Kerberos

Si l'erreur de redirection est un symptôme trompeur d'une défaillance d'authentification Kerberos en routage via un alias DNS générique, la définition d'un nom principal de service (SPN) peut la résoudre.

  1. Ouvrez une invite de commande en tant qu'administrateur sur votre contrôleur de domaine Active Directory ou machine de gestion.
  2. Vérifiez les SPN existants pour votre serveur cible en exécutant:
    setspn -L Server01
  3. Si le serveur utilise un alias DNS ou un nom d'hôte personnalisé, enregistrez le WSMan SPN manuellement pour le lier correctement au compte de l'ordinateur:
    setspn -S WSMAN/Server01 Server01
    setspn -S WSMAN/://yourdomain.com Server01
  4. Redémarrez le service WinRM sur la machine distante en exécutant Restart-Service WinRM dans PowerShell.
ERROR_WSMAN_SERVER_DESTINATION_LOCALHOST | ERROR_WSMAN_UNKNOWN_HTTP_STATUS_RETURNED | ERROR_WSMAN_HTTP_REQUEST_TOO_LARGE_STATUS | ERROR_WSMAN_HTTP_SERVICE_UNAVAILABLE_STATUS | ERROR_WSMAN_HTTP_NOT_FOUND_STATUS

Il y a peut-être des erreurs.. Learn Microsoft