Delen via


Enable-PSRemoting

Hiermee configureert u de computer voor het ontvangen van externe opdrachten.

Syntaxis

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

Description

De Enable-PSRemoting-cmdlet configureert de computer voor het ontvangen van externe PowerShell-opdrachten die worden verzonden met behulp van de WS-Management-technologie.

Externe communicatie via PowerShell is standaard ingeschakeld op Windows Server 2012 en hoger. U kunt Enable-PSRemoting gebruiken om externe communicatie van PowerShell in te schakelen voor andere ondersteunde versies van Windows en om externe communicatie opnieuw in te schakelen als deze wordt uitgeschakeld.

U moet deze opdracht slechts één keer uitvoeren op elke computer die opdrachten ontvangt. U hoeft deze niet uit te voeren op computers die alleen opdrachten verzenden. Omdat de configuratie listeners start, is het verstandig om deze alleen uit te voeren waar deze nodig is.

Vanaf PowerShell 3.0 kan de Enable-PSRemoting cmdlet externe communicatie met PowerShell inschakelen voor clientversies van Windows wanneer de computer zich op een openbaar netwerk bevindt. Zie de beschrijving van de parameter SkipNetworkProfileCheck voor meer informatie.

De Enable-PSRemoting cmdlet voert de volgende bewerkingen uit:

  • Hiermee wordt de Set-WSManQuickConfig cmdlet uitgevoerd, waarmee de volgende taken worden uitgevoerd:
    • Start de WinRM-service.
    • Hiermee stelt u het opstarttype in de WinRM-service in op Automatisch.
    • Hiermee maakt u een listener voor het accepteren van aanvragen op elk IP-adres.
    • Hiermee schakelt u een firewall-uitzondering in voor WS-Management-communicatie.
    • Registreert de Microsoft.PowerShell- en Microsoft.PowerShell.Workflow sessieconfiguraties, als deze nog niet zijn geregistreerd.
    • Registreert de Microsoft.PowerShell32 sessieconfiguratie op 64-bits computers, als deze nog niet is geregistreerd.
    • Hiermee schakelt u alle sessieconfiguraties in.
    • Hiermee wijzigt u de beveiligingsdescriptor van alle sessieconfiguraties om externe toegang toe te staan.
  • Start de WinRM-service opnieuw om de voorgaande wijzigingen effectief te maken.

Als u deze cmdlet wilt uitvoeren op het Windows-platform, start u PowerShell met behulp van de optie Als administrator uitvoeren.

Zie de volgende artikelen voor meer informatie over het gebruik van externe communicatie met PowerShell:

Voorbeelden

Voorbeeld 1: Een computer configureren voor het ontvangen van externe opdrachten

Met deze opdracht configureert u de computer voor het ontvangen van externe opdrachten.

Enable-PSRemoting

Voorbeeld 2: Een computer configureren voor het ontvangen van externe opdrachten zonder bevestigingsprompt

Met deze opdracht configureert u de computer voor het ontvangen van externe opdrachten. De parameter Forceren onderdrukt de gebruikersprompts.

Enable-PSRemoting -Force

Voorbeeld 3: Externe toegang toestaan op clients

In dit voorbeeld ziet u hoe u externe toegang vanuit openbare netwerken op clientversies van het Windows-besturingssysteem toestaat. De naam van de firewallregel kan verschillen voor verschillende versies van Windows. Gebruik Get-NetFirewallRule om een lijst met regels weer te geven. Voordat u de firewallregel inschakelt, bekijkt u de beveiligingsinstellingen in de regel om te controleren of de configuratie geschikt is voor uw omgeving.

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

Standaard maakt Enable-PSRemoting netwerkregels die externe toegang vanuit privé- en domeinnetwerken toestaan. De opdracht maakt gebruik van de parameter SkipNetworkProfileCheck om externe toegang vanuit openbare netwerken in hetzelfde lokale subnet toe te staan. De opdracht geeft de Force parameter om bevestigingsberichten te onderdrukken.

De parameter SkipNetworkProfileCheck heeft geen invloed op serverversies van het Windows-besturingssysteem, waardoor externe toegang van openbare netwerken in hetzelfde lokale subnet standaard is toegestaan.

De cmdlet Set-NetFirewallRule in de module NetSecurity voegt een firewallregel toe waarmee externe toegang vanuit openbare netwerken vanaf elke externe locatie mogelijk is. Dit omvat locaties in verschillende subnetten.

Notitie

De naam van de firewallregel kan verschillen, afhankelijk van de versie van Windows. Gebruik de cmdlet Get-NetFirewallRule om de namen van de regels op uw systeem weer te geven.

Parameters

-Confirm

U wordt gevraagd om bevestiging voordat u de cmdlet uitvoert.

Type:SwitchParameter
Aliassen:cf
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Force

Hiermee dwingt u de opdracht uit te voeren zonder dat u om bevestiging van de gebruiker wordt gevraagd.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-SkipNetworkProfileCheck

Geeft aan dat deze cmdlet externe communicatie mogelijk maakt op clientversies van het Windows-besturingssysteem wanneer de computer zich op een openbaar netwerk bevindt. Met deze parameter wordt een firewallregel ingeschakeld voor openbare netwerken die externe toegang alleen vanaf computers in hetzelfde lokale subnet toestaat.

Deze parameter heeft geen invloed op serverversies van het Windows-besturingssysteem, die standaard een lokale subnetfirewallregel hebben voor openbare netwerken. Als de firewallregel voor het lokale subnet is uitgeschakeld op een serverversie, Enable-PSRemoting deze opnieuw inschakelt, ongeacht de waarde van deze parameter.

Als u de beperking van het lokale subnet wilt verwijderen en externe toegang vanaf alle locaties in openbare netwerken wilt inschakelen, gebruikt u de cmdlet Set-NetFirewallRule in de module NetSecurity.

Deze parameter is geïntroduceerd in PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-WhatIf

Toont wat er zou gebeuren als de cmdlet wordt uitgevoerd. De cmdlet wordt niet uitgevoerd.

Type:SwitchParameter
Aliassen:wi
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

Invoerwaarden

None

U kunt geen objecten doorsluisen naar deze cmdlet.

Uitvoerwaarden

String

Deze cmdlet retourneert tekenreeksen die de resultaten beschrijven.

Notities

Vanaf PowerShell 3.0 schakelt Enable-PSRemoting alle sessieconfiguraties in door de waarde van de eigenschap Ingeschakeld van alle sessieconfiguraties in te stellen op $True.

  • Op serverversies van het Windows-besturingssysteem maakt Enable-PSRemoting firewallregels voor privé- en domeinnetwerken die externe toegang toestaan en maakt u een firewallregel voor openbare netwerken die externe toegang alleen vanaf computers in hetzelfde lokale subnet toestaat.

  • Op clientversies van het Windows-besturingssysteem maakt Enable-PSRemoting in PowerShell 3.0 firewallregels voor privé- en domeinnetwerken die onbeperkte externe toegang toestaan. Als u een firewallregel wilt maken voor openbare netwerken die externe toegang vanaf hetzelfde lokale subnet toestaat, gebruikt u de parameter SkipNetworkProfileCheck.

  • Als u op client- of serverversies van het Windows-besturingssysteem een firewallregel wilt maken voor openbare netwerken die de beperking van het lokale subnet verwijdert en externe toegang toestaat, gebruikt u de cmdlet Set-NetFirewallRule in de NetSecurity-module om de volgende opdracht uit te voeren: Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any

Enable-PSRemoting schakelt alle sessieconfiguraties in door de waarde van de eigenschap Ingeschakeld van alle sessieconfiguraties in te stellen op $True.

Enable-PSRemoting verwijdert u de Deny_All- en Network_Deny_All-instellingen. Dit biedt externe toegang tot sessieconfiguraties die zijn gereserveerd voor lokaal gebruik.