Compartir a través de


Enable-PSRemoting

Configura el equipo para recibir comandos remotos.

Sintaxis

Default (valor predeterminado)

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

Description

El cmdlet Enable-PSRemoting configura el equipo para recibir comandos remotos de Windows PowerShell que se envían mediante la tecnología WS-Management.

En Windows Server 2012, la comunicación remota de Windows PowerShell está habilitada de forma predeterminada. Puede usar Enable-PSRemoting para habilitar la comunicación remota de Windows PowerShell en otras versiones compatibles de Windows y volver a habilitar la comunicación remota en Windows Server 2012 si se deshabilita.

Solo tiene que ejecutar este comando una vez en cada equipo que recibirá comandos. No es necesario ejecutarlo en equipos que solo envíen comandos. Dado que la configuración inicia agentes de escucha, es prudente ejecutarlo solo cuando sea necesario.

A partir de Windows PowerShell 3.0, el cmdlet Enable-PSRemoting puede habilitar la comunicación remota de Windows PowerShell en versiones de cliente de Windows cuando el equipo está en una red pública. Para obtener más información, consulte la descripción del parámetro SkipNetworkProfileCheck.

El cmdlet Enable-PSRemoting realiza las siguientes operaciones:

  • Ejecuta el cmdlet Set-WSManQuickConfig, que realiza las siguientes tareas:
    • Inicia el servicio WinRM.
    • Establece el tipo de inicio del servicio WinRM en automático.
    • Crea un agente de escucha para aceptar solicitudes en cualquier dirección IP.
    • Habilita una excepción de firewall para las comunicaciones de WS-Management.
    • Registra las configuraciones de sesión Microsoft.PowerShell y Microsoft.PowerShell.Workflow, si aún no están registradas.
    • Registra la configuración de sesión de Microsoft.PowerShell32 en equipos de 64 bits, si aún no está registrado.
    • Habilita todas las configuraciones de sesión.
    • Cambia el descriptor de seguridad de todas las configuraciones de sesión para permitir el acceso remoto.
  • Reinicia el servicio WinRM para que se hagan efectivos los cambios anteriores.

Para ejecutar este cmdlet, inicie Windows PowerShell con la opción "Ejecutar como administrador".

Precaución

En los sistemas que tienen Windows PowerShell 3.0 y el motor de Windows PowerShell 2.0, no use Windows PowerShell 2.0 para ejecutar los cmdlets enable-PSRemoting y Disable-PSRemoting. Es posible que los comandos parezcan correctos, pero la comunicación remota no está configurada correctamente. Es probable que se produzcan errores en los comandos remotos e intentos posteriores de habilitar y deshabilitar la comunicación remota.

Ejemplos

Ejemplo 1: Configurar un equipo para recibir comandos remotos

Enable-PSRemoting

Este comando configura el equipo para recibir comandos remotos.

Ejemplo 2: Configurar un equipo para recibir comandos remotos sin un mensaje de confirmación

Enable-PSRemoting -Force

Este comando configura el equipo para recibir comandos remotos. Usa el parámetro Force para suprimir las solicitudes del usuario.

Ejemplo 3: Permitir el acceso remoto en clientes

Enable-PSRemoting -SkipNetworkProfileCheck -Force

Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any

En este ejemplo se muestra cómo permitir el acceso remoto desde redes públicas en versiones de cliente de Windows. Antes de usar estos comandos, analice la configuración de seguridad y compruebe que la red del equipo será segura frente a daños.

El primer comando habilita la comunicación remota en Windows PowerShell. De forma predeterminada, esto crea reglas de red que permiten el acceso remoto desde redes privadas y de dominio. El comando usa el parámetro SkipNetworkProfileCheck para permitir el acceso remoto desde redes públicas en la misma subred local. El comando usa el parámetro Force para suprimir los mensajes de confirmación.

El parámetro SkipNetworkProfileCheck no tiene ningún efecto en la versión del servidor de Windows, lo que permite el acceso remoto desde redes públicas en la misma subred local de forma predeterminada.

El segundo comando elimina la restricción de subred. El comando usa el cmdlet set-NetFirewallRule del módulo NetSecurity para agregar una regla de firewall que permita el acceso remoto desde redes públicas desde cualquier ubicación remota. Esto incluye ubicaciones en diferentes subredes.

Parámetros

-Confirm

Le pide confirmación antes de ejecutar el cmdlet.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False
Alias:cf

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-Force

Suprime todas las solicitudes del usuario. De forma predeterminada, se le pedirá que confirme cada operación.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-SkipNetworkProfileCheck

Habilita la comunicación remota en versiones de cliente de Windows cuando el equipo está en una red pública. Este parámetro habilita una regla de firewall para redes públicas que solo permite el acceso remoto desde equipos de la misma subred local.

Este parámetro no tiene ningún efecto en las versiones de servidor de Windows, que, de forma predeterminada, tienen una regla de firewall de subred local para redes públicas. Si la regla de firewall de subred local está deshabilitada en una versión de servidor de Windows, Enable-PSRemoting volver a habilitarla, independientemente del valor de este parámetro.

Para quitar la restricción de subred local y habilitar el acceso remoto desde todas las ubicaciones de las redes públicas, use el cmdlet set-NetFirewallRule en el módulo de NetSecurity.

Este parámetro se introdujo en Windows PowerShell 3.0.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

-WhatIf

Muestra lo que sucedería si el cmdlet se ejecuta. El cmdlet no se ejecuta.

Propiedades de parámetro

Tipo:SwitchParameter
Valor predeterminado:False
Admite caracteres comodín:False
DontShow:False
Alias:Wi

Conjuntos de parámetros

(All)
Posición:Named
Obligatorio:False
Valor de la canalización:False
Valor de la canalización por nombre de propiedad:False
Valor de los argumentos restantes:False

CommonParameters

Este cmdlet admite los parámetros comunes: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction y -WarningVariable. Para obtener más información, vea about_CommonParameters.

Entradas

None

No se puede canalizar la entrada a este cmdlet.

Salidas

String

Este cmdlet devuelve cadenas que describen sus resultados.

Notas

  • En Windows PowerShell 3.0, Enable-PSRemoting crea las siguientes excepciones de firewall para las comunicaciones de WS-Management.

    En las versiones de servidor de Windows, Enable-PSRemoting crea reglas de firewall para redes privadas y de dominio que permiten el acceso remoto y crea una regla de firewall para redes públicas que solo permite el acceso remoto desde equipos de la misma subred local.

    En las versiones de cliente de Windows, Enable-PSRemoting en Windows PowerShell 3.0 crea reglas de firewall para redes privadas y de dominio que permiten el acceso remoto sin restricciones. Para crear una regla de firewall para redes públicas que permita el acceso remoto desde la misma subred local, use el parámetro SkipNetworkProfileCheck.

    En las versiones de cliente o servidor de Windows, para crear una regla de firewall para redes públicas que quite la restricción de subred local y permita el acceso remoto, use el cmdlet set-NetFirewallRule set-NetFirewallRule para ejecutar el siguiente comando: Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any

  • En Windows PowerShell 2.0, enable-PSRemoting crea las siguientes excepciones de firewall para las comunicaciones de WS-Management.

    En las versiones de servidor de Windows, crea reglas de firewall para todas las redes que permiten el acceso remoto.

    En las versiones de cliente de Windows, Enable-PSRemoting en Windows PowerShell 2.0 crea una excepción de firewall solo para ubicaciones de dominio y red privada. Para minimizar los riesgos de seguridad, Enable-PSRemoting no crea una regla de firewall para redes públicas en versiones cliente de Windows. Cuando la ubicación de red actual es pública, Enable-PSRemoting devuelve el siguiente mensaje: "No se puede comprobar el estado del firewall".

  • A partir de Windows PowerShell 3.0, enable-PSRemoting habilita todas las configuraciones de sesión estableciendo el valor de la propiedad Enabled de todas las configuraciones de sesión (WSMan:\NombreDeEquipo\Plugin\SessionConfigurationName\Enabled) en True ($true).

  • En Windows PowerShell 2.0, Enable-PSRemoting quita la configuración de Deny_All del descriptor de seguridad de las configuraciones de sesión. En Windows PowerShell 3.0, Enable-PSRemoting quita la configuración de Deny_All y Network_Deny_All, lo que proporciona acceso remoto a las configuraciones de sesión reservadas para uso local.