Enter-PSSession

Spustí interaktivní relaci se vzdáleným počítačem.

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

Rutina Enter-PSSession spustí interaktivní relaci s jedním vzdáleným počítačem. Během relace se příkazy, které zadáte na vzdáleném počítači, spouští stejně jako při psaní přímo na vzdáleném počítači. Najednou můžete mít jenom jednu interaktivní relaci.

K určení názvu vzdáleného počítače se obvykle používá parametr ComputerName . Můžete ale také použít relaci, kterou vytvoříte, pomocí rutiny New-PSSession pro interaktivní relaci. Nemůžete ale použít Disconnect-PSSessionrutiny Connect-PSSession, nebo Receive-PSSession k odpojení od interaktivní relace nebo k opětovnému připojení.

Počínaje PowerShellem 6.0 můžete pomocí protokolu Secure Shell (SSH) navázat připojení ke vzdálenému počítači, pokud je na místním počítači dostupný protokol SSH a vzdálený počítač je nakonfigurovaný pomocí koncového bodu SSH PowerShellu. Výhodou vzdálené relace PowerShellu založeného na SSH je to, že funguje na různých platformách (Windows, Linux, macOS). V případě vzdálené komunikace založené na SSH použijete parametr HostName nastavený k určení vzdáleného počítače a relevantních informací o připojení. Další informace o nastavení vzdálené komunikace SSH PowerShellu najdete v tématu Vzdálené komunikace PowerShellu přes SSH.

Chcete-li ukončit interaktivní relaci a odpojit se od vzdáleného počítače, použijte rutinu Exit-PSSession nebo zadejte exit.

Příklady

Příklad 1: Spuštění interaktivní relace

PS> Enter-PSSession
[localhost]: PS>

Tento příkaz spustí interaktivní relaci na místním počítači. Příkazový řádek se změní, aby značil, že teď spouštíte příkazy v jiné relaci.

Příkazy, které zadáte v nové relaci, se vrátí do výchozí relace jako text.

Příklad 2: Práce s interaktivní relací

První příkaz pomocí rutiny Enter-PSSession spustí interaktivní relaci se vzdáleným počítačem Server01. Po spuštění relace se příkazový řádek změní tak, aby zahrnoval název počítače.

Druhý příkaz získá proces PowerShellu a přesměruje výstup do Process.txt souboru. Příkaz se odešle do vzdáleného počítače a soubor se uloží do vzdáleného počítače.

Třetí příkaz pomocí klíčového slova Exit ukončí interaktivní relaci a ukončí připojení. Čtvrtý příkaz potvrdí, že soubor Process.txt je ve vzdáleném počítači. Příkaz Get-ChildItem ("dir") v místním počítači nemůže soubor najít.

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

Tento příkaz ukazuje, jak pracovat v interaktivní relaci se vzdáleným počítačem.

Příklad 3: Použití parametru Relace

PS> $s = New-PSSession -ComputerName Server01
PS> Enter-PSSession -Session $s
[Server01]: PS>

Tyto příkazy používají parametr Enter-PSSession Relace ke spuštění interaktivní relace v existující relaci PowerShellu (PSSession).

Příklad 4: Spuštění interaktivní relace a zadání parametrů Port a Credential

PS> Enter-PSSession -ComputerName Server01 -Port 90 -Credential Domain01\User01
[Server01]: PS>

Tento příkaz spustí interaktivní relaci s počítačem Se serverem 01. Pomocí parametru Port určí port a parametr Credential k určení účtu uživatele, který má oprávnění k připojení ke vzdálenému počítači.

Příklad 5: Zastavení interaktivní relace

PS> Enter-PSSession -ComputerName Server01
[Server01]: PS> Exit-PSSession
PS>

Tento příklad ukazuje, jak spustit a zastavit interaktivní relaci. První příkaz použije rutinu Enter-PSSession ke spuštění interaktivní relace s počítačem Server01.

Druhý příkaz pomocí rutiny Exit-PSSession ukončí relaci. Interaktivní relaci můžete ukončit také pomocí klíčového slova Ukončit . Exit-PSSession a Exit mají stejný účinek.

Příklad 6: Spuštění interaktivní relace pomocí SSH

PS> Enter-PSSession -HostName UserA@LinuxServer01

Tento příklad ukazuje, jak spustit interaktivní relaci pomocí Secure Shellu (SSH). Pokud je na vzdáleném počítači nakonfigurovaný protokol SSH tak, aby používal hesla, zobrazí se výzva k zadání hesla. V opačném případě musíte použít ověřování uživatelů na základě klíčů.

Příklad 7: Spuštění interaktivní relace pomocí SSH s portem a ověřovacím klíčem uživatele

PS> Enter-PSSession -HostName UserA@LinuxServer02:22 -KeyFilePath c:\sshkeys\userAKey_rsa

Tento příklad ukazuje, jak spustit interaktivní relaci pomocí SSH. Uživatelské jméno a číslo portu SSH se zadají jako části hodnoty parametru HostName . Parametr KeyFilePath určuje umístění klíče RSA použitého k ověření uživatele ve vzdáleném počítači.

Příklad 8: Spuštění interaktivní relace pomocí možností SSH

$options = @{
    Port=22
    User = 'UserA'
    Host = 'LinuxServer02'
}
Enter-PSSession -KeyFilePath c:\sshkeys\userAKey_rsa -Options $options

Tento příklad ukazuje, jak spustit interaktivní relaci pomocí SSH. Parametr Options přebírá hashtable hodnot, které jsou předány jako možnosti podkladovému ssh příkazu navázáno připojení ke vzdálenému systému.

Parametry

-AllowRedirection

Umožňuje přesměrování tohoto připojení na alternativní identifikátor URI (Uniform Resource Identifier). Ve výchozím nastavení není přesměrování povolené.

Pokud použijete parametr Připojení ionURI, vzdálený cíl může vrátit instrukce pro přesměrování na jiný identifikátor URI. PowerShell ve výchozím nastavení nesměruje připojení, ale pomocí tohoto parametru ho můžete přesměrovat.

Počet přesměrování připojení můžete také omezit změnou hodnoty parametru relace Maximum Připojení ionRedirectionCount. Použijte parametr MaximumRedirection rutiny New-PSSessionOption nebo nastavte Vlastnost $PSSessionOption Maximum Připojení ionRedirectionCount proměnné předvolby. Výchozí hodnota je 5.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationName

Určuje segment názvu aplikace identifikátoru URI připojení. Tento parametr použijte k určení názvu aplikace, pokud v příkazu nepoužíváte parametr Připojení ionURI.

Výchozí hodnota je hodnota $PSSessionApplicationName proměnné předvoleb v místním počítači. Pokud tato proměnná předvoleb není definována, výchozí hodnota je WSMAN. Tato hodnota je vhodná pro většinu použití. Další informace najdete v tématu about_Preference_Variables.

Služba WinRM používá název aplikace k výběru naslouchacího procesu pro službu žádosti o připojení. Hodnota tohoto parametru by se měla shodovat s hodnotou vlastnosti URLPrefix naslouchacího procesu ve vzdáleném počítači.

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

-Authentication

Určuje mechanismus, který se používá k ověření přihlašovacích údajů uživatele. Tento parametr přijímá tyto hodnoty:

  • Výchozí
  • Basic
  • Credssp
  • Digest
  • Kerberos
  • Vyjednávat
  • NegotiateWithImplicitCredential

Výchozí hodnota je Default.

Ověřování CredSSP je k dispozici pouze v systémech Windows Vista, Windows Server 2008 a novějších verzích operačního systému Windows.

Další informace o hodnotách tohoto parametru naleznete v tématu AuthenticationMechanism Enum.

Upozornění

Ověřování zprostředkovatele podpory zabezpečení přihlašovacích údajů (CredSSP), ve kterém jsou přihlašovací údaje uživatele předány vzdálenému počítači, který se má ověřit, je určený pro příkazy, které vyžadují ověření u více než jednoho prostředku, například pro přístup ke vzdálené síťové sdílené složce. Tento mechanismus zvyšuje riziko zabezpečení vzdálené operace. Pokud dojde k ohrožení zabezpečení vzdáleného počítače, dají se k řízení síťové relace použít přihlašovací údaje, které jsou mu předány.

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

Určuje certifikát digitálního veřejného klíče (X509) uživatelského účtu, který má oprávnění k provedení této akce. Zadejte kryptografický otisk certifikátu.

Certifikáty se používají při ověřování na základě klientských certifikátů. Mohou být mapovány pouze na místní uživatelské účty; nefungují s doménovými účty.

Certifikát získáte pomocí Get-Item příkazu nebo Get-ChildItem certifikátu v jednotce PowerShell Cert:

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

-ComputerName

Určuje název počítače. Tato rutina spustí interaktivní relaci se zadaným vzdáleným počítačem. Zadejte pouze jeden název počítače. Ve výchozím nastavení je to místní počítač.

Zadejte název netBIOS, IP adresu nebo plně kvalifikovaný název domény počítače. Můžete také převést název počítače na Enter-PSSession.

Pokud chcete použít IP adresu v hodnotě parametru ComputerName , musí příkaz obsahovat parametr Credential . Počítač musí být také nakonfigurovaný pro přenos HTTPS nebo musí být IP adresa vzdáleného počítače zahrnuta do seznamu Důvěryhodných hostitelů WinRM na místním počítači. Pokyny k přidání názvu počítače do seznamu TrustedHosts najdete v části Postup přidání počítače do seznamu důvěryhodných hostitelů v about_Remote_Troubleshooting.

Poznámka:

Pokud chcete zahrnout místní počítač do hodnoty parametru ComputerName , musíte v operačním systému Windows spustit PowerShell s možností Spustit jako správce.

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

-ConfigurationName

Určuje konfiguraci relace, která se používá pro interaktivní relaci.

Zadejte název konfigurace nebo plně kvalifikovaný identifikátor URI prostředku pro konfiguraci relace. Pokud zadáte pouze název konfigurace, před tomuto identifikátoru URI schématu: http://schemas.microsoft.com/powershell

Pokud se používá s protokolem SSH, určuje subsystém, který se má použít v cíli, jak je definováno v sshd_config. Výchozí hodnota pro SSH je powershell subsystém.

Konfigurace relace relace se nachází ve vzdáleném počítači. Pokud zadaná konfigurace relace ve vzdáleném počítači neexistuje, příkaz selže.

Výchozí hodnota je hodnota $PSSessionConfigurationName proměnné předvoleb v místním počítači. Pokud tato proměnná předvoleb není nastavená, výchozí hodnota je Microsoft.PowerShell. Další informace najdete v tématu about_Preference_Variables.

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

-ConnectingTimeout

Určuje dobu v milisekundách povolenou k dokončení počátečního připojení SSH. Pokud se připojení v zadaném čase nedokončí, vrátí se chyba.

Tento parametr byl představen v PowerShellu 7.2.

Type:Int32
Position:Named
Default value:unlimited
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ConnectionUri

Určuje identifikátor URI, který definuje koncový bod připojení pro relaci. Identifikátor URI musí být plně kvalifikovaný. Formát tohoto řetězce je následující:

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

Výchozí hodnota je následující:

http://localhost:5985/WSMAN

Pokud nezadáte Připojení ionURI, můžete k určení hodnot Připojení ionURI použít parametry UseSSL, ComputerName, Port a ApplicationName.

Platné hodnoty pro segment přenosu identifikátoru URI jsou HTTP a HTTPS. Pokud zadáte identifikátor URI připojení s přenosovým segmentem, ale nezadáte port, relace se vytvoří pomocí standardních portů: 80 pro HTTP a 443 pro HTTPS. Pokud chcete použít výchozí porty pro vzdálené komunikace PowerShellu, zadejte port 5985 pro HTTP nebo 5986 pro HTTPS.

Pokud cílový počítač přesměruje připojení na jiný identifikátor URI, PowerShell zabrání přesměrování, pokud v příkazu nepoužijete parametr AllowRedirection .

Type:Uri
Aliases:URI, CU
Position:1
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ContainerId

Určuje ID kontejneru.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Credential

Určuje uživatelský účet, který má oprávnění k provedení této akce. Ve výchozím nastavení je to aktuální uživatel.

Zadejte uživatelské jméno, například User01 nebo Domain01\User01, nebo zadejte objekt PSCredential vygenerovaný rutinouGet-Credential. Pokud zadáte uživatelské jméno, zobrazí se výzva k zadání hesla.

Přihlašovací údaje jsou uloženy v objektu PSCredential a heslo je uloženo jako SecureString.

Poznámka:

Další informace o ochraně dat SecureString naleznete v tématu Jak zabezpečený je SecureString?.

Type:PSCredential
Position:1
Default value:Current user
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-EnableNetworkAccess

Označuje, že tato rutina přidá interaktivní token zabezpečení do relací zpětné smyčky. Interaktivní token umožňuje spouštět příkazy v relaci zpětné smyčky, které získávají data z jiných počítačů. Můžete například spustit příkaz v relaci, která kopíruje soubory XML ze vzdáleného počítače do místního počítače.

Relace zpětné smyčky je relace PSSession , která pochází a končí na stejném počítači. Chcete-li vytvořit relaci zpětné smyčky, vynecháte parametr ComputerName nebo nastavte jeho hodnotu na . (dot), localhost nebo název místního počítače.

Ve výchozím nastavení se relace zpětné smyčky vytvářejí pomocí síťového tokenu, který nemusí poskytovat dostatečná oprávnění k ověření ve vzdálených počítačích.

Parametr EnableNetworkAccess je efektivní pouze v relacích zpětné smyčky. Pokud při vytváření relace ve vzdáleném počítači použijete EnableNetworkAccess , příkaz bude úspěšný, ale parametr bude ignorován.

Vzdálený přístup v relaci zpětné smyčky můžete povolit také pomocí hodnoty CredSSP parametru Ověřování, který deleguje přihlašovací údaje relace na jiné počítače.

Tento parametr byl představen ve Windows PowerShellu 3.0.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HostName

Určuje název počítače pro připojení založené na SSH (Secure Shell). Podobá se parametru ComputerName s tím rozdílem, že připojení ke vzdálenému počítači se provádí pomocí SSH místo Windows WinRM. Tento parametr podporuje zadání uživatelského jména nebo portu jako součásti hodnoty parametru názvu hostitele pomocí formuláře user@hostname:port. Uživatelské jméno nebo port zadaný jako součást názvu hostitele má přednost před -UserName-Port parametry, pokud jsou zadány. To umožňuje předat více názvů počítačů tomuto parametru, kde některé mají konkrétní uživatelská jména nebo porty, zatímco jiné používají uživatelské jméno a/nebo port z -UserName parametrů.-Port

Tento parametr byl představen v PowerShellu 6.0.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Id

Určuje ID existující relace. Enter-PSSession používá zadanou relaci pro interaktivní relaci.

K vyhledání ID relace použijte rutinu Get-PSSession .

Type:Int32
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-InstanceId

Určuje ID instance existující relace. Enter-PSSession používá zadanou relaci pro interaktivní relaci.

ID instance je identifikátor GUID. K vyhledání ID instance relace použijte rutinu Get-PSSession . K určení existující relace můžete použít také parametry Relace, Název nebo ID . Nebo můžete použít parametr ComputerName ke spuštění dočasné relace.

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-KeyFilePath

Určuje cestu k souboru klíče, kterou používá Secure Shell (SSH) k ověření uživatele na vzdáleném počítači.

SSH umožňuje provádět ověřování uživatelů prostřednictvím privátních nebo veřejných klíčů jako alternativu k základnímu ověřování heslem. Pokud je vzdálený počítač nakonfigurovaný pro ověřování pomocí klíče, můžete tento parametr použít k zadání klíče, který identifikuje uživatele.

Tento parametr byl představen v PowerShellu 6.0.

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

-Name

Určuje popisný název existující relace. Enter-PSSession používá zadanou relaci pro interaktivní relaci.

Pokud zadaný název odpovídá více než jedné relaci, příkaz selže. K určení existující relace můžete použít také parametry Session, InstanceID nebo ID . Nebo můžete použít parametr ComputerName ke spuštění dočasné relace.

Pokud chcete vytvořit popisný název relace, použijte parametr Name rutiny New-PSSession .

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

-Options

Určuje hashovací tabulku možností SSH používaných při připojování ke vzdálené relaci založené na SSH. Možné možnosti jsou všechny hodnoty podporované v unixové verzi příkazu ssh .

Všechny hodnoty, které parametry explicitně předávají, mají přednost před hodnotami předanými v tabulce Hashtable Možnosti . Například použití parametru Port přepíše všechny Port páry klíč-hodnota předané v hashtable Možnosti .

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

-Port

Určuje síťový port na vzdáleném počítači, který se používá pro tento příkaz.

V PowerShellu 6.0 byl tento parametr součástí sady parametrů HostName , která podporuje připojení Secure Shell (SSH).

WinRM (sada parametrů ComputerName)

Pokud se chcete připojit ke vzdálenému počítači, musí vzdálený počítač naslouchat na portu, který připojení používá. Výchozí porty jsou 5985, což je port WinRM pro HTTP a 5986, což je port WinRM pro HTTPS.

Před použitím alternativního portu musíte nakonfigurovat naslouchací proces WinRM na vzdáleném počítači tak, aby naslouchal na tomto portu. Ke konfiguraci naslouchacího procesu použijte následující příkazy:

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

Parametr Port nepoužívejte, pokud ho nepotřebujete. Nastavení portu v příkazu platí pro všechny počítače nebo relace, na kterých se příkaz spouští. Alternativní nastavení portu může zabránit spuštění příkazu na všech počítačích.

SSH (sada parametrů HostName)

Pokud se chcete připojit ke vzdálenému počítači, musí být vzdálený počítač nakonfigurovaný se službou SSH (SSHD) a musí naslouchat na portu, který připojení používá. Výchozí port pro SSH je 22.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RunAsAdministrator

Označuje, že psSession běží jako správce.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Session

Určuje relaci PowerShellu (PSSession), která se má použít pro interaktivní relaci. Tento parametr přebírá objekt relace. K určení psSession můžete také použít parametry Name, InstanceID nebo ID.

Zadejte proměnnou obsahující objekt relace nebo příkaz, který vytvoří nebo získá objekt relace, například New-PSSession příkaz.Get-PSSession Objekt relace můžete také připojit k Enter-PSSessionobjektu relace . Pomocí tohoto parametru můžete odeslat pouze jednu instanci PSSession . Pokud zadáte proměnnou, která obsahuje více než jednu psSession, příkaz selže.

Když použijete Exit-PSSession klíčové slovo EXIT, interaktivní relace skončí, ale relace PSSession, kterou jste vytvořili, zůstane otevřená a dostupná pro použití.

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

-SessionOption

Nastaví upřesňující možnosti relace. Zadejte objekt SessionOption, například objekt, který vytvoříte pomocí New-PSSessionOption rutiny, nebo tabulku hash, ve které jsou klíče názvy možností relace a hodnoty jsou hodnoty možností relace.

Výchozí hodnoty pro možnosti jsou určeny hodnotou $PSSessionOption proměnné předvoleb, pokud je nastavena. V opačném případě se výchozí hodnoty vytvoří pomocí možností nastavených v konfiguraci relace.

Hodnoty možností relace mají přednost před výchozími hodnotami pro relace nastavené v $PSSessionOption proměnné předvoleb a v konfiguraci relace. Nemají však přednost před maximálními hodnotami, kvótami nebo limity nastavenými v konfiguraci relace.

Popis možností relace, včetně výchozích hodnot, naleznete v tématu New-PSSessionOption. Informace o $PSSessionOption proměnné předvoleb najdete v tématu about_Preference_Variables. Další informace o konfiguracích relace najdete v tématu about_Session_Configurations.

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

-SSHTransport

Označuje, že vzdálené připojení je vytvořeno pomocí Secure Shellu (SSH).

PowerShell ve výchozím nastavení používá windows WinRM pro připojení ke vzdálenému počítači. Tento přepínač vynutí PowerShell, aby pro vytvoření vzdáleného připojení založeného na SSH použil parametr HostName.

Tento parametr byl představen v PowerShellu 6.0.

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

-Subsystem

Určuje subsystém SSH používaný pro novou konfiguraci PSSession.

Určuje subsystém, který se má použít v cíli, jak je definováno v sshd_config. Subsystém spustí konkrétní verzi PowerShellu s předdefinovanými parametry. Pokud zadaný subsystém ve vzdáleném počítači neexistuje, příkaz selže.

Pokud se tento parametr nepoužívá, výchozí je subsystém PowerShell.

Type:String
Position:Named
Default value:Powershell
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-UserName

Určuje uživatelské jméno účtu použitého k vytvoření relace ve vzdáleném počítači. Metoda ověřování uživatelů bude záviset na konfiguraci SSH (Secure Shell) na vzdáleném počítači.

Pokud je pro základní ověřování hesla nakonfigurovaný protokol SSH, zobrazí se výzva k zadání hesla uživatele.

Pokud je pro ověřování uživatele založené na klíči nakonfigurovaný protokol SSH, je možné zadat cestu k souboru klíče prostřednictvím parametru KeyFilePath a nezobrazí se výzva k zadání hesla. Všimněte si, že pokud se soubor uživatelského klíče klienta nachází ve známém umístění SSH, není parametr KeyFilePath nutný pro ověřování na základě klíče a ověřování uživatelů proběhne automaticky na základě uživatelského jména. Další informace najdete v dokumentaci SSH týkající se ověřování uživatelů na základě klíčů.

Toto není povinný parametr. Pokud není zadán žádný parametr UserName , použije se pro připojení aktuální přihlášení k uživatelskému jménu.

Tento parametr byl představen v PowerShellu 6.0.

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

-UseSSL

Označuje, že tato rutina používá protokol SSL (Secure Sockets Layer) k navázání připojení ke vzdálenému počítači. Ve výchozím nastavení se ssl nepoužívá.

Ws-Management šifruje veškerý obsah PowerShellu přenášený přes síť. Parametr UseSSL je dodatečná ochrana, která odesílá data přes připojení HTTPS místo připojení HTTP.

Pokud použijete tento parametr, ale protokol SSL není k dispozici na portu použitém pro příkaz, příkaz selže.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VMId

Určuje ID virtuálního počítače.

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

-VMName

Určuje název virtuálního počítače.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

Vstupy

String

Název počítače můžete do této rutiny převést jako řetězec.

PSSession

K této rutině můžete připojit objekt relace.

Výstupy

None

Tato rutina nevrátí žádný výstup.

Poznámky

PowerShell obsahuje následující aliasy pro Enter-PSSession:

  • Všechny platformy:
    • etsn

Pokud se chcete připojit ke vzdálenému počítači, musíte být členem skupiny Správa istrators na vzdáleném počítači. Pokud chcete spustit interaktivní relaci na místním počítači, musíte spustit PowerShell s možností Spustit jako správce .

Při použití Enter-PSSessionse profil uživatele na vzdáleném počítači používá pro interaktivní relaci. Příkazy ve vzdáleném profilu uživatele, včetně příkazů pro přidání modulů PowerShellu a změny příkazového řádku, se spustí před zobrazením vzdáleného řádku.

Enter-PSSession používá nastavení jazykové verze uživatelského rozhraní v místním počítači pro interaktivní relaci. Pokud chcete najít místní jazykovou verzi uživatelského rozhraní, použijte automatickou proměnnou $UICulture .

Enter-PSSession vyžaduje rutiny Get-Command, Out-Defaulta Exit-PSSession rutiny. Pokud tyto rutiny nejsou součástí konfigurace relace ve vzdáleném počítači, příkazy selžou Enter-PSSession .

Na rozdíl od Invoke-Commandtoho, co analyzuje a interpretuje příkazy před jejich odesláním do vzdáleného počítače, Enter-PSSession odešle příkazy přímo do vzdáleného počítače bez interpretace.

Pokud je relace, kterou chcete zadat, zaneprázdněna zpracováním příkazu, může dojít ke zpoždění, než PowerShell na příkaz odpoví Enter-PSSession . Budete připojeni, jakmile bude relace k dispozici. Pokud chcete příkaz zrušitEnter-PSSession, stiskněte ctrl+C.

Sada parametrů HostName byla zahrnuta od PowerShellu 6.0. Bylo přidáno pro poskytování vzdálené komunikace PowerShellu na základě Secure Shellu (SSH). SSH i PowerShell se podporují na několika platformách (Windows, Linux, macOS) a vzdálené komunikace PowerShellu fungují na těchto platformách, kde jsou nainstalované a nakonfigurované PowerShell a SSH. To je oddělené od předchozí vzdálené komunikace windows, která je založená na WinRM a velká část specifických funkcí a omezení WinRM se nevztahují. V současné době se nepodporují například kvóty založené na WinRM, možnosti relace, konfigurace vlastního koncového bodu a odpojení a opětovné připojení. Další informace o nastavení vzdálené komunikace SSH PowerShellu najdete v tématu Vzdálené komunikace PowerShellu přes SSH.

Před PowerShellem 7.1 vzdálené komunikace přes SSH nepodporuje vzdálené relace druhého směrování. Tato funkce byla omezená na relace používající WinRM. PowerShell 7.1 umožňuje Enter-PSSession a Enter-PSHostProcess pracuje z jakékoli interaktivní vzdálené relace.

ssh Spustitelný soubor získá konfigurační data z následujících zdrojů v následujícím pořadí:

  1. Možnosti příkazového řádku
  2. konfigurační soubor uživatele (~/.ssh/config)
  3. konfigurační soubor pro celý systém (/etc/ssh/ssh_config)

Následující parametry rutiny se mapují na ssh parametry a možnosti:

Parametr rutiny Parametr ssh ekvivalentní ssh -o option
-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>

Všechny hodnoty, které parametry explicitně předávají, mají přednost před hodnotami předanými v tabulce Hashtable Možnosti . Další informace o ssh_config souborech najdete v tématu ssh_config(5).