: Microsoft.PowerShell.Core

ouvre une connexion persistante à un ordinateur local ou distant.

Syntaxe

New-PSSession <PSSession>] >] 
New-PSSession >] 
New-PSSession >] -SSHConnection <Hashtable> 

Description

Le New-PSSession applet de commande crée une session PowerShell (PSSession) sur un local ou remotecomputer. Lorsque vous créez une session PSSession, PowerShell établit une connexion persistante à theremote computer.,

utilisez une PSSession pour exécuter plusieurs commandes qui partagent des données, telles qu’une fonction ou la valeur d’avariable. Pour exécuter des commandes dans une session PSSession, utilisez l’applet de commande Invoke-Command. Pour utiliser thePSSession pour interagir directement avec un ordinateur distant, utilisez l’applet de commande Enter-PSSession. Pour plus d’informations, voir about_PSSessions.

Vous pouvez exécuter des commandes sur un ordinateur distant sans créer de session PSSession en utilisant les paramètres computername deEnter-PSSessionouInvoke-Command., Lorsque vous utilisez le paramètre theComputerName, PowerShell crée une connexion temporaire qui est utilisée pour la commandeet est ensuite fermée.

à partir de PowerShell 6.0, vous pouvez utiliser Secure Shell (SSH) pour établir une connexion et créer une session sur un ordinateur distant, si SSH est disponible sur l’ordinateur local et que l’ordinateur distant est configuré avec un point de terminaison SSH PowerShell. L’avantage d’une session distante PowerShell basée sur SSH est qu’elle peut fonctionner sur plusieurs plates-formes (Windows, Linux, macOS)., Pour les sessions basées sur SSH, vous utilisez le paramètre HostName ou sshconnection pour spécifier l’ordinateur distant et les informations de connexion pertinentes. Pour plus d’informations sur la configuration de PowerShell SSH remoting, seePowerShell Remoting via SSH.

Remarque

lors de l’utilisation de WSMan à distance d’un client Linux ou macOS avec un point de terminaison HTTPS où le servercertificate n’est pas approuvé (par exemple, un certificat auto-signé). Vous devez fournir un PSSessionOptionqui inclut -SkipCACheck et -SkipCNCheck à réussi à établir la connexion., Ne le faites que si vous êtes dans un environnement où vous pouvez être certain du certificat de serveur et de la connexion réseau au système cible.

Exemples

Exemple 1: Créer une session sur l’ordinateur local

$s = New-PSSession

Cette commande crée un nouveau PSSession sur l’ordinateur local et enregistre le PSSession dans le$s variable.

Vous pouvez maintenant utiliser cette PSSession pour exécuter des commandes sur l’ordinateur local.,

Exemple 2: Créer une session sur un ordinateur distant

$Server01 = New-PSSession -ComputerName Server01

Cette commande crée un nouveau PSSession sur l’ordinateur Server01 et l’enregistre dans le $Server01variable.

lors de la création de plusieurs objets PSSession, assignez-les à des variables avec des noms utiles. Cela vous aidera à gérer les objets PSSession dans les commandes suivantes.

exemple 3: Créer des sessions sur plusieurs ordinateurs

$s1, $s2, $s3 = New-PSSession -ComputerName Server01,Server02,Server03

Cette commande crée trois objets PSSession, un sur chacun des ordinateurs spécifiés par le paramètre ComputerName.,

La commande utilise l’opérateur d’affectation (=) pour l’attribution de la nouvelle PSSession objets à des variables:$s1, $s2, $s3. Il assigne la Server01 PSSession à $s1, la Server02 PSSession à$s2 et la Server03 PSSession à $s3.

lorsque vous affectez plusieurs objets à une série de variables, PowerShell affecte chaque objet à avariable dans la série respectivement., S’il y a plus d’objets que de variables, tous les objets restantssont affectés à la dernière variable. S’il y a plus de variables que d’objets, les variables restantessont vides (null).

exemple 4: Créer une session avec un port spécifié

New-PSSession -ComputerName Server01 -Port 8081 -UseSSL -ConfigurationName E12

Cette commande crée une nouvelle session PSSession sur L’ordinateur Server01 qui se connecte au port serveur 8081et utilise le protocole SSL. La nouvelle PSSession utilise une configuration de session alternative appelée E12.

avant de définir le port, vous devez configurer L’écouteur WinRM sur l’ordinateur distant pour écouter onport 8081., Pour plus d’informations, consultez la description du paramètre Port.

Exemple 5: Créer une session basée sur une session existante

New-PSSession -Session $s -Credential Domain01\User01

Cette commande crée un PSSession avec les mêmes propriétés qu’une existante PSSession. Vous pouvez utiliser ce format de commande lorsque les ressources d’une PSSession existante sont épuisées et qu’une newPSSession est nécessaire pour décharger une partie de la demande.

La commande utilise le paramètre Session de New-PSSession pour spécifier le PSSession enregistré dans la $s variable., Il utilise les informations d’identification de L’utilisateur Domain1\Admin01 pour terminer la commande.

Exemple 6: Créer une session avec une portée globale dans un domaine différent

$global:s = New-PSSession -ComputerName Server1.Domain44.Corpnet.Fabrikam.com -Credential Domain01\Admin01

Cet exemple montre comment créer un PSSession avec une portée globale sur un ordinateur dans un differentdomain.

par défaut, les objets PSSession créés en ligne de commande sont créés avec une portée locale et les objets PSSession créés dans un script ont une portée de script.

pour créer une PSSession avec une portée globale, créez une nouvelle PSSession, puis stockez thePSSession dans une variable qui est convertie en une portée globale., Dans ce cas, la variable $s est castto une portée globale.

la commande utilise le paramètre ComputerName pour spécifier l’ordinateur distant. Étant donné que l’ordinateur est dans un domaine différent du compte utilisateur, le nom complet de l’ordinateur est spécifié avec les informations d’identification de l’utilisateur.

Exemple 7: Créer des sessions pour de nombreux ordinateurs

$rs = Get-Content C:\Test\Servers.txt | New-PSSession -ThrottleLimit 50

Cette commande crée un PSSession sur chacune des 200 ordinateurs répertoriés dans les Serveurs.le fichier txt etdit stocke la PSSession résultante dans la variable $rs., Les objets PSSession ont une limite de trottle de 50.

Vous pouvez utiliser ce format de commande lorsque les noms des ordinateurs sont stockés dans une base de données, une feuille de calcul,un fichier texte ou un autre format convertible en texte.

Exemple 8: Créer une session à l’aide d’une URI

$s = New-PSSession -URI http://Server01:91/NewSession -Credential Domain01\User01

Cette commande crée un PSSession sur l’ordinateur Server01 et la stocke dans le $s variable. Il utilise le paramètre URI pour spécifier le protocole de transport, l’ordinateur distant, le port et la configuration de session analternate., Il utilise également le paramètre Credential pour spécifier un compte d’utilisateur qui a l’autorisation de créer une session sur l’ordinateur distant.

exemple 9: exécuter un travail en arrière-plan dans un ensemble de sessions

Ces commandes créent un ensemble d’objets PSSession, puis exécutent un travail en arrière-plan dans chacun des objets thePSSession.

la première commande crée une nouvelle session PSSession sur chacun des ordinateurs répertoriés dans les serveurs.txtfile. Il utilise l’applet de commande New-PSSession pour créer la session PSSession., La valeur du paramètre ComputerName est une commande qui utilise l’applet de commande Get-Content pour obtenir la liste des noms de l’ordinateur des serveurs.fichier txt.

la commande utilise le paramètre Credential pour créer les objets PSSession qui ont thepermission d’un administrateur de domaine, et elle utilise le paramètre ThrottleLimit pour limiter thecommand à 16 connexions simultanées. La commande enregistre les objets PSSession dans la variable $s.,

la deuxième commande utilise le paramètre AsJob de l’applet de commandeInvoke-Commandpour démarrer un backgroundjob qui exécute une commandeGet-Process PowerShelldans chacun des objets PSSession dans$s.

pour plus d’informations sur les tâches D’arrière-plan PowerShell, voir about_jobs et about_Remote_Jobs.

exemple 10: créer une session pour un ordinateur en utilisant son URI

New-PSSession -ConnectionURI https://management.exchangelabs.com/Management

Cette commande crée un objet PSSession qui se connecte à un ordinateur spécifié par un Uriau lieu d’un nom d’ordinateur.,

exemple 11: créer une option de session

cet exemple montre comment créer un objet d’option de session et utiliser le paramètre SessionOption.

la première commande utilise l’applet de commandeNew-PSSessionOption pour créer une option de session. Il enregistre l’objet sessionoption dans la variable $so.

La deuxième commande utilise l’option dans une nouvelle session. La commande utilise l’applet de commandeNew-PSSession pour créer une nouvelle session. La valeur du paramètre sessionoption est l’objet sessionoption dans la variable$so.,

exemple 12: créer une session en utilisant SSH

New-PSSession -HostName UserA@LinuxServer01

cet exemple montre comment créer une nouvelle PSSession en utilisant Secure Shell (SSH). Si SSH est configurésur l’ordinateur distant pour demander des mots de passe, vous obtiendrez une invite de mot de passe. Sinon, vous devrez utiliser L’authentification utilisateur basée sur une clé SSH.

exemple 13: créez une session en utilisant SSH et spécifiez le port et la clé d’authentification utilisateur

New-PSSession -HostName UserA@LinuxServer01:22 -KeyFilePath c:\\userAKey_rsa

cet exemple montre comment créer une session PSSession en utilisant Secure Shell (SSH)., Il utilise le Portparameter pour spécifier le port à utiliser et le paramètre KeyFilePath pour spécifier une clé RSA utilisée pour identifier et authentifier l’utilisateur sur l’ordinateur distant.

exemple 14: créer plusieurs sessions à L’aide de SSH

Cet exemple montre comment créer plusieurs sessions à l’aide de Secure Shell (SSH) et du jeu de paramètres theSSHConnection. Le paramètre SSHConnection prend un tableau de tables de hachage qui contiennent des informations de connexion pour chaque session. Notez que cet exemple nécessite que les ordinateurs targetremote aient SSH configuré pour prendre en charge l’authentification utilisateur basée sur la clé.,

Parameters

-AllowRedirection

indique que cette applet de commande permet la redirection de cette connexion vers un autre Identificateur de Ressource uniforme (URI).

lorsque vous utilisez le paramètre ConnectionURI, la destination distante peut renvoyer une instruction toredirect à un autre URI. Par défaut, PowerShell ne redirige pas les connexions, mais vous pouvez utiliser ce paramètre pour lui permettre de rediriger la connexion.

Vous pouvez également limiter le nombre de fois où la connexion est redirigée en modifiant la valeur de l’option de session maximumconnectionredirectioncount., Use the MaximumRedirection parameterof the New-PSSessionOption cmdlet or set the MaximumConnectionRedirectionCount property of the$PSSessionOption preference variable. The default value is 5.,

Type: SwitchParameter
Poste: Nom
valeur par Défaut: Aucun
Accepter pipeline d’entrée: False
Accepter les caractères génériques: False
-ApplicationName

Spécifie le nom de l’application segment de l’URI de connexion. Utilisez ce paramètre pour spécifier le nom de l’application lorsque vous n’utilisez pas le paramètre ConnectionURI dans la commande.,

la valeur par défaut est la valeur de la variable de préférence$PSSessionApplicationName sur l’ordinateur local. Si cette variable de préférence n’est pas définie, la valeur par défaut est WSMAN. Cette valeur est appropriée pour la plupart des utilisations. Pour plus d’informations, voirabout_preference_variables.

Le service WinRM utilise le nom de l’application pour sélectionner un écouteur pour traiter la demande de connexion.La valeur de ce paramètre doit correspondre à la valeur de la propriété URLPrefix d’un écouteur sur l’ordinateur distant.,

Type: String
Position: Named
Default value: None
Accept pipeline input: True
Accept wildcard characters: False
-Authentication

Specifies the mechanism that is used to authenticate the user’s credentials.,Les valeurs acceptées pour ce paramètre sont:

  • par Défaut
  • Base
  • Credssp
  • Digest
  • Kerberos
  • Négocier
  • NegotiateWithImplicitCredential

La valeur par défaut est Défaut.

pour plus d’informations sur les valeurs de ce paramètre, voir Enumeration deauthenticationmechanism.,

attention

L’authentification CredSSP (Credential Security Support Provider), dans laquelle les informations d’identification de l’utilisateur sont transmises à un ordinateur distant pour être authentifiées, est conçue pour les commandes nécessitant une authentification sur plusieurs ressources, telles que l’accès à un partage réseau distant. Ce mécanismeaugmente le risque de sécurité de l’opération à distance. Si l’ordinateur distant est compromis, lecrédentiels qui lui sont transmis peuvent être utilisés pour contrôler la session réseau.,div>

Type: AuthenticationMechanism Accepted values: Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos Position: Named Default value: None Accept pipeline input: False Accept wildcard characters: False
-CertificateThumbprint

Specifies the digital public key certificate (X509) of a user account that has permission to performthis action., Entrez l’empreinte numérique du certificat.

Les certificats sont utilisés dans l’authentification basée sur un certificat client. Ils ne peuvent être mappés qu’aux comptes localuser; ils ne fonctionnent pas avec les comptes de domaine.

Pour obtenir un certificat, utilisez la balise Get-Item ou Get-ChildItem commande dans le PowerShell Cert:lecteur.,

Type: String
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-ComputerName

Specifies an array of names of computers. This cmdlet creates a persistent connection(PSSession) to the specified computer., Si vous entrez plusieurs noms d’ordinateur, New-PSSessioncrée plusieurs objets PSSession, un pour chaque ordinateur. La valeur par défaut est l’ordinateur local.

Saisissez le nom NetBIOS, une adresse IP ou un nom de domaine complet d’un ou plusieurs ordinateurs distants. Pour spécifier l’ordinateur local, tapez le nom de l’ordinateur, localhost, ou un point (.). Lorsque l’ordinateur est dans un domaine différent de l’utilisateur, le nom de domaine pleinement qualifié est nécessaire. Vous pouvez également diriger un nom d’ordinateur, entre guillemets, vers New-PSSession.,

Pour utiliser une adresse IP dans la valeur du paramètre ComputerName, la commande doit inclure le paramètre Credential. En outre, l’ordinateur doit être configuré pour le transport HTTPS ou L’adresse IP de l’ordinateur distant doit être incluse dans la liste WinRM TrustedHosts sur l’ordinateur local. Pour obtenir des instructions sur l’ajout d’un nom d’ordinateur à la liste TrustedHosts, consultez « Comment ajouter un ordinateur à la liste des hôtes de confiance » dansabout_remote_troubleshooting.

Pour inclure l’ordinateur local dans la valeur du paramètre ComputerName, commencer WindowsPowerShell en utilisant l’option Exécuter en tant qu’administrateur.,

Type: String
Aliases: Cn
Position: 0
Default value: None
Accept pipeline input: True
Accept wildcard characters: False
-ConfigurationName

Specifies the session configuration that is used for the new PSSession.

Enter a configuration name or the fully qualified resource URI for a session configuration., Si vous spécifiez uniquement le nom de la configuration, L’URI de schéma suivant est ajouté au début:

The session configuration for a session is located on the remote computer. If the specified sessionconfiguration does not exist on the remote computer, the command fails.

The default value is the value of the $PSSessionConfigurationName variable de préférence sur l’ordinateur local. Si cette variable de préférence n’est pas définie, la valeur par défaut est Microsoft.PowerShell. Pour plus d’informations, voir about_Preference_Variables.,

Type: String
Position: Named
Default value: None
Accept pipeline input: True
Accept wildcard characters: False
-ConnectionUri

Specifies a URI that defines the connection endpoint for the session. The URI must be fullyqualified., Le format de cette chaîne est comme suit:

<Transport>://<ComputerName>:<Port>/<ApplicationName>

La valeur par défaut est comme suit:

If you do not specify a ConnectionURI, you can use the UseSSL, ComputerName, Port, andApplicationName parameters to specify the ConnectionURI values.

Valid values for the Transport segment of the URI are HTTP and HTTPS. If you specify a connectionURI with a Transport segment, but do not specify a port, the session is created with standardsports: 80 for HTTP and 443 for HTTPS. To use the default ports for PowerShell remoting, specify port5985 for HTTP or 5986 for HTTPS.

If the destination computer redirects the connection to a different URI, PowerShell prevents theredirection unless you use the AllowRedirection parameter in the command.

Type: Uri
Aliases: URI, CU
Position: 0
Default value: None
Accept pipeline input: True
Accept wildcard characters: False
-ContainerId

Specifies an array of IDs of containers. This cmdlet starts an interactive session with each of thespecified containers. Use the docker ps commande pour obtenir une liste des identificateurs de conteneurs. Pour plus d’informations, reportez-vous à l’aide de la commande thedocker ps.,

Type: Chaîne
Poste: Nom
valeur par Défaut: Aucun
Accepter pipeline d’entrée: True
Accepter les caractères génériques: False
-Credential

Spécifie un compte d’utilisateur qui a la permission de faire cette action. La valeur par défaut est l’utilisateur actuel.

tapez un nom d’utilisateur, tel que User01 ou Domain01\User01, ou entrez un objet PSCredential généré par l’applet de commandeGet-Credential., Si vous saisissez un nom d’utilisateur, vous êtes invité à saisir thepassword.

Les informations d’identification sont stockées dans un PSCredentialobject et le mot de passe est stocké en tant que SecureString.

Remarque

Pour plus d’informations sur la protection des données SecureString, voir comment sécurisé est SecureString?.,

Type: PSCredential
Poste: Nom
valeur par Défaut: Actuelle de l’utilisateur
Accepter pipeline d’entrée: True
Accepter les caractères génériques: False
-EnableNetworkAccess

Indique que cette commande ajoute un interactive jeton de sécurité de bouclage des séances. Interactivetoken vous permet d’exécuter des commandes dans la session de bouclage qui obtiennent des données d’autres ordinateurs., Par exemple, vous pouvez exécuter une commande dans la session qui copie les fichiers XML d’un ordinateur distant vers l’ordinateur local.

une session de bouclage est une session PSSession qui commence et se termine sur le même ordinateur. Pour créer une session aloopback, omettez le paramètre ComputerName ou définissez sa valeur sur dot (.), localhost, ou le nom de l’ordinateur local.

par défaut, cette applet de commande crée des sessions de bouclage à l’aide d’un jeton réseau, qui peut ne pas fournir une autorisation suffisante pour s’authentifier sur des ordinateurs distants.

Le paramètre EnableNetworkAccess n’est efficace que dans les sessions de bouclage., Si vous utilisezenablenetworkaccess lorsque vous créez une session sur un ordinateur distant, la commande réussit, mais le paramètre est ignoré.

Vous pouvez également activer l’accès à distance dans une session de bouclage en utilisant la valeur CredSSP du paramètre theAuthentication, qui délègue les informations d’identification de session à d’autres ordinateurs.

pour protéger l’ordinateur contre les accès malveillants, les sessions de bouclage déconnectées qui ont interactivetokens, qui sont celles créées à l’aide du paramètre EnableNetworkAccess, peuvent être reconnectéeseulement à partir de l’ordinateur sur lequel la session a été créée., Les sessions déconnectées qui utilisent CredSSPauthentication peuvent être reconnectées à partir d’autres ordinateurs. Pour plus d’informations, voirDisconnect-PSSession.

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

Type: SwitchParameter
Poste: Nom
valeur par Défaut: Aucun
Accepter pipeline d’entrée: False
Accepter les caractères génériques: False
-nom d’hôte

Spécifie un tableau de noms d’ordinateur pour un Shell Sécurisé (SSH) en fonction de la connexion. Ceci est similaire àle paramètre ComputerName sauf que la connexion à l’ordinateur distant est faite en utilisant SSHrather que Windows WinRM.,

This parameter was introduced in PowerShell 6.0.

Type: String
Position: 0
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-KeyFilePath

Specifies a key file path used by Secure Shell (SSH) to authenticate a user on a remote computer.,

SSH permet d’effectuer l’authentification utilisateur via des clés privées / publiques comme alternative à l’authentification basicpassword. Si l’ordinateur distant est configuré pour l’authentification par clé, thisparameter peut être utilisé pour fournir la clé qui identifie l’utilisateur.

Ce paramètre a été introduit dans PowerShell 6.0.,

Type: String
Aliases: IdentityFilePath
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Name

Specifies a friendly name for the PSSession.

You can use the name to refer to the PSSession when you use other cmdlets, such asGet-PSSession and Enter-PSSession., Il n’est pas nécessaire que le nom soit unique à l’ordinateur ou à la session en cours.

Type: Chaîne
Poste: Nom
valeur par Défaut: Aucun
Accepter pipeline d’entrée: False
Accepter les caractères génériques: False
Port

Spécifie le port réseau de l’ordinateur distant qui est utilisé pour cette connexion., Pour se connecter à aremote computer, l’ordinateur distant doit être à l’écoute sur le port utilisé par la connexion. Les ports par défaut sont 5985, qui est le port WinRM pour HTTP, et 5986, qui est le port WinRM pourhttps.

avant d’utiliser un autre port, vous devez configurer L’écouteur WinRM sur L’ordinateur distant pour écouter ce port. Utilisez les commandes suivantes pour configurer le port d’écoute:

  1. winrm delete winrm/config/listener?Address=*+Transport=HTTP
  2. winrm create winrm/config/listener?Address=*+Transport=HTTP @{Port="\<port-number\>"}

Ne pas utiliser le paramètre de Port, sauf si vous devez., Le paramètre port de la commande s’applique à tousordinateurs ou sessions sur lesquels la commande s’exécute. Un autre paramètre de port peut empêcher l’exécution de la commandefrom sur tous les ordinateurs.

Type: Int32
Poste: Nom
valeur par Défaut: Aucun
Accepter pipeline d’entrée: False
Accepter les caractères génériques: False
-RunAsAdministrator

Indique que le PSSession s’exécute en tant qu’administrateur.,

Type: SwitchParameter
Poste: Nom
valeur par Défaut: Aucun
Accepter pipeline d’entrée: False
Accepter les caractères génériques: False
Session

Spécifie un tableau de Possession des objets que cette applet de commande utilise comme un modèle pour la newPSSession. Ce paramètre crée de nouveaux objets PSSession qui ont les mêmes propriétés que les objets PSSession spécifiés.,

Entrez une variable qui contient la Possession d’objets ou d’une commande qui crée ou se thePSSession objets, comme une New-PSSession ou Get-PSSession commande.

Les objets PSSession résultants ont le même nom d’Ordinateur, nom d’application, URI de connexion,port, nom de configuration, limite d’accélération et valeur SSL (Secure Sockets Layer) que les originaux, mais ils ont un nom d’affichage, un ID et un ID d’instance différents (GUID).,

Type: PSSession
Position: 0
Default value: None
Accept pipeline input: True
Accept wildcard characters: False
-SessionOption

Specifies advanced options for the session., Entrez un objet sessionoption, tel que celui que vous créez en utilisant l’applet de commande New-PSSessionOption, ou une table de hachage dans laquelle les clés sont des noms sessionoption et les valeurs sont des valeurs d’option de session.

Les valeurs par défaut des options sont déterminées par la valeur de $PSSessionOption preferencevariable, si elle est définie. Sinon, les valeurs par défaut sont établies par les options définies dans sessionconfiguration.,

Les valeurs de l’option session ont priorité sur les valeurs par défaut pour les sessions définies dans la variable de préférence$PSSessionOption et dans la configuration de session. Cependant, ils ne prennent pas de priorité sur les valeurs maximales, les quotas ou les limites définis dans la configuration de la session.

pour une description des options de session incluant les valeurs par défaut, voirNew-PSSessionOption. Pour plus d’informations sur la variable de préférence $PSSessionOption, voirabout_preference_variables. Pour plus d’informations sur les configurations de session, consultez about_Session_Configurations.,

Type: PSSessionOption
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-SSHConnection

This parameter takes an array of hashtables where each hashtable contains one or more connectionparameters needed to establish a Secure Shell (SSH) connection (HostName, Port, UserName,KeyFilePath).,

Les paramètres de connexion hashtable sont les mêmes que ceux définis pour le jeu de paramètres HostName.

Le paramètre SSHConnection est utile pour créer plusieurs sessions où chaque session nécessite différentes informations de connexion.

Ce paramètre a été introduit dans PowerShell 6.0.,

Type: Hashtable
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-SSHTransport

Indicates that the remote connection is established using Secure Shell (SSH).

By default PowerShell uses Windows WinRM to connect to a remote computer., Ce commutateur forcesPowerShell pour utiliser le paramètre HostName défini pour établir une connexion distante basée sur SSH.

Ce paramètre a été introduit dans PowerShell 6.0.,

Type: SwitchParameter
Accepted values: true
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-Subsystem

Specifies the SSH subsystem used for the new PSSession.

This specifies the subsystem to use on the target as defined in sshd_config.,Le sous-système démarre une version spécifique de PowerShell avec des paramètres prédéfinis.Si le sous-système spécifié n’existe pas sur l’ordinateur distant, la commande échoue.

Si ce paramètre n’est pas utilisé, la valeur par défaut est le « powershell » sous-système.,

Type: Chaîne
Poste: Nom
valeur par Défaut: powershell
Accepter pipeline d’entrée: True
Accepter les caractères génériques: False
-ThrottleLimit

Spécifie le nombre maximal de connexions simultanées qui peuvent être établis pour l’exécution de cette commande.Si vous omettez ce paramètre, ou entrez une valeur de 0 (zéro), la valeur par défaut, 32, est utilisé.,

Le papillon limite s’applique uniquement à la commande en cours, pas à la séance ou à l’ordinateur.

Type: Int32
Poste: Nom
valeur par Défaut: Aucun
Accepter pipeline d’entrée: False
Accepter les caractères génériques: False
-nom d’utilisateur

Spécifie le nom d’utilisateur pour le compte utilisé pour créer une session sur l’ordinateur distant., La méthode Userauthentication dépendra de la configuration de Secure Shell (SSH) sur l’ordinateur distant.

Si SSH est configuré pour l’authentification par mot de passe de base, vous serez invité à saisir userpassword.

Si SSH est configuré pour l’authentification utilisateur basée sur la clé, un chemin de fichier de clé peut être fourni via le paramètre keyfilepath et aucune invite de mot de passe ne se produira. Notez que si le fichier de clé Utilisateur client est situé dans un emplacement connu SSH, le paramètre KeyFilePath n’est pas nécessaire pour l’authentification de la clé basedauthentication, et l’authentification de l’utilisateur se produira automatiquement en fonction du nom d’utilisateur., Voir SSHdocumentation sur l’authentification utilisateur basée sur la clé pour plus d’informations.

Ce n’est pas un paramètre obligatoire. Si aucun paramètre UserName n’est spécifié, le nom d’utilisateur actuel est utilisé pour la connexion.

Ce paramètre a été introduit dans PowerShell 6.0.,

Type: Chaîne
Poste: Nom
valeur par Défaut: Aucun
Accepter pipeline d’entrée: False
Accepter les caractères génériques: False
-UseSSL

Indique que cette applet de commande utilise le protocole SSL pour établir une connexion à distance computer.By par défaut, le protocole SSL n’est pas utilisé.

WS-Management crypte tout le contenu PowerShell transmis sur le réseau., Le UseSSLparameter offre une protection supplémentaire qui envoie les données à travers une connexion HTTPS au lieu d’une connexion HTTP.

Si vous utilisez ce paramètre, mais que SSL n’est pas disponible sur le port utilisé pour la commande, thecommand échoue.,e

Accept wildcard characters: False
-UseWindowsPowerShell

{{ Fill UseWindowsPowerShell Description }}

Type: SwitchParameter
Position: Named
Default value: None
Accept pipeline input: False
Accept wildcard characters: False
-VMId

Specifies an array of ID of virtual machines., Cette applet de commande démarre une session interactive avec chacune des machines virtuelles spécifiées., To see the virtual machines that are available to you, use thefollowing command:

Get-VM | Select-Object -Property Name, ID

Type: Guid
Aliases: VMGuid
Position: 0
Default value: None
Accept pipeline input: True
Accept wildcard characters: False
-VMName

Specifies an array of names of virtual machines., Cette applet de commande démarre une session interactive avec chaquedes machines virtuelles spécifiées. Pour voir les machines virtuelles qui sont à votre disposition, utilisez l’applet de commandeGet-VM.

Type: Chaîne
Poste: Nom
valeur par Défaut: Aucun
Accepter pipeline d’entrée: True
Accepter les caractères génériques: False

les Entrées

Système.Chaîne, Système.URI, système.Gestion.Automatisation.Instances d’exécution.,PSSession

Vous pouvez canaliser une chaîne, un URI ou un objet session vers cette applet de commande.

Outputs

PSSession

Notes

  • cette applet de commande utilise L’infrastructure à distance PowerShell. Pour utiliser cette applet de commande, l’ordinateur local et tous les ordinateurs distants doivent être configurés pour PowerShell remoting. Pour plus d’informations, voir about_Remote_Requirements.
  • pour créer une PSSession sur l’ordinateur local, démarrez PowerShell avec L’option Exécuter en tant qu’administratoroption.,
  • lorsque vous avez terminé la PSSession, utilisez l’applet de commande Remove-PSSession pour supprimer thePSSession et libérer ses ressources.
  • Les ensembles de paramètres HostName et SSHConnection ont été inclus à partir de PowerShell 6.0.Ils ont été ajoutés pour fournir PowerShell remoting basé sur Secure Shell (SSH). SSH et PowerShell sont pris en charge sur plusieurs plates-formes (Windows, Linux, macOS) et PowerShell remotingwill fonctionnera sur ces plates-formes où PowerShell et SSH sont installés et configurés., Ceci isseparate de Windows précédent seulement remoting qui est basé sur WinRM et une grande partie des caractéristiques et limitations WinRMspecific ne s’appliquent pas. Par exemple, les quotas basés sur WinRM,les options de session, la configuration personnalisée du point de terminaison et les fonctionnalités de déconnexion/reconnexion ne sont actuellement pas prises en charge. Formore informations sur la façon de configurer PowerShell SSH remoting, seePowerShell Remoting via SSH.,
  • Connectez-PSSession
  • se Déconnecter-PSSession
  • Entrée-PSSession
  • Sortie-PSSession
  • Get-PSSession
  • Invoke-Command
  • Réception-PSSession
  • Supprimer-PSSession