New-PSSession
Állandó kapcsolatot hoz létre egy helyi vagy távoli számítógéppel.
Syntax
New-PSSession
[[-ComputerName] <String[]>]
[-Credential <PSCredential>]
[-Name <String[]>]
[-EnableNetworkAccess]
[-ConfigurationName <String>]
[-Port <Int32>]
[-UseSSL]
[-ApplicationName <String>]
[-ThrottleLimit <Int32>]
[-SessionOption <PSSessionOption>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[<CommonParameters>]
New-PSSession
[-Credential <PSCredential>]
[-Name <String[]>]
[-EnableNetworkAccess]
[-ConfigurationName <String>]
[-ThrottleLimit <Int32>]
[-ConnectionUri] <Uri[]>
[-AllowRedirection]
[-SessionOption <PSSessionOption>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[<CommonParameters>]
New-PSSession
-Credential <PSCredential>
[-Name <String[]>]
[-ConfigurationName <String>]
[-VMId] <Guid[]>
[-ThrottleLimit <Int32>]
[<CommonParameters>]
New-PSSession
-Credential <PSCredential>
[-Name <String[]>]
[-ConfigurationName <String>]
-VMName <String[]>
[-ThrottleLimit <Int32>]
[<CommonParameters>]
New-PSSession
[[-Session] <PSSession[]>]
[-Name <String[]>]
[-EnableNetworkAccess]
[-ThrottleLimit <Int32>]
[<CommonParameters>]
New-PSSession
[-Name <String[]>]
[-ConfigurationName <String>]
-ContainerId <String[]>
[-RunAsAdministrator]
[-ThrottleLimit <Int32>]
[<CommonParameters>]
New-PSSession
[-Name <String[]>]
[-UseWindowsPowerShell]
[<CommonParameters>]
New-PSSession
[-Name <String[]>]
[-Port <Int32>]
[-HostName] <String[]>
[-UserName <String>]
[-KeyFilePath <String>]
[-Subsystem <String>]
[-ConnectingTimeout <Int32>]
[-SSHTransport]
[-Options <Hashtable>]
[<CommonParameters>]
New-PSSession
[-Name <String[]>]
-SSHConnection <Hashtable[]>
[<CommonParameters>]
Description
A New-PSSession
parancsmag létrehoz egy PowerShell-munkamenetet (PSSession) egy helyi vagy távoli számítógépen. PSSession létrehozásakor a PowerShell állandó kapcsolatot létesít a távoli számítógéppel.
PsSession használatával több olyan parancsot futtathat, amelyek adatokat osztanak meg, például egy függvényt vagy egy változó értékét. A parancsok PSSession-ben való futtatásához használja a Invoke-Command
parancsmagot. Ha a PSSession használatával közvetlenül szeretne kommunikálni egy távoli számítógéppel, használja a Enter-PSSession
parancsmagot. További információ: about_PSSessions.
Parancsokat futtathat távoli számítógépen anélkül, hogy PSSessiont hozna létre a Számítógépnév vagy Enter-PSSession
Invoke-Command
a . A ComputerName paraméter használatakor a PowerShell létrehoz egy ideiglenes kapcsolatot, amelyet a parancs használ, majd bezár.
A PowerShell 6.0-tól kezdve a Secure Shell (SSH) használatával létesíthet kapcsolatot és hozhat létre munkamenetet egy távoli számítógépen, ha az SSH elérhető a helyi számítógépen, és a távoli számítógép powerShell SSH-végponttal van konfigurálva. Az SSH-alapú Távoli PowerShell-munkamenet előnye, hogy több platformon (Windows, Linux, macOS) is használható. SSH-alapú munkamenetek esetén a HostName vagy az SSH Csatlakozás ion paraméterkészlettel adja meg a távoli számítógépet és a kapcsolódó kapcsolati adatokat. A PowerShell SSH-remoting beállításával kapcsolatos további információkért lásd : PowerShell Remoting Over SSH.
Feljegyzés
Ha olyan Linux- vagy macOS-ügyfélről használ WSMan-remotingot, amely https-végponttal rendelkezik, ahol a kiszolgálótanúsítvány nem megbízható (például önaláírt tanúsítvány). Meg kell adnia egy PSSessionOption értéket, amely tartalmazza a SkipCACheck és a SkipCNCheck értékeket $true
a kapcsolat sikeres létrehozásához. Ezt csak akkor tegye, ha olyan környezetben van, ahol biztos lehet a kiszolgálótanúsítványban és a célrendszerhez való hálózati kapcsolatban.
Példák
1. példa: Munkamenet létrehozása a helyi számítógépen
$s = New-PSSession
Ez a parancs létrehoz egy új PSSession-t a helyi számítógépen, és menti a PSSessiont a $s
változóba.
Ezzel a PSSession használatával parancsokat futtathat a helyi számítógépen.
2. példa: Munkamenet létrehozása távoli számítógépen
$Server01 = New-PSSession -ComputerName Server01
Ez a parancs létrehoz egy új PSSession-t a Server01 számítógépen, és menti a $Server01
változóba.
Több PSSession-objektum létrehozásakor rendelje hozzá őket hasznos névvel rendelkező változókhoz. Ez segít kezelni a PSSession objektumokat a következő parancsokban.
3. példa: Munkamenetek létrehozása több számítógépen
$s1, $s2, $s3 = New-PSSession -ComputerName Server01,Server02,Server03
Ez a parancs három PSSession objektumot hoz létre, egyet a ComputerName paraméter által megadott számítógépeken.
A parancs a hozzárendelési operátort (=
) használja az új PSSession-objektumok változókhoz való hozzárendeléséhez: $s1
, , $s2
$s3
. Hozzárendeli a Server01 PSSession-t$s1
, a Server02 PSSession-t$s2
és a Server03 PSSession-t.$s3
Ha több objektumot rendel egy változósorozathoz, a PowerShell az egyes objektumokat az adatsor egy változóhoz rendeli. Ha több objektum van, mint változó, a rendszer az összes többi objektumot az utolsó változóhoz rendeli hozzá. Ha az objektumoknál több változó van, a fennmaradó változók üresek ($null
).
4. példa: Munkamenet létrehozása megadott porttal
New-PSSession -ComputerName Server01 -Port 8081 -UseSSL -ConfigurationName E12
Ez a parancs létrehoz egy új PSSession-t a Kiszolgáló01 számítógépen, amely csatlakozik a kiszolgálóporthoz 8081
, és az SSL protokollt használja. Az új PSSession egy másik, úgynevezett munkamenet-konfigurációt E12
használ.
A port beállítása előtt konfigurálnia kell a WinRM-figyelőt a távoli számítógépen a 8081-s port figyelésére. További információt a Port paraméter leírásában talál.
5. példa: Munkamenet létrehozása meglévő munkamenet alapján
New-PSSession -Session $s -Credential Domain01\User01
Ez a parancs olyan PSSession-t hoz létre, amely ugyanazokkal a tulajdonságokkal rendelkezik, mint egy meglévő PSSession. Ezt a parancsformátumot akkor használhatja, ha egy meglévő PSSession erőforrásai kimerültek, és új PSSession szükséges az igény egy részének kiszervezéséhez.
A parancs a Munkamenet paramétert New-PSSession
használja a változóban mentett PSSession megadásához$s
. A parancs végrehajtásához a Domain1\Admin01
felhasználó hitelesítő adatait használja.
6. példa: Munkamenet létrehozása globális hatókörrel egy másik tartományban
$global:s = New-PSSession -ComputerName Server1.Domain44.Corpnet.Fabrikam.com -Credential Domain01\Admin01
Ez a példa bemutatja, hogyan hozhat létre psSession-t globális hatókörrel egy másik tartományban lévő számítógépen.
Alapértelmezés szerint a parancssorban létrehozott PSSession-objektumok helyi hatókörrel, a szkriptekben létrehozott PSSession-objektumok pedig szkripthatókörrel rendelkeznek.
Ha globális hatókörű PSSessiont szeretne létrehozni, hozzon létre egy új PSSessiont, majd tárolja a PSSessiont egy globális hatókörbe leadott változóban. Ebben az esetben a $s
változó globális hatókörbe kerül.
A parancs a ComputerName paramétert használja a távoli számítógép megadásához. Mivel a számítógép más tartományban van, mint a felhasználói fiók, a számítógép teljes neve a felhasználó hitelesítő adataival együtt van megadva.
7. példa: Munkamenetek létrehozása számos számítógéphez
$rs = Get-Content C:\Test\Servers.txt | New-PSSession -ThrottleLimit 50
Ez a parancs létrehoz egy PSSession-t a fájlban Servers.txt
felsorolt 200 számítógépen, és az eredményül kapott PSSessiont a $rs
változóban tárolja. A PSSession objektumok szabályozható korlátja a 50
.
Ezt a parancsformátumot akkor használhatja, ha a számítógépek neve adatbázisban, számolótáblában, szövegfájlban vagy más szövegkonvertáló formátumban van tárolva.
8. példa: Munkamenet létrehozása URI használatával
$s = New-PSSession -URI http://Server01:91/NewSession -Credential Domain01\User01
Ez a parancs létrehoz egy PSSession-t a Server01 számítógépen, és tárolja a $s
változóban. Az URI paraméter használatával adja meg az átviteli protokollt, a távoli számítógépet, a portot és egy alternatív munkamenet-konfigurációt. Emellett a Hitelesítő adatok paramétert használja egy olyan felhasználói fiók megadására, amely jogosult munkamenet létrehozására a távoli számítógépen.
9. példa: Háttérfeladat futtatása munkamenetek halmazában
$s = New-PSSession -ComputerName (Get-Content Servers.txt) -Credential Domain01\Admin01 -ThrottleLimit 16
Invoke-Command -Session $s -ScriptBlock {Get-Process PowerShell} -AsJob
Ezek a parancsok PSSession-objektumok készletét hozzák létre, majd futtatnak egy háttérfeladatot az egyes PSSession-objektumokban.
Az első parancs létrehoz egy új PSSession-t a fájlban Servers.txt
felsorolt összes számítógépen. A parancsmag használatával New-PSSession
hozza létre a PSSessiont. A ComputerName paraméter értéke egy parancs, amely a Get-Content
parancsmagot használja a fájl számítógépneveinek listájának lekéréséhezServers.txt
.
A parancs a Hitelesítő paraméterrel hozza létre a tartományi rendszergazda engedélyével rendelkező PSSession-objektumokat , és a ThrottleLimit paraméterrel korlátozza a parancsot az egyidejű kapcsolatokra 16
. A parancs menti a PSSession objektumokat a $s
változóban.
A második parancs a parancsmag AsJob paraméterével Invoke-Command
indít el egy háttérfeladatot, amely egy Get-Process PowerShell
parancsot futtat az egyes PSSession-objektumokban$s
.
További információ a PowerShell háttérfeladatairól: about_Jobs és about_Remote_Jobs.
10. példa: Munkamenet létrehozása számítógéphez az URI használatával
New-PSSession -ConnectionURI https://management.exchangelabs.com/Management
Ez a parancs létrehoz egy PSSession objektumot, amely számítógépnév helyett egy URI által megadott számítógéphez csatlakozik.
11. példa: Munkamenet-beállítás létrehozása
$so = New-PSSessionOption -SkipCACheck
New-PSSession -ConnectionUri https://management.exchangelabs.com/Management -SessionOption $so -Credential Server01\Admin01
Ez a példa bemutatja, hogyan hozhat létre munkamenet-beállításobjektumot, és hogyan használhatja a SessionOption paramétert .
Az első parancs a New-PSSessionOption
parancsmaggal hoz létre egy munkamenet-beállítást. Menti az eredményül kapott SessionOption objektumot a $so
változóban.
A második parancs egy új munkamenetben használja a lehetőséget. A parancs a New-PSSession
parancsmaggal hoz létre egy új munkamenetet. A SessionOption paraméter értéke a változó SessionOption objektuma$so
.
12. példa: Munkamenet létrehozása SSH használatával
New-PSSession -HostName UserA@LinuxServer01
Ez a példa bemutatja, hogyan hozhat létre új PSSession-t a Secure Shell (SSH) használatával. Ha az SSH úgy van konfigurálva a távoli számítógépen, hogy jelszavakat kérjen, egy jelszókérést fog kapni. Ellenkező esetben SSH-kulcsalapú felhasználói hitelesítést kell használnia.
13. példa: Munkamenet létrehozása SSH használatával, és a port és a felhasználó hitelesítési kulcsának megadása
New-PSSession -HostName UserA@LinuxServer01:22 -KeyFilePath c:\<path>\userAKey_rsa
Ez a példa bemutatja, hogyan hozható létre PSSession a Secure Shell (SSH) használatával. A Port paraméter használatával adja meg a használni kívánt portot, a KeyFilePath paraméter pedig egy RSA-kulcsot, amellyel azonosíthatja és hitelesítheti a felhasználót a távoli számítógépen.
14. példa: Több munkamenet létrehozása SSH használatával
$sshConnections = @(
@{
HostName = 'WinServer1'
UserName = 'domain\userA'
KeyFilePath = 'c:\users\UserA\id_rsa'
}
@{
HostName = 'UserB@LinuxServer5'
KeyFilePath = 'c:\UserB\<path>\id_rsa'
}
)
New-PSSession -SSHConnection $sshConnections
Ez a példa bemutatja, hogyan hozhat létre több munkamenetet a Secure Shell (SSH) és az SSH Csatlakozás ion paraméterkészlet használatával. Az SSH Csatlakozás ion paraméter az egyes munkamenetek kapcsolati adatait tartalmazó kivonattáblák tömbjét használja. Vegye figyelembe, hogy ez a példa megköveteli, hogy a cél távoli számítógépek SSH-t konfigurálva támogassák a kulcsalapú felhasználói hitelesítést.
15. példa: Új munkamenet létrehozása SSH-beállítások használatával
$options = @{
Port=22
User = 'UserB'
Host = 'LinuxServer5'
}
New-PSSession -KeyFilePath '/Users/UserB/id_rsa' -Options $options
Ez a példa bemutatja, hogyan hozhat létre egy új SSH-alapú munkamenetet távoli Linux-alapú gépként SSH-beállítások használatával. A Beállítások paraméter azokat az értékeket kivonatolhatja, amelyeket a rendszer a távoli rendszerrel létesített kapcsolat létesített alapjául szolgáló ssh
parancsnak ad át beállításokként.
Paraméterek
-AllowRedirection
Azt jelzi, hogy ez a parancsmag lehetővé teszi a kapcsolat átirányítását egy alternatív egységes erőforrás-azonosítóra (URI).
A Csatlakozás ionURI paraméter használatakor a távoli cél egy utasítást adhat vissza egy másik URI-ra való átirányításhoz. A PowerShell alapértelmezés szerint nem irányítja át a kapcsolatokat, de ezzel a paramétersel engedélyezheti a kapcsolat átirányítását.
A Maximális Csatlakozás ionRedirectionCount munkamenet beállításértékének módosításával azt is korlátozhatja, hogy a rendszer hányszor irányítsa át a kapcsolatot. Használja a parancsmag MaximumRedirection paraméterétNew-PSSessionOption
, vagy állítsa be a $PSSessionOption beállítási változó Maximum Csatlakozás ionRedirectionCount tulajdonságát. Az alapértelmezett érték 5
.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ApplicationName
Megadja a kapcsolati URI alkalmazásnév-szegmensét. Ezzel a paraméterrel adhatja meg az alkalmazás nevét, ha nem használja a Csatlakozás ionURI paramétert a parancsban.
Az alapértelmezett érték a helyi számítógépen található $PSSessionApplicationName
beállítási változó értéke. Ha ez a beállításváltozó nincs definiálva, az alapértelmezett érték az WSMAN
. Ez az érték a legtöbb felhasználáshoz megfelelő. További információ: about_Preference_Variables.
A WinRM szolgáltatás az alkalmazás nevével választ ki egy figyelőt a kapcsolatkérés kiszolgálásához. A paraméter értékének meg kell egyeznie a távoli számítógépen lévő figyelő URLPrefix tulajdonságának értékével.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Authentication
Megadja a felhasználó hitelesítő adatainak hitelesítéséhez használt mechanizmust. A paraméter elfogadható értékei a következők:
Default
Basic
Credssp
Digest
Kerberos
Negotiate
NegotiateWithImplicitCredential
Az alapértelmezett érték Default
.
A paraméter értékeivel kapcsolatos további információkért lásd : AuthenticationMechanism Enumeration.
Figyelemfelhívás
A hitelesítő adatok biztonsági támogatási szolgáltatójának (CredSSP) hitelesítése, amelyben a felhasználói hitelesítő adatok átadva vannak egy hitelesítendő távoli számítógépnek, olyan parancsokhoz készült, amelyek több erőforráson is hitelesítést igényelnek, például távoli hálózati megosztáshoz való hozzáféréshez. Ez a mechanizmus növeli a távoli művelet biztonsági kockázatát. Ha a távoli számítógép biztonsága sérül, a neki átadott hitelesítő adatokkal szabályozható a hálózati munkamenet.
Type: | AuthenticationMechanism |
Accepted values: | Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CertificateThumbprint
Egy olyan felhasználói fiók digitális nyilvános kulcsú tanúsítványát (X509) adja meg, amely jogosult a művelet végrehajtására. Adja meg a tanúsítvány ujjlenyomatát.
A tanúsítványok az ügyféltanúsítvány-alapú hitelesítésben használatosak. Ezek csak helyi felhasználói fiókokra képezhetők le; nem működnek tartományi fiókokkal.
Tanúsítvány beszerzéséhez használja a Get-Item
PowerShell-meghajtón Cert:
található parancsot.Get-ChildItem
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ComputerName
A számítógépek nevének tömbje. Ez a parancsmag állandó kapcsolatot (PSSession) hoz létre a megadott számítógéppel. Ha több számítógépnevet ad meg, New-PSSession
több PSSession objektumot hoz létre, egyet minden számítógéphez. Alapértelmezés szerint a helyi számítógép.
Írja be egy vagy több távoli számítógép NetBIOS-nevét, IP-címét vagy teljes tartománynevét. A helyi számítógép megadásához írja be a számítógép nevét vagy localhost
pontját (.
). Ha a számítógép más tartományban van, mint a felhasználó, a teljes tartománynévre van szükség.
A számítógép nevét idézőjelek között is becsúszthatja a következőre New-PSSession
: .
Ha IP-címet szeretne használni a ComputerName paraméter értékében, a parancsnak tartalmaznia kell a hitelesítő adatot. Emellett a számítógépet HTTPS-átvitelre kell konfigurálni, vagy a távoli számítógép IP-címét fel kell venni a helyi számítógép WinRM TrustedHosts listájába. A számítógépnév TrustedHosts-listához való hozzáadására vonatkozó utasításokért tekintse meg a about_Remote_Troubleshooting "Számítógép hozzáadása a megbízható gazdagéplistához" című témakört.
Ha a helyi számítógépet fel szeretné venni a ComputerName paraméter értékére, indítsa el a Windows PowerShellt a Futtatás rendszergazdaként lehetőséggel.
Type: | String[] |
Aliases: | Cn |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ConfigurationName
Megadja az új PSSession-hez használt munkamenet-konfigurációt.
Adja meg a konfiguráció nevét vagy a munkamenet-konfiguráció teljes erőforrás-URI-címét. Ha csak a konfiguráció nevét adja meg, a rendszer a következő séma URI-ját előpendálta: http://schemas.microsoft.com/PowerShell
.
Egy munkamenet munkamenet-konfigurációja a távoli számítógépen található. Ha a megadott munkamenet-konfiguráció nem létezik a távoli számítógépen, a parancs meghiúsul.
Az alapértelmezett érték a helyi számítógépen található $PSSessionConfigurationName
beállítási változó értéke. Ha ez a beállítási változó nincs beállítva, az alapértelmezett érték a következő Microsoft.PowerShell
. További információ: about_Preference_Variables.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ConnectingTimeout
Ezredmásodpercben adja meg, hogy a kezdeti SSH-kapcsolat befejeződjön. Ha a kapcsolat nem fejeződik be a megadott időn belül, hibaüzenet jelenik meg.
Ez a paraméter a PowerShell 7.2-ben lett bevezetve
Type: | Int32 |
Position: | Named |
Default value: | unlimited |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ConnectionUri
Egy URI-t ad meg, amely meghatározza a munkamenet kapcsolati végpontjait. Az URI-nak teljes mértékben minősítettnek kell lennie. A sztring formátuma a következő:
<Transport>://<ComputerName>:<Port>/<ApplicationName>
Az alapértelmezett érték a következő:
http://localhost:5985/WSMAN
Ha nem ad meg Csatlakozás ionURI-t, a UseSSL, a ComputerName, a Port és az ApplicationName paraméterekkel megadhatja a Csatlakozás ionURI-értékeket.
Az URI átviteli szegmensének érvényes értékei a HTTP és a HTTPS. Ha egy átviteli szegmenshez tartozó kapcsolati URI-t ad meg, de nem ad meg portot, a munkamenet szabványportokkal jön létre: 80
HTTP-hez és 443
HTTPS-hez. A PowerShell-újraküldés alapértelmezett portjának használatához adja meg a HTTP-portot 5985
vagy 5986
a HTTPS-t.
Ha a célszámítógép átirányítja a kapcsolatot egy másik URI-ra, a PowerShell megakadályozza az átirányítást, hacsak nem használja az AllowRedirection paramétert a parancsban.
Type: | Uri[] |
Aliases: | URI, CU |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ContainerId
Tárolók azonosítóinak tömbje. Ez a parancsmag egy interaktív munkamenetet indít el a megadott tárolókkal. docker ps
A parancs használatával lekérheti a tárolóazonosítók listáját. További információt a docker ps parancs súgójában talál.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Credential
Olyan felhasználói fiókot ad meg, amely rendelkezik a művelet végrehajtásához engedéllyel. Alapértelmezés szerint az aktuális felhasználó.
Írjon be egy felhasználónevet, például User01
vagy Domain01\User01
adjon meg egy, a Get-Credential
parancsmag által létrehozott PSCredential objektumot. Ha beír egy felhasználónevet, a rendszer kéri a jelszó megadását.
A hitelesítő adatokat PSCredential objektum tárolja, a jelszót pedig SecureStringként tárolja a rendszer.
Feljegyzés
További információ a SecureString adatvédelemről: Mennyire biztonságos a SecureString?.
Type: | PSCredential |
Position: | Named |
Default value: | Current user |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-EnableNetworkAccess
Azt jelzi, hogy ez a parancsmag egy interaktív biztonsági jogkivonatot ad hozzá a visszacsatolási munkamenetekhez. Az interaktív jogkivonat segítségével parancsokat futtathat a visszacsatolási munkamenetben, amelyek adatokat kapnak más számítógépekről. Futtathat például egy parancsot a munkamenetben, amely XML-fájlokat másol egy távoli számítógépről a helyi számítógépre.
A visszacsatolási munkamenet olyan PSSession , amely ugyanahhoz a számítógéphez kapcsolódik és végződik. Visszacsatolási munkamenet létrehozásához hagyja ki a ComputerName paramétert, vagy állítsa az értékét pont (.
) localhost
értékre vagy a helyi számítógép nevére.
Ez a parancsmag alapértelmezés szerint egy hálózati jogkivonat használatával hozza létre a visszacsatolási munkameneteket, ami nem feltétlenül biztosít elegendő engedélyt a távoli számítógépek hitelesítéséhez.
Az EnableNetworkAccess paraméter csak visszacsatolási munkamenetekben érvényes. Ha az EnableNetworkAccess szolgáltatást használja, amikor munkamenetet hoz létre egy távoli számítógépen, a parancs sikeres lesz, de a paraméter figyelmen kívül lesz hagyva.
A visszacsatolási munkamenetekben CredSSP
a távelérést a hitelesítési paraméter értékével is engedélyezheti, amely a munkamenet hitelesítő adatait más számítógépekre delegálja.
A számítógép rosszindulatú hozzáférés elleni védelme érdekében az interaktív jogkivonatokkal rendelkező leválasztott visszacsatolási munkamenetek, amelyek az EnableNetworkAccess paraméter használatával lettek létrehozva, csak attól a számítógéptől csatlakoztathatók újra, amelyen a munkamenet létre lett hozva. A CredSSP-hitelesítést használó leválasztott munkamenetek újra csatlakoztathatók más számítógépekről. További információ: Disconnect-PSSession
.
Ezt a paramétert a PowerShell 3.0-ban vezettük be.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-HostName
Egy SSH-alapú kapcsolat számítógépneveinek tömbjét adja meg. Ez hasonló a ComputerName paraméterhez, azzal a kivétellel, hogy a távoli számítógéphez való kapcsolat A Windows WinRM helyett SSH használatával jön létre.
Ezt a paramétert a PowerShell 6.0-ban vezettük be.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-KeyFilePath
Megadja a Secure Shell (SSH) által a felhasználók távoli számítógépen történő hitelesítéséhez használt kulcsfájl elérési útját.
Az SSH lehetővé teszi, hogy a felhasználói hitelesítés privát/nyilvános kulcsokkal történjen az alapszintű jelszóhitelesítés alternatívájaként. Ha a távoli számítógép kulcshitelesítésre van konfigurálva, akkor ez a paraméter használható a felhasználót azonosító kulcs megadására.
Ezt a paramétert a PowerShell 6.0-ban vezettük be.
Type: | String |
Aliases: | IdentityFilePath |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
A PSSession rövid nevét adja meg.
A névvel hivatkozhat a PSSession-ra , ha más parancsmagokat használ, például Get-PSSession
és Enter-PSSession
. A névnek nem kell egyedinek lennie a számítógépen vagy az aktuális munkamenetben.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Options
A távoli SSH-alapú munkamenethez való csatlakozáskor használt SSH-beállítások kivonatát adja meg. A lehetséges lehetőségek az ssh-parancs Unix-alapú verziója által támogatott értékek.
A paraméterek által explicit módon átadott értékek elsőbbséget élveznek a Beállítások kivonatolóban átadott értékekkel szemben. A Port paraméterrel például felülbírálhatja Port
a Beállítások kivonatolóban átadott kulcs-érték párokat.
Type: | Hashtable |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Port
A kapcsolathoz használt hálózati portot adja meg a távoli számítógépen. Távoli számítógéphez való csatlakozáshoz a távoli számítógépnek a kapcsolat által használt portot kell figyelnie. Az alapértelmezett portok 5985
a HTTP WinRM-portja, és 5986
a HTTPS WinRM-portja.
Egy másik port használata előtt konfigurálnia kell a WinRM-figyelőt a távoli számítógépen az adott port figyelésére. A figyelő konfigurálásához használja az alábbi parancsokat:
winrm delete winrm/config/listener?Address=*+Transport=HTTP
winrm create winrm/config/listener?Address=*+Transport=HTTP @{Port="\<port-number\>"}
Csak akkor használja a Port paramétert, ha kötelező. A parancs portbeállítása minden olyan számítógépre vagy munkamenetre vonatkozik, amelyen a parancs fut. Egy másik portbeállítás megakadályozhatja, hogy a parancs minden számítógépen fusson.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RunAsAdministrator
Azt jelzi, hogy a PSSession rendszergazdaként fut.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Session
A parancsmag által az új PSSession modelljeként használt PSSession-objektumok tömbje. Ez a paraméter új PSSession objektumokat hoz létre, amelyek a megadott PSSession objektumokkal azonos tulajdonságokkal rendelkeznek.
Adjon meg egy változót, amely tartalmazza a PSSession objektumokat, vagy egy olyan parancsot, amely létrehozza vagy lekéri a PSSession objektumokat, például egy New-PSSession
vagy Get-PSSession
egy parancsot.
Az eredményül kapott PSSession-objektumok a számítógép nevével, az alkalmazás nevével, a kapcsolati URI-val, a porttal, a konfiguráció nevével, a szabályozáskorláttal és a Secure Sockets Layer (SSL) értékével megegyeznek az eredetivel, de eltérő megjelenítendő névvel, azonosítóval és példányazonosítóval (GUID) rendelkeznek.
Type: | PSSession[] |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-SessionOption
A munkamenet speciális beállításait adja meg. Adjon meg egy SessionOption objektumot, például a parancsmaggal New-PSSessionOption
létrehozott objektumot, vagy egy kivonattáblát, amelyben a kulcsok munkamenet-beállításnevek, az értékek pedig munkamenet-beállításértékek.
A beállítások alapértelmezett értékeit a beállítási változó értéke $PSSessionOption
határozza meg, ha be van állítva. Ellenkező esetben az alapértelmezett értékeket a munkamenet-konfigurációban megadott beállítások állítják be.
A munkamenet-beállításértékek elsőbbséget élveznek a beállításváltozóban és a $PSSessionOption
munkamenet-konfigurációban beállított munkamenetek alapértelmezett értékeivel szemben. Azonban nem elsőbbséget élveznek a munkamenet-konfigurációban beállított maximális értékekkel, kvótával vagy korlátokkal szemben.
Az alapértelmezett értékeket tartalmazó munkamenet-beállítások leírását lásd: New-PSSessionOption
. A beállítási változóval kapcsolatos információkért $PSSessionOption
lásd : about_Preference_Variables. A munkamenet-konfigurációkkal kapcsolatos további tudnivalókért tekintse meg az about_Session_Configuration_Files című témakört.
Type: | PSSessionOption |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SSHConnection
Ez a paraméter kivonatolók tömbjét használja, ahol minden kivonatoló egy vagy több kapcsolatparamétert tartalmaz a Secure Shell (SSH) kapcsolat létrehozásához (HostName, Port, UserName, KeyFilePath).
A kivonatoló kapcsolat paraméterei megegyeznek az SSHHost paraméterkészletben definiált paraméterekkel.
Az SSH Csatlakozás ion paraméter több munkamenet létrehozásához is hasznos, ha minden munkamenethez eltérő kapcsolati információra van szükség.
Ezt a paramétert a PowerShell 6.0-ban vezettük be.
Type: | Hashtable[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SSHTransport
Azt jelzi, hogy a távoli kapcsolat a Secure Shell (SSH) használatával jön létre.
A PowerShell alapértelmezés szerint a Windows WinRM használatával csatlakozik egy távoli számítógéphez. Ez a kapcsoló arra kényszeríti a PowerShellt, hogy az SSH-alapú távoli kapcsolat létrehozásához használja a HostName paraméterkészletet.
Ezt a paramétert a PowerShell 6.0-ban vezettük be.
Type: | SwitchParameter |
Accepted values: | true |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Subsystem
Az új PSSession-hez használt SSH-alrendszert adja meg.
Ez határozza meg a célon használni kívánt alrendszert a következőben sshd_config
meghatározott módon: . Az alrendszer előre definiált paraméterekkel elindítja a PowerShell egy adott verzióját. Ha a megadott alrendszer nem létezik a távoli számítógépen, a parancs meghiúsul.
Ha ezt a paramétert nem használja, az alapértelmezett az powershell
alrendszer.
Type: | String |
Position: | Named |
Default value: | powershell |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ThrottleLimit
Megadja a parancs futtatásához létrehozható egyidejű kapcsolatok maximális számát.
Ha kihagyja ezt a paramétert, vagy egy (nulla) értéket 0
ad meg, 32
akkor a rendszer az alapértelmezett értéket használja.
A szabályozás korlátja csak az aktuális parancsra vonatkozik, a munkamenetre és a számítógépre nem.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UserName
Megadja annak a fióknak a felhasználónevét, amellyel munkamenetet hoz létre a távoli számítógépen. A felhasználói hitelesítési módszer attól függ, hogy a Secure Shell (SSH) hogyan van konfigurálva a távoli számítógépen.
Ha az SSH alapszintű jelszó-hitelesítésre van konfigurálva, a rendszer kérni fogja a felhasználói jelszót.
Ha az SSH kulcsalapú felhasználói hitelesítésre van konfigurálva, akkor a KeyFilePath paraméterrel megadhat egy kulcsfájl elérési útját, és a rendszer nem kér jelszót. Vegye figyelembe, hogy ha az ügyfélfelhasználói kulcsfájl egy ismert SSH-helyen található, akkor a KeyFilePath paraméterre nincs szükség a kulcsalapú hitelesítéshez, és a felhasználó hitelesítése automatikusan megtörténik a felhasználónév alapján. További információkért tekintse meg a kulcsalapú felhasználói hitelesítés SSH-dokumentációját.
Ez nem kötelező paraméter. Ha nincs megadva UserName paraméter, akkor a rendszer az aktuális bejelentkezési felhasználónevet használja a kapcsolathoz.
Ezt a paramétert a PowerShell 6.0-ban vezettük be.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseSSL
Azt jelzi, hogy ez a parancsmag az SSL protokoll használatával hoz létre kapcsolatot a távoli számítógéppel. Alapértelmezés szerint az SSL nem használatos.
A WS-Management a hálózaton keresztül továbbított összes PowerShell-tartalmat titkosítja. A UseSSL paraméter további védelmet nyújt, amely HTTP-kapcsolat helyett HTTPS-kapcsolaton keresztül küldi az adatokat.
Ha ezt a paramétert használja, de az SSL nem érhető el a parancshoz használt porton, a parancs meghiúsul.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-UseWindowsPowerShell
Távoli kapcsolatot hoz létre egy új Windows PowerShell-futtatótérrel a helyi rendszeren.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VMId
Virtuálisgép-azonosítók tömbje. Ez a parancsmag elindít egy PowerShell Direct interaktív munkamenetet az egyes megadott virtuális gépeken. További információ: Virtuális gépek automatizálása és kezelése a PowerShell használatával.
A Hyper-V-gazdagépen elérhető virtuális gépek megtekintésére használható Get-VM
.
Type: | Guid[] |
Aliases: | VMGuid |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-VMName
A virtuális gépek nevének tömbje. Ez a parancsmag elindít egy PowerShell Direct interaktív munkamenetet az egyes megadott virtuális gépeken. További információ: Virtuális gépek automatizálása és kezelése a PowerShell használatával.
A Hyper-V-gazdagépen elérhető virtuális gépek megtekintésére használható Get-VM
.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Bevitelek
Erre a parancsmagra sztringet csövezhet.
System.URI
Ehhez a parancsmaghoz URI-t csövezhet.
Erre a parancsmagra egy munkamenet-objektumot csövezhet.
Kimenetek
Jegyzetek
A PowerShell a következő aliasokat New-PSSession
tartalmazza:
Összes platform:
nsn
Ez a parancsmag a PowerShell-remoting infrastruktúrát használja. A parancsmag használatához konfigurálni kell a helyi számítógépet és a távoli számítógépeket a PowerShell-újraküldéshez. További információ: about_Remote_Requirements.
Ha PSSessiont szeretne létrehozni a helyi számítógépen, indítsa el a PowerShellt a Futtatás rendszergazdaként beállítással.
Ha befejezte a PSSession használatát, a
Remove-PSSession
parancsmaggal törölje a PSSessiont , és engedje fel az erőforrásait.A HostName és az SSH Csatlakozás ion paraméterkészletek a PowerShell 6.0-val kezdődtek. A rendszer hozzáadta őket, hogy a Secure Shell (SSH) alapján biztosítsa a PowerShell-remotálást. Az SSH és a PowerShell is támogatott több platformon (Windows, Linux, macOS), és a PowerShell-újraformálás ezeken a platformokon működik, ahol a PowerShell és az SSH telepítve és konfigurálva van. Ez nem azonos a WinRM-en alapuló korábbi Csak Windows rendszerű újraküldésekkel, és a WinRM-specifikus funkciók és korlátozások közül sok nem érvényes. Például a WinRM-alapú kvóták, a munkamenet-beállítások, az egyéni végpontkonfiguráció és a leválasztási/újracsatlakozási funkciók nem támogatottak. A PowerShell SSH-remoting beállításával kapcsolatos további információkért lásd : PowerShell Remoting Over SSH.
A ssh
végrehajtható a következő forrásokból szerzi be a konfigurációs adatokat a következő sorrendben:
- parancssori beállítások
- felhasználó konfigurációs fájlja (~/.ssh/config)
- rendszerszintű konfigurációs fájl (/etc/ssh/ssh_config)
A következő parancsmagparaméterek lesznek leképezve a paraméterekre és a beállításokra ssh
:
Parancsmag paramétere | ssh paraméter | egyenértékű ssh -o lehetőség |
---|---|---|
-KeyFilePath |
-i <KeyFilePath> |
-o IdentityFile=<KeyFilePath> |
-UserName |
-l <UserName> |
-o User=<UserName> |
-Port |
-p <Port> |
-o Port=<Port> |
-ComputerName -Subsystem |
-s <ComputerName> <Subsystem> |
-o Host=<ComputerName> |
A paraméterek által explicit módon átadott értékek elsőbbséget élveznek a Beállítások kivonatolóban átadott értékekkel szemben. További információ a fájlokról ssh_config
: ssh_config(5).
Kapcsolódó hivatkozások
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: