Enable-PSRemoting

Mengonfigurasi komputer untuk menerima perintah jarak jauh.

Sintaks

Enable-PSRemoting
      [-Force]
      [-SkipNetworkProfileCheck]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Deskripsi

Enable-PSRemoting Cmdlet mengonfigurasi komputer untuk menerima perintah jarak jauh PowerShell yang dikirim dengan menggunakan teknologi WS-Management.

Jarak jauh PowerShell diaktifkan secara default pada Windows Server 2012. Anda dapat menggunakan Enable-PSRemoting untuk mengaktifkan PowerShell jarak jauh pada versi Windows lain yang didukung dan untuk mengaktifkan kembali jarak jauh pada Windows Server 2012 jika menjadi dinonaktifkan.

Anda harus menjalankan perintah ini hanya satu kali pada setiap komputer yang akan menerima perintah. Anda tidak perlu menjalankannya pada komputer yang hanya mengirim perintah. Karena konfigurasi memulai listener, sangat bijaksana untuk menjalankannya hanya jika diperlukan.

Dimulai di PowerShell 3.0, Enable-PSRemoting cmdlet dapat mengaktifkan PowerShell jarak jauh pada versi klien Windows saat komputer berada di jaringan publik. Untuk informasi selengkapnya, lihat deskripsi parameter SkipNetworkProfileCheck .

Enable-PSRemoting Cmdlet melakukan operasi berikut:

  • Menjalankan cmdlet Set-WSManQuickConfig, yang melakukan tugas berikut:
    • Memulai layanan WinRM.
    • Mengatur jenis pengaktifan pada layanan WinRM ke Otomatis.
    • Membuat listener untuk menerima permintaan pada alamat IP apa pun.
    • Mengaktifkan pengecualian firewall untuk komunikasi WS-Management.
    • Mendaftarkan konfigurasi sesi Microsoft.PowerShell dan Microsoft.PowerShell.Workflow, jika belum terdaftar.
    • Mendaftarkan konfigurasi sesi Microsoft.PowerShell32 pada komputer 64-bit, jika belum terdaftar.
    • Mengaktifkan semua konfigurasi sesi.
    • Mengubah pendeskripsi keamanan semua konfigurasi sesi untuk memungkinkan akses jarak jauh.
  • Memulai ulang layanan WinRM untuk membuat perubahan sebelumnya efektif.

Untuk menjalankan cmdlet ini pada platform Windows, mulai PowerShell dengan menggunakan opsi Jalankan sebagai administrator. Ini tidak berlaku untuk PowerShell versi Linux atau MacOS.

Perhatian

Pada sistem yang memiliki PowerShell 3.0 dan PowerShell 2.0, jangan gunakan PowerShell 2.0 untuk menjalankan Enable-PSRemoting cmdlet dan Disable-PSRemoting . Perintah mungkin tampak berhasil, tetapi jarak jauh tidak dikonfigurasi dengan benar. Perintah jarak jauh dan upaya selanjutnya untuk mengaktifkan dan menonaktifkan jarak jauh, kemungkinan gagal.

Contoh

Contoh 1: Mengonfigurasi komputer untuk menerima perintah jarak jauh

Perintah ini mengonfigurasi komputer untuk menerima perintah jarak jauh.

Enable-PSRemoting

Contoh 2: Mengonfigurasi komputer untuk menerima perintah jarak jauh tanpa permintaan konfirmasi

Perintah ini mengonfigurasi komputer untuk menerima perintah jarak jauh. Parameter Paksa menekan permintaan pengguna.

Enable-PSRemoting -Force

Contoh 3: Mengizinkan akses jarak jauh pada klien

Contoh ini menunjukkan cara mengizinkan akses jarak jauh dari jaringan publik pada versi klien sistem operasi Windows. Nama aturan firewall bisa berbeda untuk versi Windows yang berbeda. Gunakan Get-NetFirewallRule untuk melihat daftar aturan. Sebelum mengaktifkan aturan firewall, lihat pengaturan keamanan dalam aturan untuk memverifikasi bahwa konfigurasi sesuai untuk lingkungan Anda.

Get-NetFirewallRule -Name 'WINRM*' | Select-Object -Property Name

Name
----
WINRM-HTTP-In-TCP-NoScope
WINRM-HTTP-In-TCP
WINRM-HTTP-Compat-In-TCP-NoScope
WINRM-HTTP-Compat-In-TCP

Enable-PSRemoting -SkipNetworkProfileCheck -Force
Set-NetFirewallRule -Name 'WINRM-HTTP-In-TCP' -RemoteAddress Any

Secara default, Enable-PSRemoting membuat aturan jaringan yang memungkinkan akses jarak jauh dari jaringan privat dan domain. Perintah ini menggunakan parameter SkipNetworkProfileCheck untuk memungkinkan akses jarak jauh dari jaringan publik di subnet lokal yang sama. Perintah menentukan parameter Force untuk menekan pesan konfirmasi.

Parameter SkipNetworkProfileCheck tidak memengaruhi versi server sistem operasi Windows, yang memungkinkan akses jarak jauh dari jaringan publik di subnet lokal yang sama secara default.

Set-NetFirewallRule Cmdlet dalam modul NetSecurity menambahkan aturan firewall yang memungkinkan akses jarak jauh dari jaringan publik dari lokasi jarak jauh mana pun. Ini termasuk lokasi di subnet yang berbeda.

Catatan

Nama aturan firewall bisa berbeda tergantung pada versi Windows. Get-NetFirewallRule Gunakan cmdlet untuk mencantumkan nama aturan pada sistem Anda.

Parameter

-Confirm

Meminta Anda mengonfirmasi sebelum menjalankan cmdlet.

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

-Force

Memaksa perintah untuk dijalankan tanpa meminta konfirmasi pengguna.

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

-SkipNetworkProfileCheck

Menunjukkan bahwa cmdlet ini memungkinkan jarak jauh pada versi klien sistem operasi Windows ketika komputer berada di jaringan publik. Parameter ini memungkinkan aturan firewall untuk jaringan publik yang memungkinkan akses jarak jauh hanya dari komputer di subnet lokal yang sama.

Parameter ini tidak memengaruhi versi server sistem operasi Windows, yang, secara default, memiliki aturan firewall subnet lokal untuk jaringan publik. Jika aturan firewall subnet lokal dinonaktifkan pada versi server, Enable-PSRemoting aktifkan kembali, terlepas dari nilai parameter ini.

Untuk menghapus pembatasan subnet lokal dan mengaktifkan akses jarak jauh dari semua lokasi di jaringan publik, gunakan Set-NetFirewallRule cmdlet dalam modul NetSecurity .

Parameter ini diperkenalkan di PowerShell 3.0.

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

-WhatIf

Menunjukkan apa yang akan terjadi jika cmdlet berjalan. Cmdlet tidak dijalankan.

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

Input

None

Anda tidak dapat menyalurkan objek ke cmdlet ini.

Output

String

Cmdlet ini mengembalikan string yang menjelaskan hasilnya.

Catatan

Di PowerShell 3.0, Enable-PSRemoting buat pengecualian firewall berikut untuk komunikasi WS-Management.

Pada versi server sistem operasi Windows, Enable-PSRemoting membuat aturan firewall untuk jaringan privat dan domain yang memungkinkan akses jarak jauh, dan membuat aturan firewall untuk jaringan publik yang memungkinkan akses jarak jauh hanya dari komputer di subnet lokal yang sama.

Pada versi klien sistem operasi Windows, Enable-PSRemoting di PowerShell 3.0 membuat aturan firewall untuk jaringan privat dan domain yang memungkinkan akses jarak jauh yang tidak dibatasi. Untuk membuat aturan firewall untuk jaringan publik yang memungkinkan akses jarak jauh dari subnet lokal yang sama, gunakan parameter SkipNetworkProfileCheck .

Pada versi klien atau server sistem operasi Windows, untuk membuat aturan firewall untuk jaringan publik yang menghapus pembatasan subnet lokal dan memungkinkan akses jarak jauh , gunakan Set-NetFirewallRule cmdlet dalam modul NetSecurity untuk menjalankan perintah berikut: Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any

Di PowerShell 2.0, Enable-PSRemoting buat pengecualian firewall berikut untuk komunikasi WS-Management.

Pada versi server sistem operasi Windows, ia membuat aturan firewall untuk semua jaringan yang memungkinkan akses jarak jauh.

Pada versi klien sistem operasi Windows, Enable-PSRemoting di PowerShell 2.0 membuat pengecualian firewall hanya untuk lokasi domain dan jaringan privat. Untuk meminimalkan risiko keamanan, Enable-PSRemoting tidak membuat aturan firewall untuk jaringan publik pada versi klien Windows. Ketika lokasi jaringan saat ini bersifat publik, Enable-PSRemoting mengembalikan pesan berikut: Tidak dapat memeriksa status firewall.

Mulai dari PowerShell 3.0, Enable-PSRemoting mengaktifkan semua konfigurasi sesi dengan mengatur nilai properti Diaktifkan dari semua konfigurasi sesi ke $True.

Di PowerShell 2.0, Enable-PSRemoting menghapus pengaturan Deny_All dari pendeskripsi keamanan konfigurasi sesi. Di PowerShell 3.0, Enable-PSRemoting menghapus pengaturan Deny_All dan Network_Deny_All . Ini menyediakan akses jarak jauh ke konfigurasi sesi yang dicadangkan untuk penggunaan lokal.