Partager via


about_Remote_Requirements

Description courte

Décrit la configuration requise et la configuration requise pour l’exécution de commandes distantes dans PowerShell.

Description longue

Cette rubrique décrit la configuration système requise, la configuration requise pour l’utilisateur et les ressources requises pour établir des connexions à distance et exécuter des commandes à distance dans PowerShell. Il fournit également des instructions pour configurer les opérations à distance.

Notes

Certaines applets de commande obtiennent des objets à partir de connexions RPC d’ordinateurs distants ou de sessions WMI pour les connexions distantes. Ils n’utilisent pas l’infrastructure de communication à distance PowerShell. Les exigences de ce document ne s’appliquent pas à ces applets de commande.

Pour rechercher les applets de commande qui ont un paramètre ComputerName mais qui n’utilisent pas la communication à distance PowerShell, lisez la description du paramètre ComputerName des applets de commande.

Configuration système requise

Dans Windows, la communication à distance PowerShell utilise la Gestion à distance Windows (WinRM), qui est fournie par le Windows Management Framework (WMF). Pour exécuter des sessions à distance sur PowerShell, les ordinateurs locaux et distants doivent disposer des éléments suivants :

  • Windows PowerShell 3.0 ou version ultérieure
  • Microsoft .NET Framework 4 ou version ultérieure
  • Gestion à distance Windows 3.0 ou version ultérieure

Pour exécuter des sessions à distance sur Windows PowerShell 2.0, les ordinateurs locaux et distants doivent disposer des éléments suivants :

  • Windows PowerShell 2.0 ou version ultérieure
  • Microsoft .NET Framework 2.0 ou version ultérieure
  • Gestion à distance Windows 2.0

Pour être entièrement pris en charge, vous devez utiliser WMF 5.1. Pour plus d’informations sur la prise en charge de WMF, consultez Windows Management Framework (WMF).

Vous pouvez créer une session à distance entre un ordinateur exécutant Windows PowerShell 2.0 et un ordinateur exécutant une version plus récente de PowerShell. Toutefois, les fonctionnalités qui s’exécutent uniquement sur les nouvelles versions de PowerShell, telles que la possibilité de se déconnecter et de se reconnecter aux sessions, ne sont disponibles que lorsque les deux ordinateurs exécutent Windows PowerShell 3.0 et versions ultérieures.

Pour rechercher le numéro de version d’une version installée de PowerShell, utilisez la $PSVersionTable variable automatique.

PowerShell 7 et versions ultérieures prend également en charge la communication à distance PowerShell via SSH. La communication à distance PowerShell via SSH vous permet de vous connecter à n’importe quel hôte Windows, macOS ou Linux exécutant SSH. Pour plus d’informations, consultez Communication à distance PowerShell via SSH.

Autorisations utilisateur

Pour créer des sessions à distance et exécuter des commandes à distance, par défaut, l’utilisateur actuel doit être membre du groupe Administrateurs sur l’ordinateur distant ou fournir les informations d’identification d’un administrateur. Sinon, la commande échoue.

Les autorisations requises pour créer des sessions et exécuter des commandes sur un ordinateur distant sont établies par la configuration de session. La configuration de session définit les options de configuration du point de terminaison de connexion sur l’ordinateur distant. Plus précisément, le descripteur de sécurité sur la configuration de session détermine qui a accès à la configuration de session et qui peut l’utiliser pour se connecter.

Les descripteurs de sécurité sur les configurations de session par défaut, Microsoft.PowerShell et Microsoft.PowerShell32, autorisent uniquement l’accès aux membres du groupe Administrateurs .

Les membres du groupe Administrateurs sur un ordinateur peuvent déterminer qui a l’autorisation de se connecter à distance à l’ordinateur en modifiant les descripteurs de sécurité sur les configurations de session par défaut ou en créant de nouvelles configurations de session avec différents descripteurs de sécurité. Les utilisateurs peuvent utiliser le paramètre ConfigurationName des applets de *-PSSession commande pour se connecter à différents points de terminaison.

Pour plus d’informations sur les configurations de session, consultez about_Session_Configurations.

Emplacements réseau Windows

À compter de Windows PowerShell 3.0, l’applet de commande peut activer la Enable-PSRemoting communication à distance sur les versions client et serveur de Windows.

Sur les versions de serveur de Windows avec des réseaux privés et de domaine, l’applet de commande crée des Enable-PSRemoting règles de pare-feu qui autorisent un accès à distance sans restriction. Il crée également une règle de pare-feu pour les réseaux publics qui autorise l’accès à distance uniquement à partir d’ordinateurs du même sous-réseau local. Cette règle de pare-feu de sous-réseau local est activée par défaut sur les versions serveur de Windows sur les réseaux publics, mais Enable-PSRemoting réapplique la règle en cas de modification ou de suppression.

Sur les versions clientes de Windows avec des réseaux privés et de domaine, crée des Enable-PSRemoting règles de pare-feu qui autorisent un accès à distance sans restriction.

Pour activer la communication à distance sur les versions clientes de Windows avec des réseaux publics, utilisez le paramètre SkipNetworkProfileCheck de l’applet Enable-PSRemoting de commande. Cette option crée une règle de pare-feu qui autorise l’accès à distance uniquement à partir d’ordinateurs du même sous-réseau local.

Pour supprimer la restriction de sous-réseau local sur les réseaux publics et autoriser l’accès à distance à partir de tous les emplacements sur les versions client et serveur de Windows, utilisez l’applet Set-NetFirewallRule de commande dans le module NetSecurity . Exécutez la commande suivante :

Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any

Notes

Le nom de la règle de pare-feu peut être différent pour différentes versions de Windows. Utilisez Get-NetFirewallRule pour afficher une liste de règles. Avant d’activer la règle de pare-feu, affichez les paramètres de sécurité dans la règle pour vérifier que la configuration est appropriée pour votre environnement.

Dans Windows PowerShell 2.0, sur les versions serveur de Windows, Enable-PSRemoting crée des règles de pare-feu qui autorisent l’accès à distance sur tous les réseaux.

Dans Windows PowerShell 2.0, sur les versions clientes de Windows, Enable-PSRemoting crée des règles de pare-feu uniquement sur les réseaux privés et de domaine. Si l’emplacement réseau est public, Enable-PSRemoting échoue.

Exécuter en tant qu'administrateur

Les privilèges d’administrateur sont requis pour les opérations de communication à distance suivantes :

  • Établissement d’une connexion à distance à l’ordinateur local. Il s’agit d’un scénario de « bouclage ».
  • Gestion des configurations de session sur l’ordinateur local.
  • Affichage et modification des paramètres WS-Management sur l’ordinateur local. Il s’agit des paramètres dans le nœud LocalHost du lecteur WSMAN :.

Vous devez démarrer PowerShell avec l’option Exécuter en tant qu’administrateur même si vous êtes membre du groupe Administrateurs sur l’ordinateur local.

Lorsque vous démarrez Windows PowerShell à partir d’un autre programme tel que cmd.exe, utilisez l’option Exécuter en tant qu’administrateur pour démarrer le programme.

Comment configurer votre ordinateur pour la communication à distance

Les ordinateurs exécutant n’importe quelle version prise en charge de Windows peuvent établir des connexions à distance et exécuter des commandes à distance dans PowerShell sans aucune configuration. Toutefois, pour recevoir des connexions à distance, vous devez activer la communication à distance PowerShell sur l’ordinateur.

Windows Server 2012 et les versions plus récentes de Windows Server sont activées par défaut pour la communication à distance PowerShell. Si les paramètres sont modifiés, vous pouvez restaurer les paramètres par défaut en exécutant l’applet de Enable-PSRemoting commande.

Par défaut, les fonctionnalités de communication à distance de PowerShell sont prises en charge par le service WinRM, qui est l’implémentation Microsoft du protocole WS-Management (Web Services for Management). Lorsque vous activez la communication à distance PowerShell, vous modifiez la configuration par défaut de WS-Management et ajoutez la configuration système qui permet aux utilisateurs de se connecter à WS-Management.

Pour configurer PowerShell pour recevoir des commandes à distance :

  1. Démarrez PowerShell avec l’option Exécuter en tant qu’administrateur .
  2. À l’invite de commandes, tapez : Enable-PSRemoting

Pour vérifier que la communication à distance est correctement configurée, exécutez une commande de test telle que la commande suivante, qui crée une session à distance sur l’ordinateur local.

New-PSSession

Si la communication à distance est configurée correctement, la commande crée une session sur l’ordinateur local et retourne un objet qui représente la session.

Id Name        ComputerName    State    ConfigurationName
-- ----        ------------    -----    -----
1  Session1    localhost       Opened   Microsoft.PowerShell

Si la commande échoue, consultez about_Remote_Troubleshooting.

Comprendre les stratégies

Lorsque vous travaillez à distance, vous utilisez deux instances de PowerShell, l’une sur l’ordinateur local et l’autre sur l’ordinateur distant. Par conséquent, votre travail est affecté par les stratégies Windows et PowerShell sur les ordinateurs locaux et distants.

Avant de vous connecter et lors de l’établissement de la connexion, les stratégies sur l’ordinateur local sont en vigueur. Lorsque vous utilisez la connexion, les stratégies sur l’ordinateur distant sont en vigueur.

Voir aussi