Partager via


Enable-PSRemoting

Configure l’ordinateur pour recevoir des commandes distantes.

Syntaxe

Enable-PSRemoting
      [-Force]
      [-SkipNetworkProfileCheck]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

L’applet de commande Enable-PSRemoting configure l’ordinateur pour recevoir des commandes à distance PowerShell envoyées à l’aide de la technologie WS-Management.

La communication à distance PowerShell est activée par défaut sur Windows Server 2012 et versions ultérieures. Vous pouvez utiliser Enable-PSRemoting pour activer la communication à distance PowerShell sur d’autres versions prises en charge de Windows et pour réactiver la communication à distance si elle est désactivée.

Vous devez exécuter cette commande une seule fois sur chaque ordinateur qui reçoit des commandes. Vous n’avez pas besoin de l’exécuter sur des ordinateurs qui envoient uniquement des commandes. Étant donné que la configuration démarre les écouteurs, il est prudent de l’exécuter uniquement là où elle est nécessaire.

À compter de PowerShell 3.0, l’applet de commande Enable-PSRemoting peut activer la communication à distance PowerShell sur les versions clientes de Windows lorsque l’ordinateur se trouve sur un réseau public. Pour plus d’informations, consultez la description du paramètre SkipNetworkProfileCheck.

L’applet de commande Enable-PSRemoting effectue les opérations suivantes :

  • Exécute l’applet de commande set-WSManQuickConfig, qui effectue les tâches suivantes :
    • Démarre le service WinRM.
    • Définit le type de démarrage sur le service WinRM sur Automatique.
    • Crée un écouteur pour accepter les demandes sur n’importe quelle adresse IP.
    • Active une exception de pare-feu pour les communications WS-Management.
    • Inscrit les configurations de session Microsoft.PowerShell et Microsoft.PowerShell.Workflow, si elles ne sont pas déjà inscrites.
    • Inscrit la configuration de session Microsoft.PowerShell32 sur les ordinateurs 64 bits, s’il n’est pas déjà inscrit.
    • Active toutes les configurations de session.
    • Modifie le descripteur de sécurité de toutes les configurations de session pour autoriser l’accès à distance.
  • Redémarre le service WinRM pour effectuer les modifications précédentes.

Pour exécuter cette applet de commande sur la plateforme Windows, démarrez PowerShell à l’aide de l’option Exécuter en tant qu’administrateur.

Pour plus d’informations sur l’utilisation de la communication à distance PowerShell, consultez les articles suivants :

Exemples

Exemple 1 : Configurer un ordinateur pour recevoir des commandes distantes

Cette commande configure l’ordinateur pour recevoir des commandes distantes.

Enable-PSRemoting

Exemple 2 : Configurer un ordinateur pour recevoir des commandes distantes sans invite de confirmation

Cette commande configure l’ordinateur pour recevoir des commandes distantes. Le paramètre Forcer supprime les invites de l’utilisateur.

Enable-PSRemoting -Force

Exemple 3 : Autoriser l’accès à distance sur les clients

Cet exemple montre comment autoriser l’accès à distance à partir de réseaux publics sur les versions clientes du système d’exploitation Windows. 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é de la règle pour vérifier que la configuration est appropriée pour votre environnement.

Get-NetFirewallRule -Name 'WINRM*' | Select-Object -Property Name

Name
----
WINRM-HTTP-In-TCP-NoScope
WINRM-HTTP-In-TCP
WINRM-HTTP-Compat-In-TCP-NoScope
WINRM-HTTP-Compat-In-TCP

Enable-PSRemoting -SkipNetworkProfileCheck -Force
Set-NetFirewallRule -Name 'WINRM-HTTP-In-TCP' -RemoteAddress Any

Par défaut, Enable-PSRemoting crée des règles réseau qui autorisent l’accès à distance à partir de réseaux privés et de domaine. La commande utilise le paramètre SkipNetworkProfileCheck pour autoriser l’accès à distance à partir de réseaux publics dans le même sous-réseau local. La commande spécifie le paramètre Forcer pour supprimer les messages de confirmation.

Le paramètre SkipNetworkProfileCheck n’affecte pas les versions du serveur du système d’exploitation Windows, qui autorisent l’accès à distance à partir de réseaux publics dans le même sous-réseau local par défaut.

L’applet de commande Set-NetFirewallRule dans le module NetSecurity ajoute une règle de pare-feu qui autorise l’accès à distance à partir de réseaux publics à partir de n’importe quel emplacement distant. Cela inclut des emplacements dans différents sous-réseaux.

Note

Le nom de la règle de pare-feu peut être différent en fonction de la version de Windows. Utilisez l’applet de commande Get-NetFirewallRule pour répertorier les noms des règles sur votre système.

Paramètres

-Confirm

Vous invite à confirmer avant d’exécuter l’applet de commande.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Force

Force l’exécution de la commande sans demander la confirmation de l’utilisateur.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SkipNetworkProfileCheck

Indique que cette applet de commande active la communication à distance sur les versions clientes du système d’exploitation Windows lorsque l’ordinateur se trouve sur un réseau public. Ce paramètre active 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.

Ce paramètre n’affecte pas les versions du serveur du système d’exploitation Windows, qui, par défaut, ont une règle de pare-feu de sous-réseau local pour les réseaux publics. Si la règle de pare-feu de sous-réseau local est désactivée sur une version de serveur, Enable-PSRemoting la réactive, quelle que soit la valeur de ce paramètre.

Pour supprimer la restriction de sous-réseau local et activer l’accès à distance à partir de tous les emplacements sur des réseaux publics, utilisez l’applet de commande Set-NetFirewallRule dans le module NetSecurity.

Ce paramètre a été introduit dans PowerShell 3.0.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-WhatIf

Affiche ce qui se passerait si l’applet de commande s’exécute. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

None

Vous ne pouvez pas diriger les objets vers cette applet de commande.

Sorties

String

Cette applet de commande retourne des chaînes qui décrivent ses résultats.

Notes

À compter de PowerShell 3.0, Enable-PSRemoting active toutes les configurations de session en définissant la valeur de la propriété Enabled de toutes les configurations de session sur $True.

  • Sur les versions serveur du système d’exploitation Windows, Enable-PSRemoting crée des règles de pare-feu pour les réseaux privés et de domaine qui autorisent l’accès à distance et crée une règle de pare-feu pour les réseaux publics qui autorisent l’accès à distance uniquement à partir d’ordinateurs du même sous-réseau local.

  • Sur les versions clientes du système d’exploitation Windows, Enable-PSRemoting dans PowerShell 3.0 crée des règles de pare-feu pour les réseaux privés et de domaine qui autorisent un accès à distance illimité. Pour créer une règle de pare-feu pour les réseaux publics qui autorise l’accès à distance à partir du même sous-réseau local, utilisez le paramètre SkipNetworkProfileCheck.

  • Sur les versions client ou serveur du système d’exploitation Windows, pour créer une règle de pare-feu pour les réseaux publics qui supprime la restriction de sous-réseau local et autorise l’accès à distance, utilisez l’applet de commande Set-NetFirewallRule dans le module NetSecurity pour exécuter la commande suivante : Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any

Enable-PSRemoting active toutes les configurations de session en définissant la valeur de la propriété Enabled de toutes les configurations de session sur $True.

Enable-PSRemoting supprime les paramètres Deny_All et Network_Deny_All. Cela fournit un accès à distance aux configurations de session réservées à une utilisation locale.