Enter-PSSession
Memulai sesi interaktif dengan komputer jarak jauh.
Sintaks
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>]
Deskripsi
Enter-PSSession
Cmdlet memulai sesi interaktif dengan satu komputer jarak jauh. Selama sesi, perintah yang Anda ketik berjalan di komputer jarak jauh, seolah-olah Anda mengetik langsung di komputer jarak jauh. Anda hanya dapat memiliki satu sesi interaktif pada satu waktu.
Biasanya, Anda menggunakan parameter ComputerName untuk menentukan nama komputer jarak jauh.
Namun, Anda juga dapat menggunakan sesi yang Anda buat dengan menggunakan New-PSSession
cmdlet untuk sesi interaktif. Namun, Anda tidak dapat menggunakan Disconnect-PSSession
cmdlet , , Connect-PSSession
atau Receive-PSSession
untuk memutuskan sambungan dari atau terhubung kembali ke sesi interaktif.
Dimulai dengan PowerShell 6.0 Anda dapat menggunakan Secure Shell (SSH) untuk membuat koneksi ke komputer jarak jauh. Anda harus memiliki SSH di komputer lokal dan komputer jarak jauh harus dikonfigurasi dengan titik akhir PowerShell SSH. Manfaat dari sesi jarak jauh PowerShell berbasis SSH adalah berfungsi di beberapa platform (Windows, Linux, macOS). Untuk jarak jauh berbasis SSH, Anda menggunakan parameter HostName yang diatur untuk menentukan komputer jarak jauh dan informasi koneksi yang relevan. Untuk informasi selengkapnya tentang cara menyiapkan remoting PowerShell SSH, lihat PowerShell Remoting Over SSH.
Untuk mengakhiri sesi interaktif dan memutuskan sambungan dari komputer jarak jauh, gunakan Exit-PSSession
cmdlet, atau ketik exit
.
Penting
Enter-PSSession
dirancang untuk mengganti sesi interaktif saat ini dengan sesi jarak jauh interaktif baru. Anda tidak boleh memanggilnya dari dalam fungsi atau skrip atau dengan meneruskannya sebagai perintah ke executable pwsh
.
Contoh
Contoh 1: Memulai sesi interaktif
PS> Enter-PSSession
[localhost]: PS>
Perintah ini memulai sesi interaktif pada komputer lokal. Perintah berubah untuk menunjukkan bahwa Anda sekarang menjalankan perintah dalam sesi yang berbeda.
Perintah yang Anda masukkan berjalan di sesi baru, dan hasilnya dikembalikan ke sesi default sebagai teks.
Contoh 2: Bekerja dengan sesi interaktif
Perintah pertama menggunakan Enter-PSSession
cmdlet untuk memulai sesi interaktif dengan Server01, komputer jarak jauh. Saat sesi dimulai, perintah berubah untuk menyertakan nama komputer.
Perintah kedua mendapatkan proses PowerShell dan mengalihkan output ke Process.txt
file.
Perintah dikirimkan ke komputer jarak jauh, dan file disimpan di komputer jarak jauh.
Perintah ketiga menggunakan kata kunci Keluar untuk mengakhiri sesi interaktif dan menutup koneksi.
Perintah keempat mengonfirmasi bahwa file Process.txt ada di komputer jarak jauh. Get-ChildItem
Perintah ("dir") di komputer lokal tidak dapat menemukan file.
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
Perintah ini menunjukkan cara bekerja dalam sesi interaktif dengan komputer jarak jauh.
Contoh 3: Gunakan parameter Sesi
PS> $s = New-PSSession -ComputerName Server01
PS> Enter-PSSession -Session $s
[Server01]: PS>
Perintah ini menggunakan parameter Enter-PSSession
Sesi untuk menjalankan sesi interaktif dalam sesi PowerShell yang ada (PSSession).
Contoh 4: Mulai sesi interaktif dan tentukan parameter Port dan Kredensial
PS> Enter-PSSession -ComputerName Server01 -Port 90 -Credential Domain01\User01
[Server01]: PS>
Perintah ini memulai sesi interaktif dengan komputer Server01. Ini menggunakan parameter Port untuk menentukan port dan parameter Kredensial untuk menentukan akun pengguna yang memiliki izin untuk menyambungkan ke komputer jarak jauh.
Contoh 5: Menghentikan sesi interaktif
PS> Enter-PSSession -ComputerName Server01
[Server01]: PS> Exit-PSSession
PS>
Contoh ini menunjukkan cara memulai dan menghentikan sesi interaktif. Perintah pertama menggunakan Enter-PSSession
cmdlet untuk memulai sesi interaktif dengan komputer Server01.
Perintah kedua menggunakan Exit-PSSession
cmdlet untuk mengakhiri sesi. Anda juga dapat menggunakan kata kunci Keluar untuk mengakhiri sesi interaktif. Exit-PSSession
dan Keluar memiliki efek yang sama.
Contoh 6: Memulai sesi interaktif menggunakan SSH
PS> Enter-PSSession -HostName UserA@LinuxServer01
Contoh ini menunjukkan cara memulai sesi interaktif menggunakan Secure Shell (SSH). Jika SSH dikonfigurasi pada komputer jarak jauh untuk menggunakan kata sandi, Maka Anda diminta untuk memasukkan kata sandi. Jika tidak, Anda harus menggunakan autentikasi pengguna berbasis kunci.
Contoh 7: Memulai sesi interaktif menggunakan SSH dengan port dan kunci autentikasi pengguna
PS> Enter-PSSession -HostName UserA@LinuxServer02:22 -KeyFilePath c:\sshkeys\userAKey_rsa
Contoh ini menunjukkan cara memulai sesi interaktif menggunakan SSH. Nama pengguna dan nomor port SSH ditentukan sebagai bagian dari nilai parameter HostName . Parameter KeyFilePath menentukan lokasi kunci RSA yang digunakan untuk mengautentikasi pengguna di komputer jarak jauh.
Contoh 8: Memulai sesi interaktif menggunakan opsi SSH
$options = @{
Port=22
User = 'UserA'
Host = 'LinuxServer02'
}
Enter-PSSession -KeyFilePath c:\sshkeys\userAKey_rsa -Options $options
Contoh ini menunjukkan cara memulai sesi interaktif menggunakan SSH. Parameter Opsi mengambil hashtable nilai yang diteruskan sebagai opsi ke perintah yang mendasar ssh
yang menetapkan koneksi ke sistem jarak jauh.
Parameter
-AllowRedirection
Memungkinkan pengalihan koneksi ini ke Pengidentifikasi Sumber Daya Seragam (URI) alternatif. Secara default, pengalihan tidak diizinkan.
Saat Anda menggunakan parameter ConnectionURI , tujuan jarak jauh dapat mengembalikan instruksi untuk mengalihkan ke URI yang berbeda. Secara default, PowerShell tidak mengalihkan koneksi, tetapi Anda dapat menggunakan parameter ini untuk memungkinkannya mengalihkan koneksi.
Anda juga dapat membatasi berapa kali koneksi dialihkan dengan mengubah nilai opsi sesi MaximumConnectionRedirectionCount . Gunakan parameter MaximumRedirection cmdlet New-PSSessionOption
atau atur properti MaximumConnectionRedirectionCount dari $PSSessionOption
variabel preferensi. Nilai defaultnya adalah 5.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-ApplicationName
Menentukan segmen nama aplikasi dari URI koneksi. Gunakan parameter ini untuk menentukan nama aplikasi saat Anda tidak menggunakan parameter ConnectionURI dalam perintah .
Nilai default adalah nilai $PSSessionApplicationName
variabel preferensi di komputer lokal. Jika variabel preferensi ini tidak ditentukan, nilai defaultnya adalah WSMAN. Nilai ini sesuai untuk sebagian besar penggunaan. Untuk informasi selengkapnya, lihat about_Preference_Variables.
Layanan WinRM menggunakan nama aplikasi untuk memilih pendengar untuk melayani permintaan koneksi. Nilai parameter ini harus cocok dengan nilai properti URLPrefix pendengar di komputer jarak jauh.
Jenis: | String |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Authentication
Menentukan mekanisme yang digunakan untuk mengautentikasi kredensial pengguna. Nilai yang dapat diterima untuk parameter ini adalah:
- Default
- Dasar
- Credssp
- digest
- Kerberos
- Negosiasi
- NegosiasiWithImplicitCredential
Nilai default-nya adalah Default.
Autentikasi CredSSP hanya tersedia di Windows Vista, Windows Server 2008, dan versi sistem operasi Windows yang lebih baru.
Untuk informasi selengkapnya tentang nilai parameter ini, lihat AuthenticationMechanism Enum.
Perhatian
Autentikasi Penyedia Dukungan Keamanan Kredensial (CredSSP), di mana kredensial pengguna diteruskan ke komputer jarak jauh untuk diautentikasi, dirancang untuk perintah yang memerlukan autentikasi pada lebih dari satu sumber daya, seperti mengakses berbagi jaringan jarak jauh. Mekanisme ini meningkatkan risiko keamanan operasi jarak jauh. Jika komputer jarak jauh disusupi, kredensial yang diteruskan ke komputer jarak jauh dapat digunakan untuk mengontrol sesi jaringan.
Jenis: | AuthenticationMechanism |
Nilai yang diterima: | Default, Basic, Negotiate, NegotiateWithImplicitCredential, Credssp, Digest, Kerberos |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-CertificateThumbprint
Menentukan sertifikat kunci publik digital (X509) dari akun pengguna yang memiliki izin untuk melakukan tindakan ini. Masukkan thumbprint sertifikat sertifikat.
Sertifikat digunakan dalam autentikasi berbasis sertifikat klien. Mereka hanya dapat dipetakan ke akun pengguna lokal; mereka tidak bekerja dengan akun domain.
Untuk mendapatkan sertifikat, gunakan Get-Item
perintah atau Get-ChildItem
di drive PowerShell Cert: .
Jenis: | String |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-ComputerName
Menentukan nama komputer. Cmdlet ini memulai sesi interaktif dengan komputer jarak jauh yang ditentukan. Masukkan hanya satu nama komputer. Defaultnya adalah komputer lokal.
Ketik nama NetBIOS, alamat IP, atau nama domain komputer yang sepenuhnya memenuhi syarat. Anda juga dapat menyalurkan nama komputer ke Enter-PSSession
.
Untuk menggunakan alamat IP dalam nilai parameter ComputerName , perintah harus menyertakan parameter Kredensial . Selain itu, komputer harus dikonfigurasi untuk transportasi HTTPS atau alamat IP komputer jarak jauh harus disertakan dalam daftar WinRM TrustedHosts di komputer lokal. Untuk instruksi menambahkan nama komputer ke daftar TrustedHosts, lihat "Cara Menambahkan Komputer ke Daftar Host Tepercaya" di about_Remote_Troubleshooting.
Catatan
Pada sistem operasi Windows, untuk menyertakan komputer lokal dalam nilai parameter ComputerName , Anda harus memulai PowerShell dengan opsi Jalankan sebagai administrator.
Jenis: | String |
Alias: | Cn |
Position: | 0 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | True |
Terima karakter wildcard: | False |
-ConfigurationName
Menentukan konfigurasi sesi yang digunakan untuk sesi interaktif.
Masukkan nama konfigurasi atau URI sumber daya yang sepenuhnya memenuhi syarat untuk konfigurasi sesi. Jika Anda hanya menentukan nama konfigurasi, URI skema berikut ditangguhkan: http://schemas.microsoft.com/powershell
.
Saat digunakan dengan SSH, ini menentukan subsistem yang akan digunakan pada target seperti yang didefinisikan dalam sshd_config. Nilai default untuk SSH adalah powershell
subsistem.
Konfigurasi sesi untuk sesi terletak di komputer jarak jauh. Jika konfigurasi sesi yang ditentukan tidak ada di komputer jarak jauh, perintah gagal.
Nilai default adalah nilai $PSSessionConfigurationName
variabel preferensi di komputer lokal. Jika variabel preferensi ini tidak diatur, defaultnya adalah Microsoft.PowerShell. Untuk informasi selengkapnya, lihat about_Preference_Variables.
Jenis: | String |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-ConnectingTimeout
Menentukan jumlah waktu dalam milidetik yang diizinkan agar koneksi SSH awal selesai. Jika koneksi tidak selesai dalam waktu yang ditentukan, kesalahan akan ditampilkan.
Parameter ini diperkenalkan di PowerShell 7.2
Jenis: | Int32 |
Position: | Named |
Nilai default: | unlimited |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-ConnectionUri
Menentukan URI yang menentukan titik akhir koneksi untuk sesi. URI harus sepenuhnya memenuhi syarat. Format string ini adalah sebagai berikut:
<Transport>://<ComputerName>:<Port>/<ApplicationName>
Nilai defaultnya adalah sebagai berikut:
http://localhost:5985/WSMAN
Jika Anda tidak menentukan ConnectionURI, Anda dapat menggunakan parameter UseSSL, ComputerName, Port, dan ApplicationName untuk menentukan nilai ConnectionURI.
Nilai yang valid untuk segmen Transportasi URI adalah HTTP dan HTTPS. Jika Anda menentukan URI koneksi dengan segmen Transportasi, tetapi tidak menentukan port, sesi dibuat dengan menggunakan port standar: 80 untuk HTTP dan 443 untuk HTTPS. Untuk menggunakan port default untuk remoting PowerShell, tentukan port 5985 untuk HTTP atau 5986 untuk HTTPS.
Jika komputer tujuan mengalihkan koneksi ke URI yang berbeda, PowerShell mencegah pengalihan kecuali Anda menggunakan parameter AllowRedirection dalam perintah.
Jenis: | Uri |
Alias: | URI, CU |
Position: | 1 |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-ContainerId
Menentukan ID kontainer.
Jenis: | String |
Position: | 0 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Credential
Menentukan akun pengguna yang memiliki izin untuk melakukan tindakan ini. Defaultnya adalah pengguna saat ini.
Ketik nama pengguna, seperti User01 atau Domain01\User01, atau masukkan objek PSCredential yang dihasilkan oleh Get-Credential
cmdlet. Jika Anda mengetikkan nama pengguna, Anda akan diminta untuk memasukkan kata sandi.
Kredensial disimpan dalam objek PSCredential dan kata sandi disimpan sebagai SecureString.
Catatan
Untuk informasi selengkapnya tentang perlindungan data SecureString , lihat Seberapa aman SecureString?.
Jenis: | PSCredential |
Position: | 1 |
Nilai default: | Current user |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-EnableNetworkAccess
Menunjukkan bahwa cmdlet ini menambahkan token keamanan interaktif ke sesi loopback. Token interaktif memungkinkan Anda menjalankan perintah dalam sesi loopback yang mendapatkan data dari komputer lain. Misalnya, Anda dapat menjalankan perintah dalam sesi yang menyalin file XML dari komputer jarak jauh ke komputer lokal.
Sesi loopback adalah PSSession yang berasal dan berakhir pada komputer yang sama. Untuk membuat sesi loopback, hilangkan parameter ComputerName atau atur nilainya ke . (titik), localhost, atau nama komputer lokal.
Secara default, sesi loopback dibuat dengan menggunakan token jaringan, yang mungkin tidak menyediakan izin yang memadai untuk mengautentikasi ke komputer jarak jauh.
Parameter EnableNetworkAccess hanya efektif dalam sesi loopback. Jika Anda menggunakan EnableNetworkAccess saat membuat sesi di komputer jarak jauh, perintah berhasil, tetapi parameter diabaikan.
Anda juga dapat mengizinkan akses jarak jauh dalam sesi loopback dengan menggunakan nilai CredSSP dari parameter Autentikasi , yang mendelegasikan kredensial sesi ke komputer lain.
Parameter ini diperkenalkan di Windows PowerShell 3.0.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-HostName
Menentukan nama komputer untuk koneksi berbasis Secure Shell (SSH). Ini mirip dengan parameter ComputerName kecuali bahwa koneksi ke komputer jarak jauh dibuat menggunakan SSH daripada Windows WinRM. Parameter ini mendukung penentuan nama pengguna dan/atau port sebagai bagian dari nilai parameter nama host menggunakan formulir user@hostname:port
. Nama pengguna dan/atau port yang ditentukan sebagai bagian dari nama host lebih diutamakan daripada -UserName
parameter dan -Port
, jika ditentukan. Ini memungkinkan meneruskan beberapa nama komputer ke parameter ini di mana beberapa memiliki nama pengguna dan/atau port tertentu, sementara yang lain menggunakan nama pengguna dan/atau port dari -UserName
parameter dan -Port
.
Parameter ini diperkenalkan di PowerShell 6.0.
Jenis: | String |
Position: | 0 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Id
Menentukan ID sesi yang ada. Enter-PSSession
menggunakan sesi yang ditentukan untuk sesi interaktif.
Untuk menemukan ID sesi, gunakan Get-PSSession
cmdlet.
Jenis: | Int32 |
Position: | 0 |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-InstanceId
Menentukan ID instans dari sesi yang ada. Enter-PSSession
menggunakan sesi yang ditentukan untuk sesi interaktif.
ID instans adalah GUID. Untuk menemukan ID instans sesi, gunakan Get-PSSession
cmdlet . Anda juga dapat menggunakan parameter Sesi, Nama, atau ID untuk menentukan sesi yang ada. Atau, Anda dapat menggunakan parameter ComputerName untuk memulai sesi sementara.
Jenis: | Guid |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-KeyFilePath
Menentukan jalur file kunci yang digunakan oleh Secure Shell (SSH) untuk mengautentikasi pengguna di komputer jarak jauh.
SSH memungkinkan autentikasi pengguna dilakukan melalui kunci privat/publik sebagai alternatif untuk autentikasi kata sandi dasar. Jika komputer jarak jauh dikonfigurasi untuk autentikasi kunci, parameter ini dapat digunakan untuk menyediakan kunci yang mengidentifikasi pengguna.
Parameter ini diperkenalkan di PowerShell 6.0.
Jenis: | String |
Alias: | IdentityFilePath |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Name
Menentukan nama yang mudah diingat dari sesi yang ada. Enter-PSSession
menggunakan sesi yang ditentukan untuk sesi interaktif.
Jika nama yang Anda tentukan cocok dengan lebih dari satu sesi, perintah gagal. Anda juga dapat menggunakan parameter Sesi, InstanceID, atau ID untuk menentukan sesi yang ada. Atau, Anda dapat menggunakan parameter ComputerName untuk memulai sesi sementara.
Untuk membuat nama yang mudah diingat untuk sesi, gunakan parameter New-PSSession
Nama cmdlet.
Jenis: | String |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-Options
Menentukan hashtable opsi SSH yang digunakan saat menyambungkan ke sesi berbasis SSH jarak jauh. Opsi yang mungkin adalah nilai apa pun yang didukung oleh versi berbasis Unix dari perintah ssh .
Nilai apa pun yang secara eksplisit diteruskan oleh parameter lebih diutamakan daripada nilai yang diteruskan dalam hashtable Opsi . Misalnya, menggunakan parameter Port mengambil alih pasangan kunci-nilai yang Port
diteruskan dalam hashtable Opsi .
Jenis: | Hashtable |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Port
Menentukan port jaringan pada komputer jarak jauh yang digunakan untuk perintah ini.
Di PowerShell 6.0 parameter ini disertakan dalam set parameter HostName yang mendukung koneksi Secure Shell (SSH).
WinRM (set parameter ComputerName)
Untuk tersambung ke komputer jarak jauh, komputer jarak jauh harus mendengarkan porta yang digunakan koneksi. Port default adalah 5985, yang merupakan port WinRM untuk HTTP, dan 5986, yang merupakan port WinRM untuk HTTPS.
Sebelum menggunakan port alternatif, Anda harus mengonfigurasi pendengar WinRM di komputer jarak jauh untuk mendengarkan di port tersebut. Gunakan perintah berikut untuk mengonfigurasi listener:
winrm delete winrm/config/listener?Address=*+Transport=HTTP
winrm create winrm/config/listener?Address=*+Transport=HTTP @{Port="\<port-number\>"}
Jangan gunakan parameter Port kecuali Anda harus. Pengaturan port dalam perintah berlaku untuk semua komputer atau sesi tempat perintah dijalankan. Pengaturan port alternatif mungkin mencegah perintah berjalan pada semua komputer.
SSH (set parameter HostName)
Untuk tersambung ke komputer jarak jauh, komputer jarak jauh harus dikonfigurasi dengan layanan SSH (SSHD) dan harus mendengarkan port yang digunakan koneksi. Port default untuk SSH adalah 22.
Jenis: | Int32 |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-RunAsAdministrator
Menunjukkan bahwa PSSession berjalan sebagai administrator.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Session
Menentukan sesi PowerShell (PSSession) yang akan digunakan untuk sesi interaktif. Parameter ini mengambil objek sesi. Anda juga dapat menggunakan parameter Nama, InstanceID, atau ID untuk menentukan PSSession.
Masukkan variabel yang berisi objek sesi atau perintah yang membuat atau mendapatkan objek sesi, seperti New-PSSession
perintah atau Get-PSSession
. Anda juga dapat menyalurkan objek sesi ke Enter-PSSession
. Anda hanya dapat mengirimkan satu PSSession dengan menggunakan parameter ini. Jika Anda memasukkan variabel yang berisi lebih dari satu PSSession, perintah gagal.
Saat Anda menggunakan Exit-PSSession
atau kata kunci EXIT , sesi interaktif berakhir, tetapi PSSession yang Anda buat tetap terbuka dan tersedia untuk digunakan.
Jenis: | PSSession |
Position: | 0 |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-SessionOption
Mengatur opsi tingkat lanjut untuk sesi. Masukkan objek SessionOption, seperti objek yang Anda buat dengan menggunakan New-PSSessionOption
cmdlet, atau tabel hash tempat kunci adalah nama opsi sesi dan nilainya adalah nilai opsi sesi.
Nilai default untuk opsi ditentukan oleh nilai $PSSessionOption
variabel preferensi, jika diatur. Jika tidak, nilai default ditetapkan oleh opsi yang diatur dalam konfigurasi sesi.
Nilai opsi sesi lebih diutamakan daripada nilai default untuk sesi yang diatur dalam $PSSessionOption
variabel preferensi dan dalam konfigurasi sesi. Namun, mereka tidak lebih diutamakan daripada nilai, kuota, atau batas maksimum yang ditetapkan dalam konfigurasi sesi.
Untuk deskripsi opsi sesi, termasuk nilai default, lihat New-PSSessionOption
.
Untuk informasi tentang $PSSessionOption
variabel preferensi, lihat about_Preference_Variables. Untuk informasi selengkapnya tentang konfigurasi sesi, lihat about_Session_Configurations.
Jenis: | PSSessionOption |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-SSHTransport
Menunjukkan bahwa koneksi jarak jauh dibuat menggunakan Secure Shell (SSH).
Secara default PowerShell menggunakan Windows WinRM untuk menyambungkan ke komputer jarak jauh. Sakelar ini memaksa PowerShell untuk menggunakan parameter HostName yang ditetapkan untuk membuat koneksi jarak jauh berbasis SSH.
Parameter ini diperkenalkan di PowerShell 6.0.
Jenis: | SwitchParameter |
Nilai yang diterima: | true |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-Subsystem
Menentukan subsistem SSH yang digunakan untuk PSSession baru.
Ini menentukan subsistem yang akan digunakan pada target seperti yang didefinisikan dalam sshd_config. Subsistem memulai versi PowerShell tertentu dengan parameter yang telah ditentukan sebelumnya. Jika subsistem yang ditentukan tidak ada di komputer jarak jauh, perintah gagal.
Jika parameter ini tidak digunakan, defaultnya powershell
adalah subsistem.
Jenis: | String |
Position: | Named |
Nilai default: | Powershell |
Diperlukan: | False |
Terima input alur: | True |
Terima karakter wildcard: | False |
-UserName
Menentukan nama pengguna untuk akun yang digunakan untuk membuat sesi pada komputer jarak jauh. Metode autentikasi pengguna tergantung pada bagaimana Secure Shell (SSH) dikonfigurasi pada komputer jarak jauh.
Jika SSH dikonfigurasi untuk autentikasi kata sandi dasar, Anda akan dimintai kata sandi pengguna.
Jika SSH dikonfigurasi untuk autentikasi pengguna berbasis kunci, maka anda tidak dimintai kata sandi. Anda harus menyediakan jalur ke file kunci SSH. Jika file kunci pengguna terletak di lokasi SSH yang diketahui, parameter KeyFilePath tidak diperlukan. Autentikasi pengguna terjadi secara otomatis berdasarkan nama pengguna. Lihat dokumentasi SSH tentang autentikasi pengguna berbasis kunci untuk informasi selengkapnya.
Jika parameter UserName tidak ditentukan, maka nama pengguna yang masuk saat ini akan digunakan.
Parameter ini diperkenalkan di PowerShell 6.0.
Jenis: | String |
Position: | Named |
Nilai default: | None |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-UseSSL
Menunjukkan bahwa cmdlet ini menggunakan protokol Secure Sockets Layer (SSL) untuk membuat koneksi ke komputer jarak jauh. Secara default, SSL tidak digunakan.
WS-Management mengenkripsi semua konten PowerShell yang dikirimkan melalui jaringan. Parameter UseSSL adalah perlindungan tambahan yang mengirim data di seluruh koneksi HTTPS alih-alih koneksi HTTP.
Jika Anda menggunakan parameter ini, tetapi SSL tidak tersedia pada port yang digunakan untuk perintah, perintah gagal.
Jenis: | SwitchParameter |
Position: | Named |
Nilai default: | False |
Diperlukan: | False |
Terima input alur: | False |
Terima karakter wildcard: | False |
-VMId
Menentukan ID komputer virtual.
Jenis: | Guid |
Alias: | VMGuid |
Position: | 0 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | True |
Terima karakter wildcard: | False |
-VMName
Menentukan nama komputer virtual.
Jenis: | String |
Position: | 0 |
Nilai default: | None |
Diperlukan: | True |
Terima input alur: | True |
Terima karakter wildcard: | False |
Input
Anda dapat menyalurkan nama komputer sebagai string ke cmdlet ini.
Anda dapat menyalurkan objek sesi ke cmdlet ini.
Output
None
Cmdlet ini tidak mengembalikan output.
Catatan
PowerShell menyertakan alias berikut untuk Enter-PSSession
:
- Semua platform:
etsn
Untuk tersambung ke komputer jarak jauh, Anda harus menjadi anggota grup Administrator pada komputer jarak jauh. Untuk memulai sesi interaktif di komputer lokal, Anda harus memulai PowerShell dengan opsi Jalankan sebagai administrator .
Saat Anda menggunakan Enter-PSSession
, profil pengguna Anda di komputer jarak jauh digunakan untuk sesi interaktif. Perintah di profil pengguna jarak jauh, termasuk perintah untuk menambahkan modul PowerShell dan untuk mengubah prompt perintah, jalankan sebelum perintah jarak jauh ditampilkan.
Enter-PSSession
menggunakan pengaturan budaya UI di komputer lokal untuk sesi interaktif. Untuk menemukan budaya UI lokal, gunakan $UICulture
variabel otomatis.
Enter-PSSession
Get-Command
membutuhkan cmdlet , Out-Default
, dan Exit-PSSession
. Jika cmdlet ini tidak disertakan dalam konfigurasi sesi di komputer jarak jauh, Enter-PSSession
perintah gagal.
Tidak seperti Invoke-Command
, yang menguraikan dan menginterpretasikan perintah sebelum mengirimnya ke komputer jarak jauh, Enter-PSSession
mengirim perintah langsung ke komputer jarak jauh tanpa interpretasi.
Jika sesi yang ingin Anda masukkan sibuk memproses perintah, mungkin ada penundaan sebelum PowerShell merespons Enter-PSSession
perintah. Anda tersambung segera setelah sesi tersedia. Untuk membatalkan Enter-PSSession
perintah, tekan CTRL+C.
Kumpulan parameter HostName disertakan dimulai dengan PowerShell 6.0. Ini ditambahkan untuk menyediakan Remoting PowerShell berdasarkan Secure Shell (SSH). Baik SSH maupun PowerShell didukung pada beberapa platform (Windows, Linux, macOS) dan PowerShell bekerja melalui platform ini di mana PowerShell dan SSH diinstal dan dikonfigurasi. Ini terpisah dari Windows sebelumnya hanya jarak jauh yang didasarkan pada WinRM dan banyak fitur dan batasan khusus WinRM tidak berlaku. Misalnya, kuota berbasis WinRM, opsi sesi, konfigurasi titik akhir kustom, dan fitur pemutusan sambungan/koneksi ulang saat ini tidak didukung. Untuk informasi selengkapnya tentang cara menyiapkan remoting PowerShell SSH, lihat PowerShell Remoting Over SSH.
Sebelum PowerShell 7.1, jarak jauh melalui SSH tidak mendukung sesi jarak jauh hop kedua. Kemampuan ini terbatas pada sesi menggunakan WinRM. PowerShell 7.1 memungkinkan Enter-PSSession
dan Enter-PSHostProcess
bekerja dari dalam sesi jarak jauh interaktif apa pun.
Executable ssh
mendapatkan data konfigurasi dari sumber berikut dalam urutan berikut:
- opsi baris perintah
- file konfigurasi pengguna (~/.ssh/config)
- file konfigurasi di seluruh sistem (/etc/ssh/ssh_config)
Parameter cmdlet berikut dipetakan ke dalam ssh
parameter dan opsi:
Parameter cmdlet | parameter ssh | opsi ssh -o yang setara |
---|---|---|
-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> |
Nilai apa pun yang secara eksplisit diteruskan oleh parameter lebih diutamakan daripada nilai yang diteruskan dalam hashtable Opsi . Untuk informasi selengkapnya tentang ssh_config
file, lihat ssh_config(5).