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
Cmdlet, Enter-PSSession
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 cmdlet'ini New-PSSession
kullanarak oluşturduğunuz bir oturumu da kullanabilirsiniz. Ancak, etkileşimli oturum bağlantısını Disconnect-PSSession
kesmek veya yeniden bağlanmak için , Connect-PSSession
veya 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 için HostName parametre kümesini kullanırsınız. PowerShell SSH uzaktan iletişimini ayarlama hakkında daha fazla bilgi için bkz . SSH Üzerinden PowerShell Uzaktan İletişimi.
Etkileşimli oturumu sonlandırmak ve uzak bilgisayar bağlantısını kesmek için cmdlet'ini Exit-PSSession
kullanın veya yazın exit
.
Ö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 yürütülebilir dosyaya pwsh
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 Enter-PSSession
Server01 ile etkileşimli bir oturum başlatmak için 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ışı dosyaya Process.txt
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. Get-ChildItem
Yerel bilgisayardaki bir ("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çin session parametresini Enter-PSSession
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. Uzak bilgisayara bağlanma izni olan bir kullanıcının hesabını belirtmek üzere bağlantı noktasını ve Credential parametresini belirtmek için Bağlantı Noktası parametresini kullanır.
Ö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 cmdlet'ini kullanır Enter-PSSession
.
İkinci komut, oturumu sonlandırmak için cmdlet'ini kullanır Exit-PSSession
. 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. Options parametresi, uzak sistemle kurulan bağlantıyı temel alınan ssh
komuta seçenek olarak geçirilen değerlerin 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
MaximumRedirection parametresini kullanın veya tercih değişkeninin MaximumConnectionRedirectionCount özelliğini $PSSessionOption
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 tercih değişkeninin değeridir $PSSessionApplicationName
. 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 parametrenin kabul edilebilir değerleri şunlardır:
- Varsayılan
- 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 veya Get-ChildItem
komutunu kullanınGet-Item
.
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, yerel bilgisayardır.
NetBIOS adını, IP adresini veya bilgisayarın tam etki alanı adını yazın. Ayrıca, bir bilgisayar adını adresine Enter-PSSession
de yöneltebilirsiniz.
ComputerName parametresinin değerinde bir IP adresi kullanmak için komutun Credential 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 alt sistemdir powershell
.
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 tercih değişkeninin değeridir $PSSessionConfigurationName
. 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
Bir ConnectionURI belirtmezseniz, 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, komutunda 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, mevcut kullanıcıdır.
User01 veya Domain01\User01 gibi bir kullanıcı adı yazın veya cmdlet tarafından Get-Credential
oluşturulan bir PSCredential nesnesi girin. Bir kullanıcı adı yazarsanız parolayı girmeniz istenir.
Kimlik bilgileri bir PSCredential nesnesinde depolanır ve parola SecureString olarak 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'dır . 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ıyorsanız, komut başarılı olur, ancak parametre yoksayılır.
Ayrıca, oturum kimlik bilgilerini diğer bilgisayarlara devreden Authentication 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, Uzak bilgisayara bağlantının Windows WinRM yerine SSH kullanılarak yapılması dışında ComputerName parametresine benzer. Bu parametre, formu user@hostname:port
kullanılarak konak adı parametre değerinin bir parçası olarak kullanıcı adını ve/veya bağlantı noktasını belirtmeyi destekler. Konak adının bir parçası olarak belirtilen kullanıcı adı ve/veya bağlantı noktası, belirtildiyse ve -Port
parametrelerinden önceliklidir-UserName
. 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 ve -Port
parametrelerinden -UserName
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 cmdlet'ini Get-PSSession
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 cmdlet'ini Get-PSSession
kullanın. Var olan bir oturumu belirtmek için Oturum, Ad veya Kimlik parametrelerini de kullanabilirsiniz. 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. Var olan bir oturumu belirtmek için Oturum, ÖrnekKimliği veya Kimlik parametrelerini de kullanabilirsiniz. Geçici bir oturum başlatmak için ComputerName parametresini de kullanabilirsiniz.
Oturum için kolay bir ad oluşturmak için cmdlet'in Name parametresini New-PSSession
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çenekler karma tablosuna geçirilen değerlerden önceliklidir. Örneğin, Bağlantı noktası parametresini kullanmak, Seçenekler karma tablosuna geçirilen tüm Port
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:
winrm delete winrm/config/listener?Address=*+Transport=HTTP
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'un 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. PsSession belirtmek için Name, InstanceID veya ID parametrelerini de kullanabilirsiniz.
Ya da komutu gibi bir oturum nesnesi oluşturan veya alan bir oturum nesnesi veya komut içeren bir New-PSSession
Get-PSSession
değişken girin. Ayrıca bir oturum nesnesini öğesine de yöneltebilirsiniz Enter-PSSession
. Bu parametreyi kullanarak yalnızca bir PSSession gönderebilirsiniz. Birden fazla PSSession içeren bir değişken girerseniz komut başarısız olur.
veya EXIT anahtar sözcüğünü kullandığınızda Exit-PSSession
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 New-PSSessionOption
oluşturduğunuz bir SessionOption nesnesi veya anahtarların oturum seçeneği adları ve değerlerin oturum seçeneği değerleri olduğu bir karma tablo girin.
Seçenekler için varsayılan değerler, ayarlanmışsa tercih değişkeninin $PSSessionOption
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, tercih değişkeninde ve oturum yapılandırmasında $PSSessionOption
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
. .
Tercih değişkeni hakkında $PSSessionOption
bilgi için bkz . about_Preference_Variables. Oturum yapılandırmaları hakkında daha fazla bilgi edinmek 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 PSSession iç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 alt sistemdir powershell
.
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
Bu cmdlet'e bir bilgisayar adını dize olarak yöneltebilirsiniz.
Oturum nesnesini bu cmdlet'e yöneltebilirsiniz.
Çıkışlar
None
Bu cmdlet çıkış döndürmez.
Notlar
PowerShell için aşağıdaki diğer adları Enter-PSSession
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 oturum başlatmak için PowerShell'i Yönetici olarak çalıştır seçeneğiyle başlatmanız gerekir.
kullandığınızda Enter-PSSession
, 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 otomatik değişkenini $UICulture
kullanın.
Enter-PSSession
Get-Command
, Out-Default
ve Exit-PSSession
cmdlet'lerini gerektirir. Bu cmdlet'ler uzak bilgisayardaki oturum yapılandırmasına dahil değilse, Enter-PSSession
komutlar başarısız olur.
komutlarını uzak bilgisayara göndermeden önce ayrıştıran ve yorumlayan komutlarından farklı olarak Invoke-Command
, Enter-PSSession
komutları yorumlamadan doğrudan uzak bilgisayara gönderir.
Girmek istediğiniz oturum bir komutu işlemekle meşgulse, PowerShell'in komuta yanıt vermesi Enter-PSSession
gecikmeli olabilir. Oturum kullanılabilir olduğunda bağlanırsınız. Komutu iptal Enter-PSSession
etmek için CTRL C tuşuna+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 . SSH Üzerinden PowerShell Uzaktan İletişimi.
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, tüm etkileşimli uzak oturumların içinden çalışmasına izin verirEnter-PSSession
.Enter-PSHostProcess
Yürütülebilir ssh
dosya, yapılandırma verilerini aşağıdaki kaynaklardan aşağıdaki sırayla elde eder:
- komut satırı seçenekleri
- kullanıcının yapılandırma dosyası (~/.ssh/config)
- sistem genelinde yapılandırma dosyası (/etc/ssh/ssh_config)
Aşağıdaki cmdlet parametreleri parametrelere ve seçeneklere ssh
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çenekler karma tablosuna geçirilen değerlerden önceliklidir. Dosyalar hakkında ssh_config
daha fazla bilgi için bkz . ssh_config(5).
İlişkili Bağlantılar
PowerShell