Akses Jauh WS-Management (WSMan) di PowerShell

Instruksi untuk Membuat Titik Akhir Jarak Jauh

Paket PowerShell untuk Windows menyertakan plug-in WinRM (pwrshplugin.dll) dan skrip penginstalan (Install-PowerShellRemoting.ps1) di $PSHome. File-file ini memungkinkan PowerShell untuk menerima koneksi jarak jauh PowerShell yang masuk ketika titik akhirnya ditentukan.

Motivasi

Penginstalan PowerShell dapat membuat sesi PowerShell ke komputer jarak jauh menggunakan New-PSSession dan Enter-PSSession. Untuk mengaktifkannya menerima koneksi jarak jauh PowerShell yang masuk, pengguna harus membuat titik akhir jarak jauh WinRM. Ini adalah skenario keikutsertaan eksplisit di mana pengguna menjalankan Install-PowerShellRemoting.ps1 untuk membuat titik akhir WinRM. Skrip penginstalan adalah solusi jangka pendek sampai kami menambahkan fungsionalitas tambahan untuk Enable-PSRemoting melakukan tindakan yang sama. Untuk detail selengkapnya, silakan lihat masalah #1193.

Tindakan Skrip

Skrip

  1. Membuat direktori untuk plug-in di dalamnya $env:windir\System32\PowerShell
  2. Menyalin pwrshplugin.dll ke lokasi tersebut
  3. Menghasilkan file konfigurasi
  4. Mendaftarkan plug-in dengan WinRM

Pendaftaran

Skrip harus dijalankan dalam sesi PowerShell tingkat Administrator dan berjalan dalam dua mode.

Dijalankan oleh instans PowerShell yang akan didaftarkan

Install-PowerShellRemoting.ps1

Dijalankan oleh instans lain PowerShell atas nama instans yang akan didaftarkannya

<path to powershell>\Install-PowerShellRemoting.ps1 -PowerShellHome "<absolute path to the instance's $PSHOME>"

Misalnya:

Set-Location -Path 'C:\Program Files\PowerShell\6.0.0\'
.\Install-PowerShellRemoting.ps1 -PowerShellHome "C:\Program Files\PowerShell\6.0.0\"

Catatan

Skrip pendaftaran jarak jauh memulai ulang WinRM. Semua sesi PSRP yang ada segera dihentikan setelah skrip dijalankan. Jika dijalankan selama sesi jarak jauh, skrip mengakhiri koneksi.

Cara Menyambungkan ke Titik Akhir Baru

Buat sesi PowerShell ke titik akhir PowerShell baru dengan menentukan -ConfigurationName "some endpoint name". Untuk menyambungkan ke instans PowerShell dari contoh di atas, gunakan:

New-PSSession ... -ConfigurationName "powershell.6.0.0"
Enter-PSSession ... -ConfigurationName "powershell.6.0.0"

Perhatikan bahwa New-PSSession dan Enter-PSSession pemanggilan yang tidak menentukan -ConfigurationName akan menargetkan titik akhir PowerShell default, microsoft.powershell.