Enable-PSRemoting
Configura il computer per ricevere i comandi remoti.
Sintassi
Default (Impostazione predefinita)
Enable-PSRemoting
[-Force]
[-SkipNetworkProfileCheck]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Descrizione
Il cmdlet Enable-PSRemoting configura il computer per ricevere i comandi remoti di PowerShell inviati tramite la tecnologia WS-Management.
La comunicazione remota di PowerShell è abilitata per impostazione predefinita in Windows Server 2012 e versioni successive. È possibile usare Enable-PSRemoting per abilitare la comunicazione remota di PowerShell in altre versioni supportate di Windows e riabilitare la comunicazione remota, se disabilitata.
È necessario eseguire questo comando una sola volta in ogni computer che riceve i comandi. Non è necessario eseguirlo nei computer che inviano solo comandi. Poiché la configurazione avvia i listener, è prudente eseguirlo solo dove è necessario.
A partire da PowerShell 3.0, il cmdlet Enable-PSRemoting può abilitare la comunicazione remota di PowerShell nelle versioni client di Windows quando il computer si trova in una rete pubblica. Per altre informazioni, vedere la descrizione del parametro SkipNetworkProfileCheck.
Il cmdlet Enable-PSRemoting esegue le operazioni seguenti:
- Esegue il cmdlet Set-WSManQuickConfig
, che esegue le attività seguenti: - Avvia il servizio WinRM.
- Imposta il tipo di avvio nel servizio WinRM su Automatico.
- Crea un listener per accettare le richieste in qualsiasi indirizzo IP.
- Abilita un'eccezione del firewall per le comunicazioni WS-Management.
- Registra le configurazioni di sessione Microsoft.PowerShell e Microsoft.PowerShell.Workflow, se non sono già registrate.
- Registra la configurazione della sessione Microsoft.PowerShell32 nei computer a 64 bit, se non è già registrata.
- Abilita tutte le configurazioni di sessione.
- Modifica il descrittore di sicurezza di tutte le configurazioni di sessione per consentire l'accesso remoto.
- Riavvia il servizio WinRM per rendere effettive le modifiche precedenti.
Per eseguire questo cmdlet nella piattaforma Windows, avviare PowerShell usando l'opzione Esegui come amministratore.
Per altre informazioni sull'uso del remoting di PowerShell, vedere gli articoli seguenti:
Esempio
Esempio 1: Configurare un computer per ricevere comandi remoti
Questo comando configura il computer per la ricezione di comandi remoti.
Enable-PSRemoting
Esempio 2: Configurare un computer per ricevere comandi remoti senza un prompt di conferma
Questo comando configura il computer per la ricezione di comandi remoti. Il parametro Force elimina le richieste dell'utente.
Enable-PSRemoting -Force
Esempio 3: Consentire l'accesso remoto nei client
In questo esempio viene illustrato come consentire l'accesso remoto dalle reti pubbliche nelle versioni client del sistema operativo Windows. Il nome della regola del firewall può essere diverso per versioni diverse di Windows.
Usare Get-NetFirewallRule per visualizzare un elenco di regole. Prima di abilitare la regola del firewall, visualizzare le impostazioni di sicurezza nella regola per verificare che la configurazione sia appropriata per l'ambiente in uso.
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
Per impostazione predefinita, Enable-PSRemoting crea regole di rete che consentono l'accesso remoto da reti private e di dominio. Il comando usa il parametro SkipNetworkProfileCheck per consentire l'accesso remoto da reti pubbliche nella stessa subnet locale. Il comando specifica il parametro Force per eliminare i messaggi di conferma.
Il parametro SkipNetworkProfileCheck non influisce sulle versioni server del sistema operativo Windows, che consentono l'accesso remoto da reti pubbliche nella stessa subnet locale per impostazione predefinita.
Il cmdlet Set-NetFirewallRule nel modulo NetSecurity aggiunge una regola del firewall che consente l'accesso remoto da reti pubbliche da qualsiasi posizione remota. Sono incluse locazioni in diverse subnet.
Annotazioni
Il nome della regola del firewall può essere diverso a seconda della versione di Windows. Usare il cmdlet Get-NetFirewallRule per elencare i nomi delle regole nel sistema.
Parametri
-Confirm
Richiede conferma prima di eseguire il cmdlet.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | cfr |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Force
Forza l'esecuzione del comando senza chiedere conferma dell'utente.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-SkipNetworkProfileCheck
Indica che questo cmdlet abilita la comunicazione remota nelle versioni client del sistema operativo Windows quando il computer si trova in una rete pubblica. Questo parametro abilita una regola del firewall per le reti pubbliche che consente l'accesso remoto solo dai computer nella stessa subnet locale.
Questo parametro non influisce sulle versioni del server del sistema operativo Windows, che, per impostazione predefinita, hanno una regola del firewall della subnet locale per le reti pubbliche. Se la regola del firewall della subnet locale è disabilitata in una versione del server, Enable-PSRemoting la riattiva, indipendentemente dal valore di questo parametro.
Per rimuovere la restrizione della subnet locale e abilitare l'accesso remoto da tutte le posizioni nelle reti pubbliche, usare il cmdlet Set-NetFirewallRule nel modulo NetSecurity.
Questo parametro è stato introdotto in PowerShell 3.0.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-WhatIf
Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | Wi |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
CommonParameters
Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.
Input
None
Gli oggetti non possono essere inviati tramite pipe a questo cmdlet.
Output
String
Questo cmdlet restituisce stringhe che ne descrivono i risultati.
Note
A partire da PowerShell 3.0, Enable-PSRemoting abilita tutte le configurazioni di sessione impostando il valore della proprietà enabled di di tutte le configurazioni di sessione su $true.
Nelle versioni server del sistema operativo Windows,
Enable-PSRemotingcrea regole del firewall per le reti private e di dominio che consentono l'accesso remoto e crea una regola del firewall per le reti pubbliche che consente l'accesso remoto solo dai computer nella stessa subnet locale.Nelle versioni client del sistema operativo Windows,
Enable-PSRemotingin PowerShell 3.0 crea regole del firewall per le reti private e di dominio che consentono l'accesso remoto senza restrizioni. Per creare una regola del firewall per le reti pubbliche che consente l'accesso remoto dalla stessa subnet locale, usare il parametro SkipNetworkProfileCheck. Nelle versioni client o server del sistema operativo Windows, per creare una regola del firewall per le reti pubbliche che rimuove la restrizione della subnet locale e consente l'accesso remoto , usare il cmdlet
Set-NetFirewallRulenel modulo NetSecurity per eseguire il comando seguente:Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any
Enable-PSRemoting abilita tutte le configurazioni di sessione impostando il valore della proprietà Enabled di tutte le configurazioni di sessione su $true.
Enable-PSRemoting rimuove le impostazioni di Deny_All e Network_Deny_All. In questo modo viene fornito l'accesso remoto alle configurazioni di sessione riservate per l'uso locale.