Aracılığıyla paylaş


Enter-PSSession

Uzak bir bilgisayarla etkileşimli oturum başlatır.

Sözdizimi

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

Enter-PSSession cmdlet'i tek bir uzak bilgisayarla etkileşimli bir oturum başlatır. Oturum sırasında, yazdığınız komutlar uzak bilgisayarda doğrudan uzak bilgisayarda yazıyor gibi çalışır. Aynı anda yalnızca bir etkileşimli oturuma sahip olabilirsiniz.

Genellikle uzak bilgisayarın adını belirtmek için ComputerName parametresini kullanırsınız. Ancak, etkileşimli oturum için New-PSSession cmdlet'ini kullanarak oluşturduğunuz bir oturumu da kullanabilirsiniz. Ancak, etkileşimli oturum bağlantısını kesmek veya yeniden bağlanmak için Disconnect-PSSession, Connect-PSSessionveya Receive-PSSession cmdlet'lerini kullanamazsınız.

PowerShell 6.0'dan başlayarak, uzak bir bilgisayara bağlantı kurmak için Secure Shell (SSH) kullanabilirsiniz. Yerel bilgisayarda SSH'niz olmalı ve uzak bilgisayar bir PowerShell SSH uç noktası ile yapılandırılmalıdır. SSH tabanlı bir PowerShell uzak oturumunun avantajı, birden çok platformda (Windows, Linux, macOS) çalışmasıdır. SSH tabanlı uzaktan iletişim için uzak bilgisayarı ve ilgili bağlantı bilgilerini belirtmek üzere HostName parametresini kullanırsınız. PowerShell SSH uzaktan iletişimini ayarlama hakkında daha fazla bilgi için bkz. PowerShell SSH üzerinden uzaktan iletişim.

Etkileşimli oturumu sonlandırmak ve uzak bilgisayar bağlantısını kesmek için Exit-PSSession cmdlet'ini kullanın veya exityazın.

Önemli

Enter-PSSession, geçerli etkileşimli oturumu yeni bir etkileşimli uzak oturumla değiştirmek için tasarlanmıştır. Bunu bir işlev veya betik içinden veya pwsh yürütülebilir dosyasına komut olarak geçirerek çağırmamalısınız.

Örnekler

Örnek 1: Etkileşimli oturum başlatma

PS> Enter-PSSession
[localhost]: PS>

Bu komut yerel bilgisayarda etkileşimli bir oturum başlatır. Komut istemi, artık komutları farklı bir oturumda çalıştırdığınızı gösterecek şekilde değişir.

Girdiğiniz komutlar yeni oturumda çalıştırılır ve sonuçlar varsayılan oturuma metin olarak döndürülür.

Örnek 2: Etkileşimli bir oturumla çalışma

İlk komut, uzak bir bilgisayar olan Server01 ile etkileşimli bir oturum başlatmak için Enter-PSSession cmdlet'ini kullanır. Oturum başladığında, komut istemi bilgisayar adını içerecek şekilde değişir.

İkinci komut PowerShell işlemini alır ve çıkışı Process.txt dosyasına yönlendirir. Komut uzak bilgisayara gönderilir ve dosya uzak bilgisayara kaydedilir.

Üçüncü komut, etkileşimli oturumu sonlandırmak ve bağlantıyı kapatmak için exit anahtar sözcüğünü kullanır. Dördüncü komut, Process.txt dosyasının uzak bilgisayarda olduğunu onaylar. Yerel bilgisayardaki Get-ChildItem ("dir") komutu dosyayı bulamıyor.

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

Bu komut, uzak bir bilgisayarla etkileşimli bir oturumda çalışmayı gösterir.

Örnek 3: Session parametresini kullanma

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

Bu komutlar, etkileşimli oturumu var olan bir PowerShell oturumunda (pssession) çalıştırmak içinEnter-PSSessionOturumu parametresini kullanır.

Örnek 4: Etkileşimli bir oturum başlatın ve Bağlantı Noktası ve Kimlik Bilgisi parametrelerini belirtin

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

Bu komut, Server01 bilgisayarıyla etkileşimli bir oturum başlatır. Bağlantı Noktası parametresini kullanarak, uzak bilgisayara bağlanma izni olan bir kullanıcının hesabını belirtmek üzere bağlantı noktasını ve Kimlik Bilgisi parametresini belirtir.

Örnek 5: Etkileşimli oturumu durdurma

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

Bu örnekte etkileşimli oturumu başlatma ve durdurma gösterilmektedir. İlk komut, Server01 bilgisayarıyla etkileşimli bir oturum başlatmak için Enter-PSSession cmdlet'ini kullanır.

İkinci komut, oturumu sonlandırmak için Exit-PSSession cmdlet'ini kullanır. Etkileşimli oturumu sonlandırmak için exit anahtar sözcüğünü de kullanabilirsiniz. Exit-PSSession ve exit aynı etkiye sahiptir.

Örnek 6: SSH kullanarak etkileşimli oturum başlatma

PS> Enter-PSSession -HostName UserA@LinuxServer01

Bu örnekte Secure Shell (SSH) kullanarak etkileşimli oturum başlatma adımları gösterilmektedir. SSH uzak bilgisayarda parola kullanacak şekilde yapılandırılmışsa parola girmeniz istenir. Aksi takdirde anahtar tabanlı kullanıcı kimlik doğrulaması kullanmanız gerekir.

Örnek 7: Bağlantı noktası ve kullanıcı kimlik doğrulama anahtarıyla SSH kullanarak etkileşimli oturum başlatma

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

Bu örnek, SSH kullanarak etkileşimli oturum başlatmayı gösterir. Kullanıcı adı ve SSH bağlantı noktası numarası, HostName parametresinin değerinin parçaları olarak belirtilir. KeyFilePath parametresi, uzak bilgisayarda kullanıcının kimliğini doğrulamak için kullanılan bir RSA anahtarının konumunu belirtir.

Örnek 8: SSH seçeneklerini kullanarak etkileşimli oturum başlatma

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

Bu örnek, SSH kullanarak etkileşimli oturum başlatmayı gösterir. Seçenekleri parametresi, uzak sistemle kurulan bağlantının temel ssh komutuna seçenek olarak geçirilen değerlerin bir karma tablosu alır.

Parametreler

-AllowRedirection

Bu bağlantının alternatif bir Tekdüzen Kaynak Tanımlayıcısı'na (URI) yeniden yönlendirilmesine izin verir. Varsayılan olarak, yeniden yönlendirmeye izin verilmez.

ConnectionURI parametresini kullandığınızda, uzak hedef farklı bir URI'ye yönlendirme yönergesi döndürebilir. Varsayılan olarak, PowerShell bağlantıları yeniden yönlendirmez, ancak bağlantıyı yeniden yönlendirmesine izin vermek için bu parametreyi kullanabilirsiniz.

Ayrıca, MaximumConnectionRedirectionCount oturum seçeneği değerini değiştirerek bağlantının yeniden yönlendirilme sayısını sınırlayabilirsiniz. cmdlet'in New-PSSessionOption parametresini kullanın veya tercih değişkeninin MaximumConnectionRedirectionCount $PSSessionOption özelliğini ayarlayın. Varsayılan değer 5'tir.

Tür:SwitchParameter
Position:Named
Default value:False
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-ApplicationName

Bağlantı URI'sinin uygulama adı kesimini belirtir. Komutunda ConnectionURI parametresini kullanmadığınızda uygulama adını belirtmek için bu parametreyi kullanın.

Varsayılan değer, yerel bilgisayardaki $PSSessionApplicationName tercih değişkeninin değeridir. Bu tercih değişkeni tanımlanmamışsa, varsayılan değer WSMAN'dır. Bu değer çoğu kullanım için uygundur. Daha fazla bilgi için bkz. about_Preference_Variables.

WinRM hizmeti, bağlantı isteğine hizmet vermek üzere bir dinleyici seçmek için uygulama adını kullanır. Bu parametrenin değeri, uzak bilgisayardaki dinleyicinin URLPrefix özelliğinin değeriyle eşleşmelidir.

Tür:String
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-Authentication

Kullanıcının kimlik bilgilerini doğrulamak için kullanılan mekanizmayı belirtir. Bu parametre için kabul edilebilir değerler şunlardır:

  • Temerrüt
  • Temel
  • Credssp
  • Düzenlemek
  • Kerberos
  • Anlaşma
  • NegotiateWithImplicitCredential

Varsayılan değer Varsayılan'dır.

CredSSP kimlik doğrulaması yalnızca Windows Vista, Windows Server 2008 ve Windows işletim sisteminin sonraki sürümlerinde kullanılabilir.

Bu parametrenin değerleri hakkında daha fazla bilgi için bkz. authenticationMechanism Enum .

Dikkat

Kullanıcının kimlik bilgilerinin kimlik doğrulaması için uzak bir bilgisayara geçirildiği Kimlik Bilgisi Güvenlik Destek Sağlayıcısı (CredSSP) kimlik doğrulaması, uzak ağ paylaşımına erişme gibi birden fazla kaynakta kimlik doğrulaması gerektiren komutlar için tasarlanmıştır. Bu mekanizma, uzak işlemin güvenlik riskini artırır. Uzak bilgisayarın güvenliği aşılırsa, bu bilgisayara geçirilen kimlik bilgileri ağ oturumunu denetlemek için kullanılabilir.

Tür:AuthenticationMechanism
Kabul edilen değerler:Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-CertificateThumbprint

Bu eylemi gerçekleştirme izni olan bir kullanıcı hesabının dijital ortak anahtar sertifikasını (X509) belirtir. Sertifikanın sertifika parmak izini girin.

Sertifikalar, istemci sertifikası tabanlı kimlik doğrulamasında kullanılır. Bunlar yalnızca yerel kullanıcı hesaplarıyla eşlenebilir; etki alanı hesaplarıyla çalışmaz.

Sertifika almak için PowerShell Cert: sürücüsündeki Get-Item veya Get-ChildItem komutunu kullanın.

Tür:String
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-ComputerName

Bir bilgisayar adı belirtir. Bu cmdlet, belirtilen uzak bilgisayarla etkileşimli bir oturum başlatır. Yalnızca bir bilgisayar adı girin. Varsayılan değer yerel bilgisayardır.

NetBIOS adını, IP adresini veya bilgisayarın tam etki alanı adını yazın. Ayrıca bir bilgisayar adını Enter-PSSession.

ComputerName parametresinin değerinde bir IP adresi kullanmak için komutun Kimlik Bilgisi parametresini içermesi gerekir. Ayrıca, bilgisayar HTTPS aktarımı için yapılandırılmalıdır veya uzak bilgisayarın IP adresi yerel bilgisayardaki WinRM TrustedHosts listesine eklenmelidir. TrustedHosts listesine bilgisayar adı ekleme yönergeleri için, about_Remote_Troubleshooting'de "Güvenilen Ana Bilgisayar Listesine Bilgisayar Ekleme" bölümüne bakın.

Not

Windows işletim sisteminde, yerel bilgisayarı ComputerName parametresinin değerine eklemek için PowerShell'i Yönetici olarak çalıştır seçeneğiyle başlatmanız gerekir.

Tür:String
Diğer adlar:Cn
Position:0
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-ConfigurationName

Etkileşimli oturum için kullanılan oturum yapılandırmasını belirtir.

Oturum yapılandırması için bir yapılandırma adı veya tam kaynak URI'sini girin. Yalnızca yapılandırma adını belirtirseniz, aşağıdaki şema URI'sinin başına eklenir: http://schemas.microsoft.com/powershell.

SSH ile kullanıldığında, sshd_config'de tanımlandığı gibi hedefte kullanılacak alt sistemi belirtir. SSH için varsayılan değer powershell alt sistemidir.

Oturumun oturum yapılandırması uzak bilgisayarda bulunur. Belirtilen oturum yapılandırması uzak bilgisayarda yoksa, komut başarısız olur.

Varsayılan değer, yerel bilgisayardaki $PSSessionConfigurationName tercih değişkeninin değeridir. Bu tercih değişkeni ayarlı değilse, varsayılan değer Microsoft.PowerShell'dir. Daha fazla bilgi için bkz. about_Preference_Variables.

Tür:String
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-ConnectingTimeout

İlk SSH bağlantısının tamamlanması için izin verilen süreyi milisaniye cinsinden belirtir. Bağlantı belirtilen süre içinde tamamlanmazsa bir hata döndürülür.

Bu parametre PowerShell 7.2'de kullanıma sunulmuştur

Tür:Int32
Position:Named
Default value:unlimited
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-ConnectionUri

Oturum için bağlantı uç noktasını tanımlayan bir URI belirtir. URI tam olarak nitelenmiş olmalıdır. Bu dizenin biçimi aşağıdaki gibidir:

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

Varsayılan değer aşağıdaki gibidir:

http://localhost:5985/WSMAN

ConnectionURIbelirtmezseniz, ConnectionURI değerlerini belirtmek için UseSSL, ComputerName, Bağlantı Noktasıve ApplicationName parametrelerini kullanabilirsiniz.

URI'nin Aktarım kesimi için geçerli değerler HTTP ve HTTPS'dir. Aktarım kesimiyle bağlantı URI'sini belirtirseniz, ancak bağlantı noktası belirtmezseniz, oturum standart bağlantı noktaları kullanılarak oluşturulur: HTTP için 80 ve HTTPS için 443. PowerShell uzaktan iletişiminde varsayılan bağlantı noktalarını kullanmak için HTTP için 5985 veya HTTPS için 5986 numaralı bağlantı noktasını belirtin.

Hedef bilgisayar bağlantıyı farklı bir URI'ye yönlendirirse, komutta AllowRedirection parametresini kullanmadığınız sürece PowerShell yeniden yönlendirmeyi engeller.

Tür:Uri
Diğer adlar:URI, CU
Position:1
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-ContainerId

Kapsayıcının kimliğini belirtir.

Tür:String
Position:0
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-Credential

Bu eylemi gerçekleştirme iznine sahip bir kullanıcı hesabı belirtir. Varsayılan değer geçerli kullanıcıdır.

User01 veya Domain01\User01gibi bir kullanıcı adı yazın veya cmdlet'i tarafından oluşturulan Get-Credential nesnesi girin. Bir kullanıcı adı yazarsanız parolayı girmeniz istenir.

Kimlik bilgileri bir PSCredential nesnesinde depolanır ve parola SecureStringolarak depolanır.

Not

SecureString veri koruması hakkında daha fazla bilgi için bkz. SecureString ne kadar güvenli?.

Tür:PSCredential
Position:1
Default value:Current user
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-EnableNetworkAccess

Bu cmdlet'in geri döngü oturumlarına etkileşimli bir güvenlik belirteci eklediğini gösterir. Etkileşimli belirteç, geri döngü oturumunda diğer bilgisayarlardan veri alan komutları çalıştırmanıza olanak tanır. Örneğin, oturumda xml dosyalarını uzak bir bilgisayardan yerel bilgisayara kopyalayan bir komut çalıştırabilirsiniz.

Geri döngü oturumu, aynı bilgisayarda kaynaklanıp biten bir PSSession. Geri döngü oturumu oluşturmak için, ComputerName parametresini atleyin veya değerini olarak ayarlayın. (nokta), localhost veya yerel bilgisayarın adı.

Varsayılan olarak, geri döngü oturumları bir ağ belirteci kullanılarak oluşturulur ve bu, uzak bilgisayarlarda kimlik doğrulaması için yeterli izin sağlamayabilir.

EnableNetworkAccess parametresi yalnızca geri döngü oturumlarında etkilidir. Uzak bilgisayarda oturum oluştururken EnableNetworkAccess kullanırsanız komut başarılı olur, ancak parametre yoksayılır.

Ayrıca, oturum kimlik bilgilerini diğer bilgisayarlara devreden Kimlik Doğrulaması parametresinin CredSSP değerini kullanarak bir geri döngü oturumunda uzaktan erişime izin verebilirsiniz.

Bu parametre Windows PowerShell 3.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Position:Named
Default value:False
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-HostName

Secure Shell (SSH) tabanlı bağlantı için bir bilgisayar adı belirtir. Bu, ComputerName parametresine benzer, ancak uzak bilgisayara bağlantı Windows WinRM yerine SSH kullanılarak yapılır. Bu parametre, user@hostname:portformu kullanılarak HostName parametre değerinin bir parçası olarak kullanıcı adını ve/veya bağlantı noktasını belirtmeyi destekler. Ana bilgisayar adının bir parçası olarak belirtilen kullanıcı adı ve/veya bağlantı noktası, -UserName ve belirtilmişse -Port parametrelerinden önceliklidir. Bu, bazılarında belirli kullanıcı adlarının ve/veya bağlantı noktalarının bulunduğu bu parametreye birden çok bilgisayar adı geçirilmesine olanak tanırken, diğerleri -UserName ve -Port parametrelerinden kullanıcı adını ve/veya bağlantı noktasını kullanır.

Bu parametre PowerShell 6.0'da kullanıma sunulmuştur.

Tür:String
Position:0
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-Id

Mevcut oturumun kimliğini belirtir. Enter-PSSession etkileşimli oturum için belirtilen oturumu kullanır.

Oturumun kimliğini bulmak için Get-PSSession cmdlet'ini kullanın.

Tür:Int32
Position:0
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-InstanceId

Mevcut oturumun örnek kimliğini belirtir. Enter-PSSession etkileşimli oturum için belirtilen oturumu kullanır.

Örnek kimliği bir GUID'dir. Oturumun örnek kimliğini bulmak için Get-PSSession cmdlet'ini kullanın. Var olan bir oturumu belirtmek için Oturum, Adveya Kimliği parametrelerini de kullanabilirsiniz. Alternatif olarak, geçici bir oturum başlatmak için ComputerName parametresini de kullanabilirsiniz.

Tür:Guid
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-KeyFilePath

Secure Shell (SSH) tarafından uzak bilgisayardaki bir kullanıcının kimliğini doğrulamak için kullanılan anahtar dosya yolunu belirtir.

SSH, kullanıcı kimlik doğrulamasının temel parola kimlik doğrulamasına alternatif olarak özel/ortak anahtarlar aracılığıyla gerçekleştirilmesini sağlar. Uzak bilgisayar anahtar kimlik doğrulaması için yapılandırılmışsa, bu parametre kullanıcıyı tanımlayan anahtarı sağlamak için kullanılabilir.

Bu parametre PowerShell 6.0'da kullanıma sunulmuştur.

Tür:String
Diğer adlar:IdentityFilePath
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Name

Mevcut oturumun kolay adını belirtir. Enter-PSSession etkileşimli oturum için belirtilen oturumu kullanır.

Belirttiğiniz ad birden fazla oturumla eşleşiyorsa, komut başarısız olur. Ayrıca mevcut bir oturumu belirtmek için Oturum, InstanceIdveya Kimliği parametrelerini de kullanabilirsiniz. Alternatif olarak, geçici bir oturum başlatmak için ComputerName parametresini de kullanabilirsiniz.

Oturum için kolay bir ad oluşturmak için cmdlet'in New-PSSession parametresini kullanın.

Tür:String
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-Options

Uzak SSH tabanlı bir oturuma bağlanırken kullanılan SSH seçeneklerinin karma tablosu belirtir. Olası seçenekler, ssh komutunun Unix tabanlı sürümü tarafından desteklenen tüm değerlerdir.

Parametreler tarafından açıkça geçirilen tüm değerler, Seçenekleri karma tablosuna geçirilen değerlerden önceliklidir. Örneğin, Bağlantı Noktası parametresinin kullanılması, Port karma tablosuna geçirilen anahtar-değer çiftlerini geçersiz kılar.

Tür:Hashtable
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Port

Bu komut için kullanılan uzak bilgisayardaki ağ bağlantı noktasını belirtir.

PowerShell 6.0'da bu parametre, Secure Shell (SSH) bağlantılarını destekleyen HostName parametre kümesine dahil edildi.

WinRM (ComputerName parametre kümesi)

Uzak bilgisayara bağlanmak için, uzak bilgisayar bağlantının kullandığı bağlantı noktasında dinliyor olmalıdır. Varsayılan bağlantı noktaları, HTTP için WinRM bağlantı noktası olan 5985 ve HTTPS için WinRM bağlantı noktası olan 5986'dır.

Alternatif bir bağlantı noktası kullanmadan önce, uzak bilgisayardaki WinRM dinleyicisini bu bağlantı noktasını dinleyecek şekilde yapılandırmanız gerekir. Dinleyiciyi yapılandırmak için aşağıdaki komutları kullanın:

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

gerekmediği sürece Bağlantı Noktası parametresini kullanmayın. Komuttaki bağlantı noktası ayarı, komutun çalıştığı tüm bilgisayarlar veya oturumlar için geçerlidir. Alternatif bir bağlantı noktası ayarı, komutun tüm bilgisayarlarda çalışmasını engelleyebilir.

SSH (HostName parametre kümesi)

Uzak bilgisayara bağlanmak için, uzak bilgisayarın SSH hizmeti (SSHD) ile yapılandırılması ve bağlantının kullandığı bağlantı noktasını dinliyor olması gerekir. SSH için varsayılan bağlantı noktası 22'dir.

Tür:Int32
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-RunAsAdministrator

PSSession yönetici olarak çalıştığını gösterir.

Tür:SwitchParameter
Position:Named
Default value:False
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Session

Etkileşimli oturum için kullanılacak bir PowerShell oturumu (PSSession) belirtir. Bu parametre bir oturum nesnesi alır. PSSessionbelirtmek için Adı, InstanceIdveya Kimliği parametrelerini de kullanabilirsiniz.

New-PSSession veya Get-PSSession komutu gibi oturum nesnesi oluşturan veya alan bir oturum nesnesi veya komut içeren bir değişken girin. Ayrıca bir oturum nesnesini Enter-PSSession'e de yöneltebilirsiniz. Bu parametreyi kullanarak yalnızca bir PSSession gönderebilirsiniz. Birden fazla PSSessioniçeren bir değişken girerseniz komut başarısız olur.

Exit-PSSession veya exit anahtar sözcüğünü kullandığınızda etkileşimli oturum sona erer, ancak oluşturduğunuz PSSession açık ve kullanılabilir durumda kalır.

Tür:PSSession
Position:0
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-SessionOption

Oturum için gelişmiş seçenekleri ayarlar. cmdlet'ini kullanarak oluşturduğunuz bir nesne veya anahtarların oturum seçeneği adları ve değerlerin oturum seçeneği değerleri olduğu karma tablo gibi bir New-PSSessionOption nesnesi girin.

Seçenekler için varsayılan değerler, ayarlanmışsa $PSSessionOption tercih değişkeninin değerine göre belirlenir. Aksi takdirde, varsayılan değerler oturum yapılandırmasında ayarlanan seçenekler tarafından oluşturulur.

Oturum seçeneği değerleri, $PSSessionOption tercih değişkeninde ve oturum yapılandırmasında ayarlanan oturumlar için varsayılan değerlerden önceliklidir. Ancak, bunlar oturum yapılandırmasında ayarlanan maksimum değer, kota veya sınırlardan öncelikli değildir.

Varsayılan değerler de dahil olmak üzere oturum seçeneklerinin açıklaması için bkz. New-PSSessionOption. $PSSessionOption tercih değişkeni hakkında bilgi için bkz. about_Preference_Variables. Oturum yapılandırmaları hakkında daha fazla bilgi için bkz. about_Session_Configurations.

Tür:PSSessionOption
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-SSHTransport

Uzak bağlantının Secure Shell (SSH) kullanılarak kurulduğunu gösterir.

PowerShell varsayılan olarak uzak bir bilgisayara bağlanmak için Windows WinRM kullanır. Bu anahtar, PowerShell'i SSH tabanlı uzak bağlantı kurmak için HostName parametre kümesini kullanmaya zorlar.

Bu parametre PowerShell 6.0'da kullanıma sunulmuştur.

Tür:SwitchParameter
Kabul edilen değerler:true
Position:Named
Default value:False
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Subsystem

Yeni PSSessioniçin kullanılan SSH alt sistemini belirtir.

Bu, sshd_config'de tanımlandığı gibi hedefte kullanılacak alt sistemi belirtir. Alt sistem, önceden tanımlanmış parametrelerle belirli bir PowerShell sürümünü başlatır. Belirtilen alt sistem uzak bilgisayarda yoksa, komut başarısız olur.

Bu parametre kullanılmıyorsa, varsayılan değer powershell alt sistemidir.

Tür:String
Position:Named
Default value:Powershell
Gerekli:False
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-UserName

Uzak bilgisayarda oturum oluşturmak için kullanılan hesabın kullanıcı adını belirtir. Kullanıcı kimlik doğrulama yöntemi, Secure Shell'in (SSH) uzak bilgisayarda nasıl yapılandırıldığına bağlıdır.

SSH temel parola kimlik doğrulaması için yapılandırılmışsa kullanıcı parolası istenir.

SSH anahtar tabanlı kullanıcı kimlik doğrulaması için yapılandırılmışsa sizden parola istenmez. SSH anahtar dosyasının yolunu sağlamanız gerekir. Kullanıcı anahtarı dosyası bilinen bir SSH konumunda bulunuyorsa KeyFilePath parametresi gerekli değildir. Kullanıcı kimlik doğrulaması, kullanıcı adına göre otomatik olarak gerçekleşir. Daha fazla bilgi için anahtar tabanlı kullanıcı kimlik doğrulaması hakkında SSH belgelerine bakın.

UserName parametresi belirtilmezse, oturum açmış geçerli kullanıcı adı kullanılır.

Bu parametre PowerShell 6.0'da kullanıma sunulmuştur.

Tür:String
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-UseSSL

Bu cmdlet'in uzak bilgisayara bağlantı kurmak için Güvenli Yuva Katmanı (SSL) protokolunu kullandığını gösterir. Varsayılan olarak SSL kullanılmaz.

WS-Management ağ üzerinden iletilen tüm PowerShell içeriğini şifreler. UseSSL parametresi, verileri HTTP bağlantısı yerine https bağlantısı üzerinden gönderen ek bir korumadır.

Bu parametreyi kullanıyorsanız ancak komut için kullanılan bağlantı noktasında SSL kullanılamıyorsa, komut başarısız olur.

Tür:SwitchParameter
Position:Named
Default value:False
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-VMId

Sanal makinenin kimliğini belirtir.

Tür:Guid
Diğer adlar:VMGuid
Position:0
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-VMName

Sanal makinenin adını belirtir.

Tür:String
Position:0
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

Girişler

String

Bu cmdlet'e bir bilgisayar adını dize olarak yöneltebilirsiniz.

PSSession

Oturum nesnesini bu cmdlet'e yöneltebilirsiniz.

Çıkışlar

None

Bu cmdlet çıkış döndürmez.

Notlar

PowerShell, Enter-PSSessioniçin aşağıdaki diğer adları içerir:

  • Tüm platformlar:
    • etsn

Uzak bilgisayara bağlanmak için uzak bilgisayardaki Yöneticiler grubunun üyesi olmanız gerekir. Yerel bilgisayarda etkileşimli bir oturum başlatmak için PowerShell'i Yönetici olarak çalıştır seçeneğiyle başlatmanız gerekir.

Enter-PSSessionkullandığınızda, etkileşimli oturum için uzak bilgisayardaki kullanıcı profiliniz kullanılır. Uzak kullanıcı profilindeki komutlar, PowerShell modülleri ekleme ve komut istemini değiştirme komutları da dahil olmak üzere, uzak istem görüntülenmeden önce çalıştırılır.

Enter-PSSession, etkileşimli oturum için yerel bilgisayardaki kullanıcı arabirimi kültürü ayarını kullanır. Yerel kullanıcı arabirimi kültürünü bulmak için $UICulture otomatik değişkenini kullanın.

Enter-PSSession Get-Command, Out-Defaultve Exit-PSSession cmdlet'leri gerektirir. Bu cmdlet'ler uzak bilgisayardaki oturum yapılandırmasına dahil değilse, Enter-PSSession komutları başarısız olur.

komutları uzak bilgisayara göndermeden önce ayrıştıran ve yorumlayan Invoke-Commandaksine, Enter-PSSession komutları yorumlamadan doğrudan uzak bilgisayara gönderir.

Girmek istediğiniz oturum bir komutu işlemekle meşgulse, PowerShell'in Enter-PSSession komutuna yanıt vermesi gecikmeli olabilir. Oturum kullanılabilir olduğunda bağlanırsınız. Enter-PSSession komutunu iptal etmek için CTRL+Ctuşlarına basın.

HostName parametre kümesi PowerShell 6.0'dan başlayarak eklenmiştir. Secure Shell (SSH) tabanlı PowerShell uzaktan iletişimini sağlamak için eklendi. Hem SSH hem de PowerShell birden çok platformda (Windows, Linux, macOS) desteklenir ve PowerShell ve SSH'nin yüklendiği ve yapılandırıldığı bu platformlarda PowerShell uzaktan iletişim çalışır. Bu, yalnızca WinRM'yi temel alan önceki Windows uzaktan iletişiminden ayrıdır ve WinRM'ye özgü özelliklerin ve sınırlamaların çoğu geçerli değildir. Örneğin, WinRM tabanlı kotalar, oturum seçenekleri, özel uç nokta yapılandırması ve bağlantı kesme/yeniden bağlanma özellikleri şu anda desteklenmemektedir. PowerShell SSH uzaktan iletişimini ayarlama hakkında daha fazla bilgi için bkz. PowerShell SSH üzerinden uzaktan iletişim.

PowerShell 7.1'den önce SSH üzerinden uzaktan iletişim, ikinci atlama uzak oturumlarını desteklemiyordu. Bu özellik WinRM kullanan oturumlarla sınırlıydı. PowerShell 7.1, Enter-PSSession ve Enter-PSHostProcess herhangi bir etkileşimli uzak oturumdan çalışmasına olanak tanır.

ssh yürütülebilir dosyası aşağıdaki kaynaklardan yapılandırma verilerini aşağıdaki sırayla elde eder:

  1. komut satırı seçenekleri
  2. kullanıcının yapılandırma dosyası (~/.ssh/config)
  3. sistem genelinde yapılandırma dosyası (/etc/ssh/ssh_config)

Aşağıdaki cmdlet parametreleri ssh parametreleri ve seçenekleriyle eşlenir:

Cmdlet parametresi ssh parametresi eşdeğer ssh -o seçeneği
-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>

Parametreler tarafından açıkça geçirilen tüm değerler, Seçenekleri karma tablosuna geçirilen değerlerden önceliklidir. ssh_config dosyaları hakkında daha fazla bilgi için bkz. ssh_config(5).