Enter-PSSession
Interaktív munkamenet indítása távoli számítógéppel.
Syntax
Enter-PSSession
[-ComputerName] <String>
[-EnableNetworkAccess]
[[-Credential] <PSCredential>]
[-ConfigurationName <String>]
[-Port <Int32>]
[-UseSSL]
[-ApplicationName <String>]
[-SessionOption <PSSessionOption>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[<CommonParameters>]
Enter-PSSession
[-HostName] <String>
[-Options <Hashtable>]
[-Port <Int32>]
[-UserName <String>]
[-KeyFilePath <String>]
[-Subsystem <String>]
[-ConnectingTimeout <Int32>]
[-SSHTransport]
[<CommonParameters>]
Enter-PSSession
[[-Session] <PSSession>]
[<CommonParameters>]
Enter-PSSession
[[-ConnectionUri] <Uri>]
[-EnableNetworkAccess]
[[-Credential] <PSCredential>]
[-ConfigurationName <String>]
[-AllowRedirection]
[-SessionOption <PSSessionOption>]
[-Authentication <AuthenticationMechanism>]
[-CertificateThumbprint <String>]
[<CommonParameters>]
Enter-PSSession
[-InstanceId <Guid>]
[<CommonParameters>]
Enter-PSSession
[[-Id] <Int32>]
[<CommonParameters>]
Enter-PSSession
[-Name <String>]
[<CommonParameters>]
Enter-PSSession
[-VMId] <Guid>
[-Credential] <PSCredential>
[-ConfigurationName <String>]
[<CommonParameters>]
Enter-PSSession
[-VMName] <String>
[-Credential] <PSCredential>
[-ConfigurationName <String>]
[<CommonParameters>]
Enter-PSSession
[-ContainerId] <String>
[-ConfigurationName <String>]
[-RunAsAdministrator]
[<CommonParameters>]
Description
A Enter-PSSession
parancsmag egy interaktív munkamenetet indít egyetlen távoli számítógéppel. A munkamenet során a beírt parancsok ugyanúgy futnak a távoli számítógépen, mintha közvetlenül a távoli számítógépre gépelt volna. Egyszerre csak egy interaktív munkamenet lehet.
A távoli számítógép nevének megadásához általában a ComputerName paramétert használja.
Használhat azonban olyan munkamenetet is, amelyet az interaktív munkamenethez tartozó New-PSSession
parancsmaggal hozhat létre. A Disconnect-PSSession
, Connect-PSSession
vagy Receive-PSSession
parancsmagokkal azonban nem lehet leválasztani vagy újracsatlakozni egy interaktív munkamenethez.
A PowerShell 6.0-tól kezdve a Secure Shell (SSH) használatával létesíthet kapcsolatot egy távoli számítógéppel. A helyi számítógépen SSH-val kell rendelkeznie, a távoli számítógépet pedig PowerShell SSH-végponttal kell konfigurálni. Az SSH-alapú Távoli PowerShell-munkamenet előnye, hogy több platformon (Windows, Linux, macOS) működik. Az SSH-alapú újraküldéshez használja a HostName paraméterkészletet a távoli számítógép és a kapcsolódó kapcsolati információk megadásához. A PowerShell SSH-remoting beállításával kapcsolatos további információkért lásd PowerShell-remoting Over SSHcímű témakört.
Az interaktív munkamenet befejezéséhez és a távoli számítógépről való leválasztásához használja a Exit-PSSession
parancsmagot, vagy írja be a exit
.
Fontos
Enter-PSSession
úgy tervezték, hogy az aktuális interaktív munkamenetet egy új interaktív távoli munkamenettel helyettesítse. Nem szabad függvényen vagy szkripten belülről meghívni, vagy parancsként átadni a pwsh
végrehajthatónak.
Példák
1. példa: Interaktív munkamenet indítása
PS> Enter-PSSession
[localhost]: PS>
Ez a parancs egy interaktív munkamenetet indít el a helyi számítógépen. A parancssor úgy módosul, hogy mostantól egy másik munkamenetben futtat parancsokat.
A megadott parancsok az új munkamenetben futnak, és az eredmények szövegként jelennek meg az alapértelmezett munkamenetben.
2. példa: Interaktív munkamenettel végzett munka
Az első parancs a Enter-PSSession
parancsmaggal indít egy interaktív munkamenetet a Server01 távoli számítógéppel. A munkamenet indításakor a parancssor úgy változik, hogy tartalmazza a számítógép nevét.
A második parancs lekéri a PowerShell-folyamatot, és átirányítja a kimenetet a Process.txt
fájlba.
A parancs el lesz küldve a távoli számítógépre, és a fájl a távoli számítógépre lesz mentve.
A harmadik parancs a exit
kulcsszót használja az interaktív munkamenet befejezéséhez és a kapcsolat bezárásához.
A negyedik parancs megerősíti, hogy a Process.txt fájl a távoli számítógépen található. A helyi számítógépen található Get-ChildItem
("dir") parancs nem találja a fájlt.
PS C:\> Enter-PSSession -ComputerName Server01
[Server01]: PS C:\>
[Server01]: PS C:\> Get-Process powershell > C:\ps-test\Process.txt
[Server01]: PS C:\> exit
PS C:\>
PS C:\> dir C:\ps-test\Process.txt
Get-ChildItem : Cannot find path 'C:\ps-test\Process.txt' because it does not exist.
At line:1 char:4
+ dir <<<< C:\ps-test\Process.txt
Ez a parancs bemutatja, hogyan dolgozhat interaktív munkamenetben távoli számítógéppel.
3. példa: A Munkamenet paraméter használata
PS> $s = New-PSSession -ComputerName Server01
PS> Enter-PSSession -Session $s
[Server01]: PS>
Ezek a parancsok a Enter-PSSession
paraméterével futtatják az interaktív munkamenetet egy meglévő PowerShell-munkamenetben (PSSession).
4. példa: Interaktív munkamenet indítása és a port- és hitelesítő adatok paramétereinek megadása
PS> Enter-PSSession -ComputerName Server01 -Port 90 -Credential Domain01\User01
[Server01]: PS>
Ez a parancs interaktív munkamenetet indít a Server01 számítógéppel. A Port paraméterrel adja meg a portot és a Hitelesítő adatok paramétert annak a felhasználónak a fiókjának megadásához, aki jogosult csatlakozni a távoli számítógéphez.
5. példa: Interaktív munkamenet leállítása
PS> Enter-PSSession -ComputerName Server01
[Server01]: PS> Exit-PSSession
PS>
Ez a példa bemutatja, hogyan indíthat el és állíthat le interaktív munkameneteket. Az első parancs a Enter-PSSession
parancsmaggal indít egy interaktív munkamenetet a Server01 számítógéppel.
A második parancs a Exit-PSSession
parancsmaggal fejezi be a munkamenetet. A exit
kulcsszóval is befejezheti az interaktív munkamenetet.
Exit-PSSession
és exit
ugyanaz a hatásuk.
6. példa: Interaktív munkamenet indítása az SSH használatával
PS> Enter-PSSession -HostName UserA@LinuxServer01
Ez a példa bemutatja, hogyan indíthat el interaktív munkamenetet a Secure Shell (SSH) használatával. Ha az SSH a távoli számítógépen jelszó használatára van konfigurálva, a rendszer kérni fogja, hogy adjon meg egy jelszót. Ellenkező esetben kulcsalapú felhasználói hitelesítést kell használnia.
7. példa: Interaktív munkamenet indítása SSH használatával port- és felhasználói hitelesítési kulccsal
PS> Enter-PSSession -HostName UserA@LinuxServer02:22 -KeyFilePath C:\sshkeys\userAKey_rsa
Ez a példa bemutatja, hogyan indíthat el interaktív munkamenetet az SSH használatával. A felhasználónév és az SSH-port száma a HostName paraméter értékének részeként van megadva. A KeyFilePath paraméter megadja a felhasználó távoli számítógépen való hitelesítéséhez használt RSA-kulcs helyét.
8. példa: Interaktív munkamenet indítása SSH-beállításokkal
$options = @{
Port=22
User = 'UserA'
Host = 'LinuxServer02'
}
Enter-PSSession -KeyFilePath C:\sshkeys\userAKey_rsa -Options $options
Ez a példa bemutatja, hogyan indíthat el interaktív munkamenetet az SSH használatával. A Beállítások paraméter az alapul szolgáló ssh
parancsnak átadott értékek kivonatát veszi át a távoli rendszerrel való kapcsolat létesítése érdekében.
Paraméterek
-AllowRedirection
Lehetővé teszi a kapcsolat átirányítását egy alternatív egységes erőforrás-azonosítóra (URI). Alapértelmezés szerint az átirányítás nem engedélyezett.
Ha a ConnectionURI paramétert használja, 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 MaximumConnectionRedirectionCount munkamenetbeá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 New-PSSessionOption
paraméterét, vagy állítsa be a beállítási változó $PSSessionOption
tulajdonságát. Az alapértelmezett érték 5.
Típus: | SwitchParameter |
Position: | Named |
Alapértelmezett érték: | False |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-ApplicationName
Megadja a kapcsolati URI alkalmazásnév-szegmensét. Ezzel a paraméterrel adja meg az alkalmazás nevét, ha nem használja a ConnectionURI 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ási változó nincs definiálva, az alapértelmezett érték a 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.
Típus: | String |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | 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:
- Alapértelmezett
- Alapvető
- Credssp
- Emészt
- Kerberos
- Tárgyal
- NegotiateWithImplicitCredential
Az alapértelmezett érték az Alapértelmezett érték.
A CredSSP-hitelesítés csak a Windows Vista, a Windows Server 2008 és a Windows operációs rendszer újabb verzióiban érhető el.
A paraméter értékeivel kapcsolatos további információkért lásd: AuthenticationMechanism Enum.
Figyelmeztet
A hitelesítő adatok biztonsági támogatási szolgáltatójának (CredSSP) hitelesítése, amelyben a felhasználó hitelesítő adatai á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.
Típus: | AuthenticationMechanism |
Elfogadott értékek: | Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | 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 powershell-tanúsítvány: meghajtó Get-Item
vagy Get-ChildItem
parancsát.
Típus: | String |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-ComputerName
Megadja a számítógép nevét. Ez a parancsmag egy interaktív munkamenetet indít el a megadott távoli számítógéppel. Csak egy számítógépnevet adjon meg. Az alapértelmezett beállítás a helyi számítógép.
Írja be a netBIOS-nevet, az IP-címet vagy a számítógép teljes tartománynevét. A számítógép nevét a Enter-PSSession
is beszűkítheti.
Ha IP-címet szeretne használni a ComputerName paraméter értékében, a parancsnak tartalmaznia kell a Hitelesítő adatok paramétert. 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 "Számítógép hozzáadása a megbízható gazdagéplistához" című témakört about_Remote_Troubleshooting.
Jegyzet
A Windows operációs rendszeren ahhoz, hogy a helyi számítógép szerepeljen a ComputerName paraméter értékében, a PowerShellt a Futtatás rendszergazdaként beállítással kell elindítania.
Típus: | String |
Aliasok: | Cn |
Position: | 0 |
Alapértelmezett érték: | None |
Kötelező: | True |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | False |
-ConfigurationName
Megadja az interaktív munkamenethez 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 következő séma URI-ja elő van állítva: http://schemas.microsoft.com/powershell
.
Az SSH-val való használat esetén ez határozza meg a célon használni kívánt alrendszert a sshd_config. Az SSH alapértelmezett értéke a powershell
alrendszer.
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 a Microsoft.PowerShell. További információ: about_Preference_Variables.
Típus: | String |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | 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
Típus: | Int32 |
Position: | Named |
Alapértelmezett érték: | unlimited |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | 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 ConnectionURI-, a UseSSL, ComputerName, Portés ApplicationName paramétereket használhatja a ConnectionURI értékek megadásához.
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 a következő szabványportok használatával 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 az 5985-ös portot a HTTP-hez, a HTTPS-hez pedig az 5986-os portot.
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, kivéve, ha a parancsban az AllowRedirection paramétert használja.
Típus: | Uri |
Aliasok: | URI, CU |
Position: | 1 |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | False |
-ContainerId
Egy tároló azonosítóját adja meg.
Típus: | String |
Position: | 0 |
Alapértelmezett érték: | None |
Kötelező: | True |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | False |
-Credential
A művelet végrehajtásához engedéllyel rendelkező felhasználói fiókot ad meg. Az alapértelmezett az aktuális felhasználó.
Írjon be egy felhasználónevet, például User01 vagy Domain01\User01, vagy adjon meg egy PSCredential objektumot, amelyet a Get-Credential
parancsmag generál. Ha beír egy felhasználónevet, a rendszer kéri a jelszó megadását.
A hitelesítő adatokat egy PSCredential objektum tárolja, a jelszó pedig SecureString.
Jegyzet
További információ a SecureString adatvédelem kapcsolatban: Mennyire biztonságos a SecureString?.
Típus: | PSCredential |
Position: | 1 |
Alapértelmezett érték: | Current user |
Kötelező: | False |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | 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 egy PSSession, amely ugyanabból a számítógépről származik és végződik. Visszacsatolási munkamenet létrehozásához hagyja ki a ComputerName paramétert, vagy állítsa az értékét a következőre: . (pont), localhost vagy a helyi számítógép neve.
Alapértelmezés szerint a visszacsatolási munkamenetek hálózati jogkivonat használatával jönnek létre, 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 EnableNetworkAccess használ, 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 a távelérést a Hitelesítési paraméter CredSSP értékével is engedélyezheti, amely a munkamenet hitelesítő adatait más számítógépekre delegálja.
Ezt a paramétert a Windows PowerShell 3.0-ban vezettük be.
Típus: | SwitchParameter |
Position: | Named |
Alapértelmezett érték: | False |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-HostName
Megadja egy SSH-alapú kapcsolat számítógépnevét. Ez hasonló a ComputerName paraméterhez, azzal a kivétellel, hogy a távoli számítógéphez való csatlakozás sSH-val történik a Windows WinRM helyett. Ez a paraméter támogatja a felhasználónév és/vagy port megadását a HostName paraméterérték részeként az user@hostname:port
űrlap használatával. A gazdagépnév részeként megadott felhasználónév és/vagy port elsőbbséget élvez a -UserName
és -Port
paraméterekkel szemben, ha meg van adva. Ez lehetővé teszi, hogy több számítógépnevet adjon át ehhez a paraméterhez, ahol bizonyos felhasználónevek és/vagy portok vannak, míg mások a -UserName
és -Port
paraméterekből származó felhasználónevet és/vagy portot használják.
Ezt a paramétert a PowerShell 6.0-ban vezettük be.
Típus: | String |
Position: | 0 |
Alapértelmezett érték: | None |
Kötelező: | True |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | False |
-Id
Egy meglévő munkamenet azonosítóját adja meg.
Enter-PSSession
a megadott munkamenetet használja az interaktív munkamenethez.
A munkamenet azonosítójának megkereséséhez használja a Get-PSSession
parancsmagot.
Típus: | Int32 |
Position: | 0 |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | False |
-InstanceId
Egy meglévő munkamenet példányazonosítóját adja meg.
Enter-PSSession
a megadott munkamenetet használja az interaktív munkamenethez.
A példányazonosító egy GUID. Egy munkamenet példányazonosítójának megkereséséhez használja a Get-PSSession
parancsmagot. A munkamenet-, Névvagy Azonosító paramétereket is használhatja egy meglévő munkamenet megadásához. Vagy a ComputerName paraméterrel is elindíthat egy ideiglenes munkamenetet.
Típus: | Guid |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | 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.
Típus: | String |
Aliasok: | IdentityFilePath |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Name
Egy meglévő munkamenet rövid nevét adja meg.
Enter-PSSession
a megadott munkamenetet használja az interaktív munkamenethez.
Ha a megadott név egynél több munkamenetnek felel meg, a parancs meghiúsul. A munkamenet-, InstanceIdvagy Azonosító paramétereket is használhatja egy meglévő munkamenet megadásához. Vagy a ComputerName paraméterrel is elindíthat egy ideiglenes munkamenetet.
Egy munkamenet rövid nevének létrehozásához használja a parancsmag New-PSSession
paraméterét.
Típus: | String |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | 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éter használata például felülírja a Port
kivonatolóban átadott kulcs-érték párokat.
Típus: | Hashtable |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Port
A parancshoz használt hálózati portot adja meg a távoli számítógépen.
A PowerShell 6.0-ban ez a paraméter szerepel a HostName paraméterkészletben, amely támogatja a Secure Shell -kapcsolatokat.
WinRM (ComputerName paraméterkészlet)
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 az 5985, amely a HTTP WinRM-portja, és az 5986, amely 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.
SSH (HostName paraméterkészlet)
Távoli számítógéphez való csatlakozáshoz a távoli számítógépet az SSH szolgáltatással (SSHD) kell konfigurálni, és a kapcsolat által használt portot kell figyelnie. Az SSH alapértelmezett portja a 22.
Típus: | Int32 |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-RunAsAdministrator
Azt jelzi, hogy a PSSession rendszergazdaként fut.
Típus: | SwitchParameter |
Position: | Named |
Alapértelmezett érték: | False |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Session
Az interaktív munkamenethez használandó PowerShell-munkamenetet (PSSession) adja meg. Ez a paraméter egy munkamenet-objektumot vesz igénybe. A Név, InstanceIdvagy Azonosító paraméterek használatával is megadhat egy PSSession.
Adjon meg egy változót, amely egy munkamenet-objektumot vagy egy munkamenet-objektumot létrehozó vagy lekérő parancsot tartalmaz, például egy New-PSSession
vagy Get-PSSession
parancsot. A munkamenet-objektumokat a Enter-PSSession
is be lehet csövezni. Ezzel a paraméterrel csak egy PSSession küldhet be. Ha egynél több PSSessiontartalmazó változót ad meg, a parancs meghiúsul.
Ha Exit-PSSession
vagy a exit
kulcsszót használja, az interaktív munkamenet véget ér, de a létrehozott PSSession nyitva marad és használható marad.
Típus: | PSSession |
Position: | 0 |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | False |
-SessionOption
Speciális beállításokat ad meg a munkamenethez. Adjon meg egy SessionOption objektumot, például a New-PSSessionOption
parancsmaggal 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 $PSSessionOption
beállítási változó értéke 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 $PSSessionOption
beállítási változóban és a munkamenet-konfigurációban beállított munkamenetek alapértelmezett értékeivel szemben. Azonban nem élveznek elsőbbséget a munkamenet-konfigurációban beállított maximális értékekkel, kvótával vagy korlátokkal szemben.
A munkamenet beállításainak leírását, beleértve az alapértelmezett értékeket, tekintse meg a New-PSSessionOption
.
A $PSSessionOption
beállítási változóval kapcsolatos információkért lásd: about_Preference_Variables. További információ a munkamenet-konfigurációkról: about_Session_Configurations.
Típus: | PSSessionOption |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | 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.
Típus: | SwitchParameter |
Elfogadott értékek: | true |
Position: | Named |
Alapértelmezett érték: | False |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-Subsystem
Megadja az új PSSessionhasznált SSH-alrendszert.
Ez határozza meg a célon a sshd_config definiált alrendszert. 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.
Típus: | String |
Position: | Named |
Alapértelmezett érték: | Powershell |
Kötelező: | False |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | False |
-UserName
Megadja a távoli számítógépen munkamenet létrehozásához használt fiók felhasználónevet. 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éri a felhasználói jelszót.
Ha az SSH kulcsalapú felhasználói hitelesítésre van konfigurálva, akkor a rendszer nem kéri a jelszót. Meg kell adnia egy SSH-kulcsfájl elérési útját. Ha a felhasználói kulcsfájl egy ismert SSH-helyen található, akkor nincs szükség a KeyFilePath paraméterre. A felhasználói hitelesítés automatikusan történik a felhasználónév alapján. További információt a kulcsalapú felhasználói hitelesítésről szóló SSH-dokumentációban talál.
Ha a UserName paraméter nincs megadva, akkor a rendszer az aktuális bejelentkezett felhasználónevet használja.
Ezt a paramétert a PowerShell 6.0-ban vezettük be.
Típus: | String |
Position: | Named |
Alapértelmezett érték: | None |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-UseSSL
Azt jelzi, hogy ez a parancsmag a Secure Sockets Layer (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.
WS-Management titkosítja a hálózaton keresztül továbbított összes PowerShell-tartalmat. A UseSSL paraméter egy további védelem, 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.
Típus: | SwitchParameter |
Position: | Named |
Alapértelmezett érték: | False |
Kötelező: | False |
Folyamatbemenet elfogadása: | False |
Helyettesítő karakterek elfogadása: | False |
-VMId
Egy virtuális gép azonosítóját adja meg.
Típus: | Guid |
Aliasok: | VMGuid |
Position: | 0 |
Alapértelmezett érték: | None |
Kötelező: | True |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | False |
-VMName
A virtuális gép nevét adja meg.
Típus: | String |
Position: | 0 |
Alapértelmezett érték: | None |
Kötelező: | True |
Folyamatbemenet elfogadása: | True |
Helyettesítő karakterek elfogadása: | False |
Bevitelek
A parancsmagra sztringként csövezheti a számítógép nevét.
Erre a parancsmagra egy munkamenet-objektumot csövezhet.
Kimenetek
None
Ez a parancsmag nem ad vissza kimenetet.
Jegyzetek
A PowerShell a következő aliasokat tartalmazza Enter-PSSession
:
- Minden platform:
etsn
Távoli számítógéphez való csatlakozáshoz a távoli számítógépen a Rendszergazdák csoport tagjának kell lennie. Ha interaktív munkamenetet szeretne indítani a helyi számítógépen, a PowerShellt a Rendszergazdaként futtatás beállítással kell elindítania.
Ha Enter-PSSession
használ, a rendszer a távoli számítógépen lévő felhasználói profilját használja az interaktív munkamenethez. A távoli felhasználói profil parancsai, beleértve a PowerShell-modulok hozzáadására és a parancssor módosítására vonatkozó parancsokat, futtassa a távoli kérés megjelenítése előtt.
Enter-PSSession
a felhasználói felület kulturális beállításait használja a helyi számítógépen az interaktív munkamenethez. A helyi felhasználói felületi kultúra megkereséséhez használja a $UICulture
automatikus változót.
Enter-PSSession
megköveteli a Get-Command
, Out-Default
és Exit-PSSession
parancsmagokat. Ha ezek a parancsmagok nem szerepelnek a távoli számítógépen a munkamenet-konfigurációban, a Enter-PSSession
parancsok meghiúsulnak.
Ellentétben Invoke-Command
, amely elemzi és értelmezi a parancsokat, mielőtt elküldi őket a távoli számítógépre, Enter-PSSession
közvetlenül a távoli számítógépre továbbítja a parancsokat értelmezés nélkül.
Ha a beírandó munkamenet egy parancs feldolgozása során foglalt, előfordulhat, hogy a PowerShell nem válaszol a Enter-PSSession
parancsra. Amint a munkamenet elérhetővé válik, csatlakozik. A Enter-PSSession
parancs megszakításához nyomja le a CTRL+Cbillentyűkombinációt.
A HostName paraméterkészlet a PowerShell 6.0-val kezdődően szerepel. Hozzá lett adva, 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-remoting ezeken a platformokon működik, ahol a PowerShell és az SSH telepítve és konfigurálva van. Ez különbözik az előző Windowstól, csak a WinRM-en alapuló átnevezés, és a WinRM-specifikus funkciók és korlátozások nagy része nem érvényes. 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 jelenleg nem támogatottak. A PowerShell SSH-remoting beállításával kapcsolatos további információkért lásd PowerShell-remoting Over SSHcímű témakört.
A PowerShell 7.1-et megelőzően az SSH-ra való átnevezés nem támogatja a második ugrásos távoli munkameneteket. Ez a képesség a WinRM-t használó munkamenetekre korlátozódott. A PowerShell 7.1 lehetővé teszi, hogy Enter-PSSession
és Enter-PSHostProcess
bármilyen interaktív távoli munkameneten belül működjön.
A végrehajtható ssh
a következő forrásokból szerzi be a konfigurációs adatokat az alábbi 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 ssh
paraméterekre és beállításokra lesznek leképezve:
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. A ssh_config
fájlokról további információt a ssh_config(5)című témakörben talál.