RUBRIQUE
about_Remote_Troubleshooting
DESCRIPTION COURTE
Décrit comment résoudre les problèmes liés aux opérations
distantes dans Windows PowerShell.
DESCRIPTION LONGUE
Cette section décrit certains des problèmes que vous pouvez
rencontrer lorsque vous utilisez les fonctionnalités de
communication à distance de Windows PowerShell qui sont basées
sur la technologie Gestion des services Web, et vous propose des
solutions.
Avant d'utiliser la communication à distance Windows PowerShell,
consultez about_Remote et about_Remote_Requirements pour obtenir
des indications sur la configuration et l'utilisation de base.
Par ailleurs, les rubriques d'aide relatives à chacune des
applets de commande distantes, en particulier les descriptions
de paramètres, comportent des informations utiles destinées à
vous aider à éviter les problèmes.
Des versions mises à jour de cette rubrique ainsi que d'autres
rubriques d'aide Windows PowerShell sont accessibles en ligne
dans la bibliothèque TechNet de Microsoft. Pour afficher la
version en ligne de cette rubrique d'aide, collez l'URL suivante
dans votre navigateur Internet :
https://go.microsoft.com/fwlink/?LinkID=135188
REMARQUE : sous Windows Vista, Windows Server 2008 et les versions
ultérieures de Windows, pour afficher ou modifier les paramètres
pour l'ordinateur local dans le lecteur WSMan:, notamment les
modifications apportées aux configurations de session, hôtes
approuvés, ports ou écouteurs, démarrez Windows PowerShell avec
l'option Exécuter en tant qu'administrateur.
RÉSOLUTION DES PROBLÈMES LIÉS AUX AUTORISATIONS ET À L'AUTHENTIFICATION
Cette section décrit les problèmes de communication à distance qui
sont liés aux autorisations des utilisateurs et des ordinateurs
ainsi qu'aux exigences relatives à la communication à distance.
COMMENT EXÉCUTER EN TANT QU'ADMINISTRATEUR
------------------------------------------
ERREUR : accès refusé. Vous devez exécuter cette applet de
commande à partir d'un processus élevé.
Pour démarrer une session à distance sur l'ordinateur local, ou
pour afficher ou modifier les paramètres pour l'ordinateur local
dans le lecteur WSMan:, notamment les modifications apportées
aux configurations de session, hôtes approuvés, ports ou
écouteurs, démarrez Windows PowerShell avec l'option Exécuter
en tant qu'administrateur.
Pour démarrer Windows PowerShell avec l'option Exécuter en tant
qu'administrateur :
-- Cliquez avec le bouton droit sur une icône
Windows PowerShell (ou Windows PowerShell ISE), puis cliquez sur
Exécuter en tant qu'administrateur.
Pour démarrer Windows PowerShell avec l'option Exécuter en tant
qu'administrateur dans Windows 7 et Windows Server 2008 R2.
-- Dans la barre des tâches Windows, cliquez avec le bouton droit
sur l'icône Windows PowerShell, puis cliquez sur Exécuter
Windows PowerShell en tant qu'administrateur.
Remarque : dans Windows Server 2008 R2, l'icône Windows PowerShell
est épinglée à la barre des tâches par défaut.
COMMENT ACTIVER LA COMMUNICATION À DISTANCE
-------------------------------------------
ERREUR : ACCÈS REFUSÉ.
- ou -
ERREUR : la connexion à l'hôte distant spécifié a été rejetée.
Vérifiez que le service Gestion des services Web est en
cours d'exécution sur l'hôte distant et configuré pour
écouter les demandes sur le port et l'URL HTTP corrects.
Aucune configuration n'est requise pour permettre à un ordinateur
d'envoyer des commandes distantes. Toutefois, pour recevoir des
commandes distantes, l'ordinateur doit être configuré pour la
communication à distance. La configuration inclut le démarrage
du service WinRM, la définition du type de démarrage du service
WinRM sur Automatique, la création d'écouteurs pour les
connexions HTTP et HTTPS, et la création de configurations de
session par défaut.
Pour configurer un ordinateur pour recevoir des commandes
distantes, utilisez l'applet de commande Enable-PSRemoting. La
commande suivante active tous les paramètres d'utilisation à
distance requis, active les configurations de session et
redémarre le service WinRM pour appliquer les modifications.
enable-psremoting
Pour supprimer toutes les invites utilisateur, tapez :
enable-psremoting -force
Pour plus d'informations, consultez Enable-PSRemoting.
COMMENT ACTIVER LA COMMUNICATION À DISTANCE DANS UNE ENTREPRISE
---------------------------------------------------------------
ERREUR : ACCÈS REFUSÉ.
- ou -
ERREUR : la connexion à l'hôte distant spécifié a été rejetée.
Vérifiez que le service Gestion des services Web est en
cours d'exécution sur l'hôte distant et configuré pour
écouter les demandes sur le port et l'URL HTTP corrects.
Pour permettre à un seul ordinateur de recevoir des commandes
Windows PowerShell distantes et d'accepter des connexions,
utilisez l'applet de commande Enable-PSRemoting.
Pour activer la communication à distance pour plusieurs
ordinateurs dans une entreprise, vous pouvez utiliser les
options adaptées suivantes.
-- Pour configurer les écouteurs pour la communication à distance,
activez la stratégie de groupe " Autoriser la configuration
automatique des écouteurs ". Pour obtenir les instructions
appropriées, consultez " Comment activer les écouteurs à l'aide
d'une stratégie de groupe " (ci-dessous).
-- Pour définir le type de démarrage du service Gestion à distance
de Windows (WinRM) sur Automatique sur plusieurs ordinateurs,
utilisez l'applet de commande Set-Service. Pour obtenir les
instructions appropriées, consultez " Comment définir le type
de démarrage du service WinRM " (ci-dessous).
-- Pour activer une exception de pare-feu, utilisez la stratégie
de groupe " Pare-feu Windows : autoriser les exceptions de ports
locaux ". Pour obtenir les instructions appropriées, consultez
" Comment activer une exception de pare-feu à l'aide d'une
stratégie de groupe " (ci-dessous).
COMMENT ACTIVER LES ÉCOUTEURS À L'AIDE D'UNE STRATÉGIE DE GROUPE
----------------------------------------------------------------
ERREUR : ACCÈS REFUSÉ.
- ou -
ERREUR : la connexion à l'hôte distant spécifié a été rejetée.
Vérifiez que le service Gestion des services Web est en
cours d'exécution sur l'hôte distant et configuré pour
écouter les demandes sur le port et l'URL HTTP corrects.
Pour configurer les écouteurs pour tous les ordinateurs d'un
domaine, activez la stratégie " Autoriser la configuration
automatique des écouteurs " dans le chemin d'accès de la
stratégie de groupe suivant :
Configuration de l'ordinateur\Modèles d'administration
\Composants Windows\Gestion à distance de Windows (WinRM)
\Service WinRM
Activez la stratégie et spécifiez les filtres IPv4 et IPv6. Les
caractères génériques (*) sont autorisés.
COMMENT ACTIVER UNE EXCEPTION DE PARE-FEU À L'AIDE D'UNE STRATÉGIE
DE GROUPE
------------------------------------------------------------------
ERREUR : ACCÈS REFUSÉ.
- ou -
ERREUR : la connexion à l'hôte distant spécifié a été rejetée.
Vérifiez que le service Gestion des services Web est en
cours d'exécution sur l'hôte distant et configuré pour
écouter les demandes sur le port et l'URL HTTP corrects.
Pour activer une exception de pare-feu pour tous les ordinateurs
d'un domaine, activez la stratégie " Pare-feu Windows : autoriser
les exceptions de ports locaux " dans le chemin d'accès de la
stratégie de groupe suivant :
Configuration de l'ordinateur\Modèles d'administration\Réseau
\Connexions réseau\Pare-feu Windows\Profil de domaine
Cette stratégie permet aux membres du groupe Administrateurs sur
l'ordinateur d'utiliser le Pare-feu Windows dans le Panneau de
configuration pour créer une exception de pare-feu pour le
service Gestion à distance de Windows.
COMMENT DÉFINIR LE TYPE DE DÉMARRAGE DU SERVICE WINRM
-----------------------------------------------------
ERREUR : ACCÈS REFUSÉ.
La communication à distance Windows PowerShell dépend du service
Gestion à distance de Windows (WinRM). Le service doit être en
cours d'exécution pour prendre en charge les commandes distantes.
Sous Windows Server 2003, Windows Server 2008 et Windows Server
2008 R2, le type de démarrage du service Gestion à distance de
Windows (WinRM) est Automatique.
Toutefois, sous Windows XP, Windows Vista et Windows 7, le service
WinRM est désactivé par défaut.
Pour définir le type de démarrage d'un service sur un ordinateur
distant, utilisez l'applet de commande Set-Service.
Pour exécuter la commande sur plusieurs ordinateurs, vous pouvez
créer un fichier texte ou CSV des noms des ordinateurs.
Par exemple, les commandes suivantes obtiennent une liste des noms
des ordinateurs à partir du fichier Servers.txt, puis définissent
le type de démarrage du service WinRM sur tous les ordinateurs
sur Automatique.
C:\PS> $servers = get-content servers.txt
C:\PS> set-service WinRM -computername $servers -startuptype
Automatic
Pour afficher les résultats, utilisez l'applet de commande
Get-WMIObject avec l'objet Win32_Service.
Pour plus d'informations, consultez Set-Service.
COMMENT RECRÉER LES CONFIGURATIONS DE SESSION PAR DÉFAUT
--------------------------------------------------------
ERREUR : ACCÈS REFUSÉ.
Pour établir une connexion à l'ordinateur local et exécuter des
commandes à distance, l'ordinateur local doit inclure des
configurations de session pour les commandes distantes.
Lorsque vous utilisez l'applet de commande Enable-PSRemoting, elle
crée les configurations de session par défaut sur l'ordinateur
local. Les utilisateurs distants emploient ces configurations
de session chaque fois qu'une commande distante ne comprend pas
le paramètre ConfigurationName.
Si les configurations par défaut sur un ordinateur ne sont pas
inscrites ou sont supprimées, utilisez l'applet de commande
Enable-PSRemoting pour les recréer. Vous pouvez utiliser cette
applet de commande à plusieurs reprises. Elle ne génère aucune
erreur si une fonctionnalité est déjà configurée.
Si vous modifiez les configurations de session par défaut et
voulez rétablir les configurations de session par défaut
d'origine, utilisez l'applet de commande
Unregister-PSSessionConfiguration pour supprimer les
configurations de session modifiées, puis Enable-PSRemoting pour
les rétablir. Enable-PSRemoting ne modifie pas les
configurations de session existantes.
Remarque : lorsque l'applet de commande Enable-PSRemoting rétablit la
configuration de session par défaut, elle ne crée pas de descripteur
de sécurité explicite pour les configurations.
En revanche, les configurations héritent du descripteur de sécurité
de RootSDDL, qui est sécurisé par défaut.
Pour afficher le descripteur de sécurité RootSDDL, tapez :
get-item wsman:\localhost\Service\RootSDDL
Pour modifier le descripteur RootSDDL, utilisez l'applet de
commande Set-Item dans le lecteur WSMan:. Pour modifier le
descripteur de sécurité d'une configuration de session, utilisez
l'applet de commande Set-PSSessionConfiguration avec les
paramètres SecurityDescriptorSDDL ou ShowSecurityDescriptorUI.
Pour plus d'informations sur le lecteur WSMan:, consultez la
rubrique d'aide du fournisseur de Gestion des services Web
(" get-help wsman ").
COMMENT FOURNIR DES INFORMATIONS D'IDENTIFICATION DE L'ADMINISTRATEUR
---------------------------------------------------------------------
ERREUR : ACCÈS REFUSÉ.
Pour créer une session PSSession ou exécuter des commandes sur un
ordinateur distant, par défaut, l'utilisateur actuel doit être
membre du groupe Administrateurs sur l'ordinateur distant. Des
informations d'identification sont parfois requises même lorsque
l'utilisateur actuel est connecté à un compte qui est membre du
groupe Administrateurs.
Si l'utilisateur actuel est membre du groupe Administrateurs sur
l'ordinateur distant ou peut fournir les informations
d'identification d'un membre du groupe Administrateurs, utilisez
le paramètre Credential des applets de commande New -PSSession,
Enter-PSSession ou Invoke-Command pour vous connecter à distance.
Par exemple, la commande suivante fournit les informations
d'identification d'un administrateur.
Invoke-Command -ComputerName Server01 -Credential Domain01
\Admin01
Pour plus d'informations sur le paramètre Credential,
consultez New-PSSession, Enter-PSSession ou Invoke-Command.
COMMENT ACTIVER LA COMMUNICATION À DISTANCE POUR LES UTILISATEURS
NON-ADMINISTRATEURS
-----------------------------------------------------------------
ERREUR : ACCÈS REFUSÉ.
Pour établir une session PSSession ou exécuter une commande sur un
ordinateur distant, l'utilisateur doit avoir l'autorisation
d'employer les configurations de session sur l'ordinateur
distant.
Par défaut, seuls les membres du groupe Administrateurs sur un
ordinateur ont l'autorisation d'employer les configurations de
session par défaut. Par conséquent, seuls les membres du groupe
Administrateurs peuvent se connecter à l'ordinateur à distance.
Pour permettre à d'autres utilisateurs de se connecter à
l'ordinateur local, accordez-leur des autorisations d'exécution
sur les configurations de session par défaut sur l'ordinateur
local.
La commande suivante ouvre une feuille de propriétés qui vous
permet de modifier le descripteur de sécurité de la
configuration de session par défaut Microsoft.PowerShell sur
l'ordinateur local.
Set-PSSessionConfiguration Microsoft.PowerShell -ShowSecurityDescriptorUI
Pour plus d'informations, consultez about_Session_Configurations.
COMMENT ACTIVER LA COMMUNICATION À DISTANCE POUR LES
ADMINISTRATEURS DANS D'AUTRES DOMAINES
----------------------------------------------------
ERREUR : ACCÈS REFUSÉ.
Lorsqu'un utilisateur d'un autre domaine est membre du groupe
Administrateurs sur l'ordinateur local, il ne peut pas se
connecter à cet ordinateur à distance avec les privilèges
d'administrateur. Par défaut, les connexions distantes à partir
d'autres domaines s'effectuent avec uniquement des jetons de
privilèges d'utilisateur standard.
Toutefois, vous pouvez utiliser l'entrée de Registre
LocalAccountTokenFilterPolicy pour modifier le comportement par
défaut et permettre aux utilisateurs distants qui sont membres
du groupe Administrateurs de se connecter avec les privilèges
d'administrateur.
Attention : l'entrée LocalAccountTokenFilterPolicy désactive les
restrictions distantes de contrôle de compte d'utilisateur
pour tous les utilisateurs de tous les ordinateurs concernés.
Examinez soigneusement les conséquences de ce paramètre avant
de modifier la stratégie.
Pour modifier la stratégie, utilisez la commande suivante pour
affecter la valeur 1 à l'entrée de Registre LocalAccountTokenFilterPolicy.
C:\PS> new-itemproperty -name LocalAccountTokenFilterPolicy -path `
HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies
\System -propertyType `DWord -value 1
COMMENT UTILISER UNE ADRESSE IP DANS UNE COMMANDE DISTANTE
----------------------------------------------------------
ERREUR : le client WinRM ne peut pas traiter la demande. Si le
modèle d'authentification n'est pas Kerberos, ou si
l'ordinateur client n'est pas membre d'un domaine, le
transport HTTPS doit être utilisé ou l'ordinateur de
destination doit être ajouté au paramètre de configuration
TrustedHosts.
Les paramètres ComputerName des applets de commande New-PSSession,
Enter-PSSession et Invoke-Command acceptent une adresse IP comme
valeur valide. Toutefois, dans la mesure où l'authentification
Kerberos ne prend pas en charge les adresses IP, l'authentification
NTLM est utilisée par défaut chaque fois que vous spécifiez une
adresse IP.
Lors de l'utilisation de l'authentification NTLM, la procédure
suivante est requise pour la communication à distance.
1. Configurez l'ordinateur pour le transport HTTPS ou ajoutez les
adresses IP des ordinateurs distants à la liste TrustedHosts
de l'ordinateur local.
Pour obtenir les instructions appropriées, consultez " Comment
ajouter un ordinateur à la liste TrustedHosts " ci-dessous.
2. Utilisez le paramètre Credential dans toutes les commandes
distantes.
Cela est obligatoire même lorsque vous envoyez les informations
d'identification de l'utilisateur actuel.
COMMENT SE CONNECTER À DISTANCE À PARTIR D'UN ORDINATEUR DE GROUPE
DE TRAVAIL
------------------------------------------------------------------
ERREUR : le client WinRM ne peut pas traiter la demande. Si le
modèle d'authentification n'est pas Kerberos, ou si
l'ordinateur client n'est pas membre d'un domaine, le
transport HTTPS doit être utilisé ou l'ordinateur de
destination doit être ajouté au paramètre de configuration
TrustedHosts.
Lorsque l'ordinateur local ne fait pas partie d'un domaine, la
procédure suivante est requise pour la communication à distance.
1. Configurez l'ordinateur pour le transport HTTPS ou ajoutez les
noms des ordinateurs distants à la liste TrustedHosts de
l'ordinateur local.
Pour obtenir les instructions appropriées, consultez " Comment
ajouter un ordinateur à la liste TrustedHosts " ci-dessous.
2. Vérifiez qu'un mot de passe est défini sur l'ordinateur de
groupe de travail. Si aucun mot de passe n'est défini ou
que sa valeur est vide, vous ne pouvez pas exécuter de
commandes distantes.
Pour définir un mot de passe pour votre compte d'utilisateur,
utilisez Comptes d'utilisateurs dans le Panneau de
configuration.
3. Utilisez le paramètre Credential dans toutes les commandes
distantes.
Cela est obligatoire même lorsque vous envoyez les informations
d'identification de l'utilisateur actuel.
COMMENT AJOUTER UN ORDINATEUR À LA LISTE TRUSTEDHOSTS
-----------------------------------------------------
L'élément TrustedHosts peut contenir une liste de noms
d'ordinateurs, d'adresses IP et de noms de domaines complets
séparés par des virgules. Les caractères génériques
sont autorisés.
Pour afficher ou modifier la liste des hôtes approuvés, utilisez
le lecteur WSMan:. L'élément TrustedHost se trouve dans le nœud
WSMan:\localhost\Client.
Seuls les membres du groupe Administrateurs sur l'ordinateur ont
l'autorisation de modifier la liste des hôtes approuvés
sur l'ordinateur.
Attention : la valeur que vous définissez pour l'élément TrustedHosts
affecte tous les utilisateurs de l'ordinateur.
Pour afficher la liste des hôtes approuvés, utilisez la commande
suivante :
get-item wsman:\localhost\Client\TrustedHosts
Vous pouvez également utiliser l'applet de commande Set-Location
(alias = cd) pour parcourir le lecteur WSMan: jusqu'à l'emplacement.
Par exemple, " cd WSMan:\localhost\Client; dir ".
Pour ajouter tous les ordinateurs à la liste des hôtes approuvés,
utilisez la commande suivante, qui insère la valeur * (tous)
dans ComputerName
set-item wsman:localhost\client\trustedhosts -value *
Vous pouvez également utiliser un caractère générique (*) pour
ajouter tous les ordinateurs d'un domaine particulier à la liste
des hôtes approuvés. Par exemple, la commande suivante ajoute
tous les ordinateurs du domaine Fabrikam à la liste des hôtes
approuvés.
set-item wsman:localhost\client\trustedhosts *.fabrikam.com
Pour ajouter les noms d'ordinateurs particuliers à la liste des
hôtes approuvés, utilisez le format de commande suivant :
set-item wsman:\localhost\Client\TrustedHosts -value <NomOrdinateur>
[,<NomOrdinateur>]
où chaque valeur <NomOrdinateur> doit avoir le format suivant :
<Ordinateur>.<Domaine>.<Société>.<domaine-niveau-supérieur>
Par exemple :
set-item wsman:\localhost\Client\TrustedHosts -value
Serveur01.Domaine01.Fabrikam.com
Pour ajouter un nom d'ordinateur à une liste existante d'hôtes
approuvés, enregistrez d'abord la valeur actuelle dans une
variable, puis affectez-lui une liste séparée par des virgules
qui inclut les valeurs actuelles et nouvelles.
Par exemple, pour ajouter l'ordinateur Serveur01 à une liste
existante d'hôtes approuvés, utilisez la commande suivante :
$curValue = (get-item wsman:\localhost\Client\TrustedHosts).value
set-item wsman:\localhost\Client\TrustedHosts -value
"$curValue, Serveur01.Domaine01.Fabrikam.com"
Pour ajouter les adresses IP d'ordinateurs particuliers à la liste
des hôtes approuvés, utilisez le format de commande suivant :
set-item wsman:\localhost\Client\TrustedHosts -value <Adresse IP>
Par exemple :
set-item wsman:\localhost\Client\TrustedHosts -value 172.16.0.0
Pour ajouter un ordinateur à la liste TrustedHosts d'un ordinateur
distant, utilisez l'applet de commande Connect-WSMan pour
ajouter un nœud pour l'ordinateur distant au lecteur WSMan: sur
l'ordinateur local. Utilisez ensuite une commande Set-Item pour
ajouter l'ordinateur.
Pour plus d'informations sur l'applet de commande Connect-WSMan,
consultez Connect-WSMan.
RÉSOLUTION DES PROBLÈMES LIÉS À LA CONFIGURATION DE L'ORDINATEUR
Cette section décrit les problèmes de communication à distance qui
sont liés aux configurations particulières d'un ordinateur, d'un
domaine ou d'une entreprise.
COMMENT CONFIGURER LA COMMUNICATION À DISTANCE SUR D'AUTRES PORTS
-----------------------------------------------------------------
ERREUR : la connexion à l'hôte distant spécifié a été rejetée.
Vérifiez que le service Gestion des services Web est en
cours d'exécution sur l'hôte distant et configuré pour
écouter les demandes sur le port et l'URL HTTP corrects.
La communication à distance Windows PowerShell utilise le port 80
pour le transport HTTP par défaut. Le port par défaut est
utilisé chaque fois que l'utilisateur ne spécifie pas de
paramètre ConnectionURI ou Port dans une commande distante.
Pour modifier le port par défaut employé par Windows PowerShell,
utilisez l'applet de commande Set-Item dans le lecteur WSMan:
pour changer la valeur Port dans le nœud terminal de l'écouteur.
Par exemple, la commande suivante remplace le port par défaut par
8080.
set-item wsman:\localhost\listener\listener*\port -value 8080
COMMENT CONFIGURER LA COMMUNICATION À DISTANCE AVEC UN SERVEUR
PROXY
--------------------------------------------------------------
ERREUR : le client ne peut pas se connecter à la destination
spécifiée dans la demande. Vérifiez que le service est
en cours d'exécution sur la destination et qu'il accepte
les demandes.
Étant donné que la communication à distance Windows PowerShell
utilise le protocole HTTP, elle est affectée par les paramètres
de proxy HTTP. Dans les entreprises qui disposent de serveurs
proxy, les utilisateurs ne peuvent pas accéder directement à un
ordinateur distant Windows PowerShell.
Pour résoudre ce problème, utilisez les options des paramètres de
proxy dans votre commande distante. Les paramètres suivants sont
disponibles :
-- ProxyAccessType
-- ProxyAuthentication
-- ProxyCredential
Pour définir ces options pour une commande particulière, utilisez
la procédure suivante :
1. Utilisez les paramètres ProxyAccessType, ProxyAuthentication
et ProxyCredential de l'applet de commande New-PSSessionOption
pour créer un objet d'option de session avec les paramètres de
proxy pour votre entreprise. Enregistrez l'objet d'option
dans une variable.
2. Utilisez la variable qui contient l'objet d'option comme
valeur du paramètre SessionOption d'une commande
New-PSSession, Enter-PSSession ou Invoke-Command.
Par exemple, la commande suivante crée un objet d'option de
session avec les options de session proxy, puis utilise l'objet
pour créer une session à distance.
C:\PS> $SessionOption = New-PSSessionOption -ProxyAccessType IEConfig `
-ProxyAuthentication Negotiate -ProxyCredential Domain01\User01
C:\PS> New-PSSession -ConnectionURI https://www.fabrikam.com
Pour plus d'informations sur l'applet de commande New-PSSessionOption,
consultez New-PSSessionOption.
Pour définir ces options pour toutes les commandes distantes de la
session active, utilisez l'objet d'option créé par New-PSSessionOption
dans la valeur de la variable de préférence $PSSessionOption. Pour plus
d'informations sur la variable de préférence $PSSessionOption,
consultez about_Preference_Variables.
Pour définir ces options pour toutes les commandes distantes de
toutes les sessions Windows PowerShell sur l'ordinateur local,
ajoutez la variable de préférence $PSSessionOption à votre
profil Windows PowerShell. Pour plus d'informations sur les
profils Windows PowerShell, consultez about_Profiles.
COMMENT DÉTECTER UNE SESSION 32 BITS SUR UN ORDINATEUR 64 BITS
--------------------------------------------------------------
ERREUR : le terme " nom-outil " n'est pas reconnu comme nom
d'applet de commande, fonction, fichier de script ou
programme exécutable. Vérifiez l'orthographe du nom,
ou si un chemin d'accès existe, vérifiez que le chemin
d'accès est correct et réessayez.
Si l'ordinateur distant exécute une version 64 bits de Windows et
que la commande distante utilise une configuration de session
32 bits, par exemple Microsoft.PowerShell32, le service Gestion
à distance de Windows (WinRM) charge un processus WOW64 et
Windows redirige automatiquement toutes les références au
répertoire %Windir%\System32 vers le répertoire %windir%\SysWOW64.
Par conséquent, si vous essayez d'employer des outils dans le
répertoire System32 qui n'ont pas d'équivalents dans le
répertoire SysWow64, par exemple Defrag.exe, les outils sont
introuvables dans le répertoire.
Pour rechercher l'architecture de processeur utilisée dans la
session, utilisez la valeur de la variable d'environnement
PROCESSOR_ARCHITECTURE. La commande suivante recherche l'architecture
de processeur de la session dans la variable $s.
C:\PS> $s = new-pssession -computername Server01 -configurationName CustomShell
C:\PS> invoke-command -session $s {$env:PROCESSOR_ARCHITECTURE}
x86
Pour plus d'informations sur les configurations de session,
consultez about_session_configurations.
RÉSOLUTION DES PROBLÈMES LIÉS AUX STRATÉGIES ET PRÉFÉRENCES
Cette section décrit les problèmes de communication à distance qui
sont liés aux stratégies et préférences définies sur les
ordinateurs locaux et distants.
COMMENT MODIFIER LA STRATÉGIE D'EXÉCUTION POUR IMPORT-PSSESSION ET
IMPORT-MODULE
------------------------------------------------------------------
ERREUR : Import-Module : impossible de charger le fichier
<nomfichier>, car l'exécution de scripts est désactivée
sur ce système.
Les applets de commande Import-PSSession et Export-PSSession
créent des modules qui contiennent des fichiers de script et
fichiers de mise en forme non signés.
Pour importer les modules créés par ces applets de commande, à
l'aide d'Import-PSSession ou d'Import-Module, la stratégie
d'exécution de la session active ne peut pas être Restricted ni
AllSigned. Pour plus d'informations sur les stratégies d'exécution
Windows PowerShell, consultez about_Execution_Policies.
Pour importer les modules sans modifier la stratégie d'exécution
de l'ordinateur local qui est définie dans le Registre, utilisez
le paramètre Scope de Set-ExecutionPolicy afin de définir une
stratégie d'exécution moins restrictive pour un processus unique.
Par exemple, la commande suivante démarre un processus avec la
stratégie d'exécution RemoteSigned. La modification de la
stratégie d'exécution affecte uniquement le processus actif et
ne change pas le paramètre de Registre ExecutionPolicy Windows
PowerShell.
set-executionpolicy -scope process -executionpolicy RemoteSigned
Vous pouvez également utiliser le paramètre ExecutionPolicy
de PowerShell.exe pour démarrer une seule session avec une
stratégie d'exécution moins restrictive.
powershell.exe -executionpolicy RemoteSigned
Pour plus d'informations sur les applets de commande, consultez
Import-PSSession, Export-PSSession et Import-Module. Pour plus
d'informations sur les stratégies d'exécution, consultez
about_Execution_Policies. Pour plus d'informations sur les
options d'aide de la console PowerShell.exe, tapez " powershell.exe -? ".
COMMENT DÉFINIR ET MODIFIER LES QUOTAS
--------------------------------------
ERREUR : la totalité des données reçues de la part du client
distant a dépassé le maximum autorisé.
Vous pouvez utiliser des quotas pour protéger les ordinateurs
local et distant contre une utilisation excessive des
ressources, à la fois accidentelle et malveillante.
Les quotas suivants sont disponibles dans la configuration
de base.
-- Le fournisseur de Gestion des services Web (WSMan:) propose
plusieurs paramètres de quota, tels que MaxEnvelopeSizeKB et
MaxProviderRequests dans le nœud WSMan:\<NomOrdinateur>, ainsi
que MaxConcurrentOperations, MaxConcurrentOperationsPerUser et
MaxConnections dans le nœud WSMan:\<NomOrdinateur>\Service.
-- Vous pouvez protéger l'ordinateur local à l'aide des paramètres
MaximumReceivedDataSizePerCommandMB et MaximumReceivedObjectSizeMB
de l'applet de commande New-PSSessionOption et de la variable de
préférence $PSSessionOption.
-- Vous pouvez protéger l'ordinateur distant en ajoutant des
restrictions aux configurations de session, par exemple à
l'aide des paramètres MaximumReceivedDataSizePerCommandMB et
MaximumReceivedObjectSizeMB de l'applet de commande
Register-PSSessionConfiguration.
Lorsque les quotas sont en conflit avec une commande, Windows
PowerShell génère une erreur.
Pour corriger l'erreur, modifiez la commande distante pour qu'elle
soit conforme au quota. Vous pouvez également déterminer la
source du quota, puis augmenter le quota pour permettre
l'exécution de la commande.
Par exemple, la commande suivante augmente le quota de la taille
des objets dans la configuration de session Microsoft.PowerShell
sur l'ordinateur distant de 10 Mo (valeur par défaut) à 11 Mo.
Set-PSSessionConfiguration -name microsoft.powershell `
-MaximumReceivedObjectSizeMB 11 -Force
Pour plus d'informations sur l'applet de commande
New-PSSessionOption, consultez New-PSSessionOption.
Pour plus d'informations sur les quotas du service Gestion des
services Web, consultez la rubrique d'aide du fournisseur de
Gestion des services Web (tapez " get-help WSMan ").
COMMENT RÉSOUDRE LES ERREURS DE DÉLAI D'ATTENTE
-----------------------------------------------
ERREUR : le service Gestion des services Web ne peut pas
terminer l'opération dans le temps spécifié par OperationTimeout.
Vous pouvez utiliser des délais d'attente pour protéger les
ordinateurs local et distant contre une utilisation excessive
des ressources, à la fois accidentelle et malveillante. Lorsque
des délais d'attente sont définis à la fois sur les ordinateurs
local et distant, Windows PowerShell utilise les paramètres du
délai d'attente le plus court.
Les délais d'attente suivants sont disponibles dans la
configuration de base.
-- Le fournisseur de Gestion des services Web (WSMan:) propose
plusieurs paramètres de délai d'attente côté client et côté
service, tels que MaxTimeoutms dans le nœud WSMan:\<NomOrdinateur>,
et EnumerationTimeoutms et MaxPacketRetrievalTimeSeconds dans
le nœud WSMan:\<NomOrdinateur>\Service.
-- Vous pouvez protéger l'ordinateur local à l'aide des paramètres
CancelTimeout, IdleTimeout, OpenTimeout et OperationTimeout de
l'applet de commande New-PSSessionOption et de la variable de
préférence $PSSessionOption.
-- Vous pouvez également protéger l'ordinateur distant en
définissant des valeurs de délai d'attente par programmation
dans la configuration de session pour la session.
Lorsqu'une valeur de délai d'attente n'autorise pas l'exécution
d'une opération, Windows PowerShell met fin à l'opération et
génère une erreur.
Pour corriger l'erreur, modifiez la commande pour qu'elle
s'exécute dans l'intervalle du délai d'attente ou déterminez la
source de la limite du délai d'attente et augmentez l'intervalle
pour permettre l'exécution de la commande.
Par exemple, les commandes suivantes utilisent l'applet de
commande New-PSSessionOption pour créer un objet d'option de
session avec une valeur OperationTimeout égale à 4 minutes (en
ms), puis utilisent cet objet pour créer une session à distance.
C:\PS> $pso = new-pssessionoption -operationtimeout 240000
C:\PS> new-pssession -computername Server01 -sessionOption $pso
Pour plus d'informations sur les délais d'attente du service
Gestion des services Web, consultez la rubrique d'aide du
fournisseur de Gestion des services Web (tapez " get-help WSMan ").
Pour plus d'informations sur l'applet de commande
New-PSSessionOption, consultez New-PSSessionOption.
RÉSOLUTION DES PROBLÈMES LIÉS À UNE ABSENCE DE RÉPONSE
Cette section décrit les problèmes de communication à distance qui
empêchent l'exécution d'une commande et empêchent ou retardent le
retour de l'invite Windows PowerShell.
COMMENT INTERROMPRE UNE COMMANDE
--------------------------------
Certains programmes Windows d'origine, tels que ceux avec une
interface utilisateur, les applications console qui demandent
une entrée et celles qui utilisent l'API de console Win32, ne
fonctionnent pas correctement dans l'hôte distant Windows
PowerShell.
Lorsque vous utilisez ces programmes, un comportement inattendu
peut se produire, par exemple l'absence de sortie, une sortie
partielle ou une commande distante qui ne s'exécute pas.
Pour mettre fin à un programme qui ne répond pas, tapez CTRL+C.
Pour afficher les erreurs qui peuvent avoir été signalées, tapez
" $error " dans l'hôte local et la session à distance.
VOIR AUSSI
Version en ligne : https://go.microsoft.com/fwlink/?LinkID=135188
about_remote
about_remote_requirements