Installation et configuration de la gestion à distance de Windows

Pour que les scripts de gestion à distance de Windows (WinRM) s’exécutent, et pour que l’outil en ligne de commande Winrm puisse effectuer des opérations de données, WinRM doit être à la fois installé et configuré.

Les éléments suivants dépendent également de la configuration de WinRM :

L’emplacement d’installation de WinRM

WinRM est automatiquement installé avec toutes les versions actuellement prises en charge du système d’exploitation Windows.

Configuration de WinRM et IPMI

Les composants suivants de WinRM et Intelligent Platform Management Interface (IPMI) WMI provider sont installés avec le système d’exploitation :

  • Le service WinRM démarre automatiquement sur Windows Server 2008, et les versions ultérieures. Sur les versions antérieures de Windows (client ou serveur), vous devez démarrer le service manuellement.
  • Par défaut, aucun écouteur WinRM n’est configuré. Même si le service WinRM est en cours d’exécution, les messages du protocole WS-Management qui demandent des données ne peuvent pas être reçus ou envoyés.
  • Le pare-feu Internet Connection Firewall (ICF) bloque l’accès aux ports.

Utilisez la commande winrm pour localiser les écouteurs et les adresses en tapant la commande suivante à l’invite de commande :

winrm enumerate winrm/config/listener

Pour vérifier l’état des paramètres de configuration, tapez la commande suivante :

winrm get winrm/config

Configuration rapide par défaut

Activez le protocole WS-Management sur l’ordinateur local, et configurez la configuration par défaut pour la gestion à distance avec la commande winrm quickconfig.

La commande winrm quickconfig (qui peut être abrégée en winrm qc) effectue les opérations suivantes :

  • Démarre le service WinRM, et définit le type de démarrage du service sur démarrage automatique.
  • Configure un écouteur pour les ports qui envoient et reçoivent des messages du protocole WS-Management en utilisant soit HTTP, soit HTTPS sur toute adresse IP.
  • Définit les exceptions ICF pour le service WinRM, et ouvre les ports pour HTTP et HTTPS.

Notes

La commande winrm quickconfig crée une exception de pare-feu uniquement pour le profil utilisateur actuel. Si le profil de pare-feu est modifié pour quelque raison que ce soit, alors pour activer l’exception de pare-feu pour le nouveau profil, exécutez winrm quickconfig (sinon l’exception pourrait ne pas être activée).

Pour obtenir des informations sur la personnalisation d’une configuration, tapez la commande suivante à l’invite de commande :

winrm help config

Pour configurer WinRM avec les paramètres par défaut

  1. Dans une invite de commandes exécutée en tant que compte administrateur de l’ordinateur local, exécutez cette commande :

    winrm quickconfig
    

    Si vous n’exécutez pas en tant qu’Administrateur de l’ordinateur local, alors sélectionnez soit Exécuter en tant qu’administrateur dans le menu Démarrer, soit utilisez la commande Runas à l’invite de commande.

  2. Lorsque l’outil affiche Apporter ces modifications [o/n]?, tapez o.

    Si la configuration réussit, la sortie suivante est alors affichée.

    WinRM has been updated for remote management.
    
    WinRM service type changed to delayed auto start.
    WinRM service started.
    Created a WinRM listener on https://* to accept WS-Man requests to any IP on this machine.
    
  3. Conservez les paramètres par défaut pour les composants client et serveur de WinRM, ou personnalisez-les. Par exemple, vous pourriez avoir besoin d’ajouter certains ordinateurs distants à la liste TrustedHosts de configuration du client.

    Configurez une liste d’hôtes approuvés lorsque l’authentification mutuelle ne peut pas être établie. Kerberos permet l’authentification mutuelle, mais il ne peut pas être utilisé dans les groupes de travail ; seulement les domaines. Une bonne pratique lors de la configuration des hôtes approuvés pour un groupe de travail est de rendre la liste aussi restreinte que possible.

  4. Créez un écouteur HTTPS en tapant la commande suivante :

    winrm quickconfig -transport:https
    

    Notes

    Ouvrez le port 5986 pour que le transport HTTPS fonctionne.

Paramètres par défaut de l’écouteur et du protocole WS-Management

Pour obtenir la configuration de l’écouteur, tapez winrm enumerate winrm/config/listener dans une invite de commandes. Les écouteurs sont définis par un transport (HTTP ou HTTPS) et une adresse IPv4 ou IPv6.

La commande winrm quickconfig crée les paramètres par défaut suivants pour un écouteur. Vous pouvez créer plus d’un écouteur. Pour plus d’informations, tapez winrm help config dans une invite de commandes.

Adresse

Spécifie l’adresse pour laquelle cet écouteur est créé

Transport

Spécifie le transport à utiliser pour envoyer et recevoir les demandes et les réponses du protocole WS-Management. La valeur doit être soit HTTP soit HTTPS. La valeur par défaut est HTTP.

Port

Spécifie le port TCP pour lequel cet écouteur est créé.

WinRM 2.0 : Le port HTTP par défaut est 5985.

Nom d’hôte

Spécifie le nom d’hôte de l’ordinateur sur lequel le service WinRM est en cours d’exécution. La valeur doit être soit un nom de domaine entièrement qualifié, soit une chaîne littérale IPv4 ou IPv6, soit un caractère générique.

Activé(e)

Spécifie si l'écouteur est activé ou désactivé. La valeur par défaut est True.

URLPrefix

Spécifie un préfixe d’URL sur lequel accepter les requêtes HTTP ou HTTPS. Cette chaîne contient uniquement les caractères a-z, A-Z, 9-0, trait de soulignement (_) et barre oblique (/). La chaîne ne doit pas commencer ni se terminer par une barre oblique (/). Par exemple, si le nom de l’ordinateur est SampleMachine, le client WinRM spécifierait https://SampleMachine/<URLPrefix> dans l’adresse de destination. Le préfixe d’URL par défaut est wsman.

CertificateThumbprint

Spécifie l'empreinte numérique du certificat de service. Cette valeur représente une chaîne de valeurs hexadécimales à deux chiffres trouvées dans le champ Empreinte du certificat. Cette chaîne contient le hachage SHA-1 du certificat. Les certificats sont utilisés dans l'authentification par certificat client. Les certificats peuvent être mappés uniquement sur des comptes d’utilisateurs locaux. Ils ne fonctionnent pas avec des comptes de domaine.

ListeningOn

Spécifie les adresses IPv4 et IPv6 que l’écouteur utilise. Par exemple : 111.0.0.1, 111.222.333.444, ::1, 1000:2000:2c:3:c19:9ec8:a715:5e24, 3ffe:8311:ffff:f70f:0:5efe:111.222.333.444, fe80::5efe:111.222.333.444%8, fe80::c19:9ec8:a715:5e24%6.

Paramètres par défaut du protocole

De nombreux paramètres de configuration, tels que MaxEnvelopeSizekb ou SoapTraceEnabled, déterminent comment les composants client et serveur WinRM interagissent avec le protocole WS-Management. Les sections suivantes décrivent les paramètres de configuration disponibles.

MaxEnvelopeSizekb

Spécifie la taille maximale des données Simple Object Access Protocol (SOAP) en kilo-octets. La valeur par défaut est de 150 kilo-octets.

Notes

Le comportement n’est pas pris en charge si MaxEnvelopeSizekb est défini sur une valeur supérieure à 1039440.

MaxTimeoutms

Spécifie le délai d’expiration maximum en millisecondes qui peut être utilisé pour toute requête autre que les requêtes Pull. La valeur par défaut est 60000.

MaxBatchItems

Spécifie le nombre maximum d’éléments qui peuvent être utilisés dans une réponse Pull. Valeur par défaut : 32000.

MaxProviderRequests

Spécifie le nombre maximal de demandes simultanées autorisées par le service. La valeur par défaut est 25.

WinRM 2.0 : Ce paramètre est obsolète et est défini en lecture seule.

Paramètres de configuration par défaut du client WinRM

La version client de WinRM a les paramètres de configuration par défaut suivants.

NetworkDelayms

Spécifie le temps supplémentaire, en millisecondes, pendant lequel l'ordinateur client attend pour prendre en compte pour la durée du délai réseau. La valeur par défaut est 5000 millisecondes.

URLPrefix

Spécifie un préfixe d’URL sur lequel accepter les requêtes HTTP ou HTTPS. Le préfixe d’URL par défaut est wsman.

AllowUnencrypted

Permet à l'ordinateur client demander un trafic non chiffré. Par défaut, l’ordinateur client nécessite un trafic réseau chiffré et ce paramètre est Faux.

De base

Permet à l'ordinateur client d'utiliser l'authentification de base. L'authentification de base est un modèle dans lequel le nom d'utilisateur et le mot de passe sont envoyés en texte clair au serveur ou au proxy. Cette méthode est la méthode d'authentification la moins sécurisée. La valeur par défaut est True.

Digest

Permet à l'ordinateur client d'utiliser l'authentification Digest. L'authentification Digest est un modèle stimulation-réponse qui utilise une chaîne de données spécifiée par le serveur pour la stimulation. Seul l'ordinateur client peut initier une demande d'authentification Digest.

L’ordinateur client envoie une demande au serveur pour s’authentifier et reçoit une chaîne de jetons du serveur. Ensuite, l’ordinateur client envoie la demande de ressource, y compris le nom d’utilisateur et un hachage cryptographique du mot de passe combiné avec la chaîne de jetons.

L'authentification Digest est prise en charge pour HTTP et HTTPS. Les scripts et applications clients WinRM Shell peuvent spécifier l’authentification Digest, mais le service WinRM n’accepte pas l’authentification Digest. Par défaut, il s’agit de True.

Notes

L’authentification Digest sur HTTP n’est pas considérée comme sécurisée.

Certificat

Permet au client d’utiliser l’authentification par certificat client. L’authentification par certificat est un schéma dans lequel le serveur authentifie un client identifié par un certificat X509. La valeur par défaut est True.

Kerberos

Permet à l'ordinateur client d'utiliser l'authentification Kerberos. L'authentification Kerberos est un modèle dans lequel le client et le serveur s'authentifient mutuellement à l'aide de certificats Kerberos. La valeur par défaut est True.

Negotiate

Permet au client d’utiliser l’authentification Negotiate. L'authentification par négociation est un modèle dans lequel le client envoie une demande au serveur pour s'authentifier.

Le serveur détermine s’il faut utiliser le protocole Kerberos ou NT LAN Manager (NTLM). Le protocole Kerberos est sélectionné pour authentifier un compte de domaine. NTLM est sélectionné pour les comptes d’ordinateurs locaux. Le nom d’utilisateur doit être spécifié dans le format domaine\nom_utilisateur pour un utilisateur de domaine. Le nom d’utilisateur doit être spécifié dans le format nom_serveur\nom_utilisateur pour un utilisateur local sur un ordinateur serveur. Par défaut, il s’agit de True.

CredSSP

Permet au client d’utiliser l’authentification Credential Security Support Provider (CredSSP). CredSSP permet à une application de déléguer les informations d’identification de l’utilisateur de l’ordinateur client au serveur cible. Par défaut, il s’agit de False.

DefaultPorts

Spécifie les ports que le client utilise pour HTTP ou HTTPS.

WinRM 2.0 : Le port HTTP par défaut est 5985 et le port HTTPS par défaut est 5986.

TrustedHosts

Spécifie la liste des ordinateurs distants qui sont approuvés. D’autres ordinateurs dans un groupe de travail ou des ordinateurs dans un domaine différent doivent être ajoutés à cette liste.

Notes

Les ordinateurs de la liste des hôtes approuvés ne sont pas authentifiés. Le client peut envoyer des informations d’identification à ces ordinateurs.

Si une adresse IPv6 est spécifiée pour un hôte approuvé, l’adresse doit alors être enclavée entre crochets comme démontré par la commande utilitaire Winrm suivante :

winrm set winrm/config/client '@{TrustedHosts ="[0:0:0:0:0:0:0:0]"}'

Pour plus d’informations sur la façon d’ajouter des ordinateurs à la liste TrustedHosts, tapez winrm help config.

Paramètres de configuration par défaut du service WinRM

La version service de WinRM a les paramètres de configuration par défaut suivants.

RootSDDL

Spécifie le descripteur de sécurité qui contrôle l’accès distant à l’écouteur. Par défaut, il s’agit de O:NSG:BAD:P(A;;GA;;;BA)(A;;GR;;;ER)S:P(AU;FA;GA;;;WD)(AU;SA;GWGX;;;WD).

MaxConcurrentOperations

Le nombre maximum d’opérations simultanées. La valeur par défaut est 100.

WinRM 2.0 : Le paramètre MaxConcurrentOperations est obsolète et est défini en lecture seule. Ce paramètre a été remplacé par MaxConcurrentOperationsPerUser.

MaxConcurrentOperationsPerUser

Spécifie le nombre maximum d’opérations simultanées que tout utilisateur peut ouvrir à distance sur le même système. La valeur par défaut est 1500.

EnumerationTimeoutms

Spécifie le délai d’expiration inactif en millisecondes entre les messages Pull. La valeur par défaut est 60000.

MaxConnections

Spécifie le nombre maximum de requêtes actives que le service peut traiter simultanément. La valeur par défaut est 300.

WinRM 2.0 : La valeur par défaut est de 25.

MaxPacketRetrievalTimeSeconds

Spécifie la durée maximale en secondes que le service WinRM prend pour récupérer un paquet. La valeur par défaut est 120 secondes.

AllowUnencrypted

Permet à l'ordinateur client demander un trafic non chiffré. Par défaut, il s’agit de False.

De base

Permet au service WinRM d’utiliser l’authentification Basic. Par défaut, il s’agit de False.

Certificat

Permet au service WinRM d’utiliser l’authentification par certificat client. Par défaut, il s’agit de False.

Kerberos

Permet au service WinRM d’utiliser l’authentification Kerberos. Par défaut, il s’agit de True.

Negotiate

Permet au service WinRM d’utiliser l’authentification Negotiate. Par défaut, il s’agit de True.

CredSSP

Permet au service WinRM d’utiliser l’authentification Credential Security Support Provider (CredSSP). Par défaut, il s’agit de False.

CbtHardeningLevel

Définit la stratégie pour les spécifications requises des jetons de liaison de canal dans les demandes d'authentification. La valeur par défaut est Relaxed.

DefaultPorts

Spécifie les ports que le service WinRM utilise pour HTTP ou HTTPS.

WinRM 2.0 : Le port HTTP par défaut est 5985. Le port HTTPS par défaut est 5986.

IPv4Filter et IPv6Filter

Spécifie les adresses IPv4 ou IPv6 que les écouteurs peuvent utiliser. Les valeurs par défaut sont IPv4Filter = * et IPv6Filter = *.

  • IPv4 : Une chaîne littérale IPv4 se compose de quatre nombres décimaux pointillés, chacun dans la plage de 0 à 255. Par exemple : 192.168.0.0.
  • IPv6 : Une chaîne littérale IPv6 est enclavée entre crochets et contient des nombres hexadécimaux séparés par des deux-points. Par exemple : [::1] ou [3ffe:ffff::6ECB:0101].

EnableCompatibilityHttpListener

Spécifie si l’écouteur HTTP de compatibilité est activé. Si ce paramètre est True, l’écouteur écoute sur le port 80 en plus du port 5985. Par défaut, il s’agit de False.

EnableCompatibilityHttpsListener

Spécifie si l’écouteur HTTPS de compatibilité est activé. Si ce paramètre est True, l’écouteur écoute sur le port 443 en plus du port 5986. Par défaut, il s’agit de False.

Paramètres de configuration par défaut de Winrs

La commande winrm quickconfig configure également les paramètres par défaut de Winrs.

AllowRemoteShellAccess

Permet d'accéder aux interpréteurs de commandes distants. Si vous définissez ce paramètre sur False, le serveur rejette les nouvelles connexions de shell distant par le serveur. Par défaut, il s’agit de True.

IdleTimeout

Spécifie la durée maximale en millisecondes pendant laquelle le shell distant reste ouvert lorsqu’il n’y a aucune activité utilisateur dans le shell distant. Le shell distant est supprimé après cette durée.

WinRM 2.0 : La valeur par défaut est de 180000. La valeur minimale est 60000. Définir cette valeur en dessous de 60000 n’a aucun effet sur le comportement de délai d’expiration.

MaxConcurrentUsers

Spécifie le nombre maximal d'utilisateurs pouvant effectuer simultanément des opérations à distance sur le même ordinateur via un interpréteur de commandes distant. Si les nouvelles connexions de shell distant dépassent la limite, l’ordinateur les rejette. La valeur par défaut est 5.

MaxShellRunTime

Spécifie la durée maximale en millisecondes pendant laquelle la commande ou le script distant est autorisé à s’exécuter. Valeur par défaut : 28800000.

WinRM 2.0 : Le paramètre MaxShellRunTime est défini en lecture seule. Modifier la valeur de MaxShellRunTime n’a aucun effet sur les shells distants.

MaxProcessesPerShell

Spécifie le nombre maximal de processus qu'une opération d'interpréteur de commandes est autorisée à démarrer. Une valeur de 0 autorise un nombre illimité de processus. La valeur par défaut est 15.

MaxMemoryPerShellMB

Spécifie la quantité maximale de mémoire allouée par shell, y compris les processus enfants du shell. La valeur par défaut est 150 MB.

MaxShellsPerUser

Spécifie le nombre maximum de shells simultanés que tout utilisateur peut ouvrir à distance sur le même ordinateur. Si ce paramètre de stratégie est activé, l’utilisateur ne pourra pas ouvrir de nouveaux shells distants si le nombre dépasse la limite spécifiée. Si ce paramètre de stratégie est désactivé ou n’est pas configuré, la limite est définie à cinq shells distants par utilisateur par défaut.

Configurer WinRM avec la stratégie de groupe

Utilisez l’éditeur de stratégie de groupe pour configurer Windows Remote Shell et WinRM pour les ordinateurs de votre entreprise.

Pour configurer avec la stratégie de groupe :

  1. Ouvrez une fenêtre d’invite de commandes en tant qu’administrateur.
  2. À l’invite de commandes, tapez gpedit.msc. La fenêtre Éditeur d’objet de stratégie de groupe s’ouvre.
  3. Recherchez les objets de stratégie de groupe (GPO) Windows Remote Management et Windows Remote Shell sous Configuration de l’ordinateur\Modèles d’administration\Composants Windows.
  4. Dans l’onglet Étendu, sélectionnez un paramètre pour voir une description. Double-cliquez sur un paramètre pour le modifier.

Pare-feu Windows et ports WinRM 2.0

À partir de WinRM 2.0, les ports d’écoute par défaut configurés par Winrm quickconfig sont le port 5985 pour le transport HTTP et le port 5986 pour HTTPS. Les écouteurs WinRM peuvent être configurés sur n’importe quel port arbitraire.

Si vous mettez à niveau un ordinateur vers WinRM 2.0, les écouteurs précédemment configurés sont migrés et reçoivent toujours du trafic.

Notes d’installation et de configuration de WinRM

WinRM ne dépend d’aucun autre service excepté WinHttp. Si le service d’administration IIS est installé sur le même ordinateur, vous pourriez voir des messages indiquant que WinRM ne peut pas être chargé avant les services Internet (IIS). Cependant, WinRM ne dépend pas réellement d’IIS. Ces messages apparaissent car l’ordre de chargement garantit que le service IIS démarre avant le service HTTP. WinRM nécessite que WinHTTP.dll soit enregistré.

Si le client de pare-feu ISA2004 est installé sur l’ordinateur, il peut faire en sorte qu’un client Web Services for Management (WS-Management) cesse de répondre. Pour éviter ce problème, installez le SP1 du pare-feu ISA2004.

Si deux services d’écoute avec des adresses IP différentes sont configurés avec le même numéro de port et le même nom d’ordinateur, alors WinRM écoute ou reçoit des messages sur une seule adresse. Cette approche est utilisée car les préfixes d’URL utilisés par le protocole WS-Management sont les mêmes.

Notes d’installation du pilote et du fournisseur IPMI

Le pilote pourrait ne pas détecter l’existence de pilotes IPMI qui ne sont pas de Microsoft. Si le pilote ne parvient pas à démarrer, vous pourriez avoir besoin de le désactiver.

Si les ressources du contrôleur de gestion de carte mère (BMC) apparaissent dans le BIOS du système, alors ACPI (Plug and Play) détecte le matériel BMC et installe automatiquement le pilote IPMI. La prise en charge de Plug and Play pourrait ne pas être présente dans tous les BMC. Si le BMC est détecté par Plug and Play, alors un Périphérique inconnu apparaît dans le Gestionnaire de périphériques avant que le composant de gestion du matériel ne soit installé. Lorsque le pilote est installé, un nouveau composant, le Périphérique conforme IPMI générique ACPI Microsoft, apparaît dans le Gestionnaire de périphériques.

Si votre système ne détecte pas automatiquement le BMC et n’installe pas le pilote, mais qu’un BMC a été détecté pendant le processus de configuration, créez le périphérique BMC. Pour créer le périphérique, tapez la commande suivante dans une invite de commandes :

Rundll32 ipmisetp.dll, AddTheDevice

Après l’exécution de cette commande, le périphérique IPMI est créé et apparaît dans le Gestionnaire de périphériques. Si vous désinstallez le composant de gestion du matériel, le périphérique est supprimé.

Pour plus d’informations, voir introduction à la gestion du matériel.

Le fournisseur IPMI place les classes de matériel dans le root\hardware namespace de WMI. Pour plus d’informations sur les classes de matériel, voir Fournisseur IPMI. Pour plus d’informations sur les espaces de noms WMI, voir architecture WMI.

Notes de configuration du plug-in WMI

À partir de Windows 8 et Windows Server 2012, les plug-ins WMI ont leurs propres configurations de sécurité. Pour qu’un utilisateur normal ou un utilisateur privilégié, non un administrateur, puisse utiliser le plug-in WMI, activez l’accès pour cet utilisateur après que l’écouteur a été configuré. Configurez l’utilisateur pour un accès distant à WMI par l’une des étapes suivantes.

  • Exécutez lusrmgr.msc pour ajouter l’utilisateur au groupe WinRMRemoteWMIUsers__ dans la fenêtre Utilisateurs et groupes locaux.

  • Utilisez l’outil en ligne de commande Winrm pour configurer le descripteur de sécurité pour le namespace du plug-in WMI :

    winrm configSDDL http://schemas.microsoft.com/wbem/wsman/1/wmi/ WmiNamespace
    

Lorsque l’interface utilisateur apparaît, ajoutez l’utilisateur.

Après avoir configuré l’utilisateur pour l’accès distant à WMI, vous devez configurer WMI pour permettre à l’utilisateur d’accéder au plug-in. Pour permettre l’accès, exécutez wmimgmt.msc pour modifier la sécurité WMI pour le namespace à accéder dans la fenêtre Contrôle WMI.

La plupart des classes WMI pour la gestion se trouvent dans le namespace root\cimv2.