Puede configurar el host de WinRM para habilitar la comunicación con el complemento PowerShell a través del protocolo HTTP.

Por qué y cuándo se efectúa esta tarea

Debe modificar la configuración de WinRM mediante la ejecución de comandos en la máquina host de WinRM. Puede utilizar la misma máquina que el servicio WinRM y el cliente WinRM.

Importante:

Si omite alguno de los pasos al configurar WinRM para utilizar HTTP, es posible que no se pueda agregar el host y que reciba un mensaje de error en los registros como

Caused by: org.dom4j.DocumentException: Error on line -1 of document : Premature end of file. 
Nested exception: Premature end of file.
at org.dom4j.io.SAXReader.read(SAXReader.java:482)
at org.dom4j.DocumentHelper.parseText(DocumentHelper.java:278)
at com.xebialabs.overthere.cifs.winrm.connector.JdkHttpConnector.sendMessage(JdkHttpConnector.java:117)

Procedimiento

  1. Ejecute el siguiente comando para establecer los valores predeterminados de la configuración de WinRM.

    c:\> winrm quickconfig

  2. (Opcional) : Ejecute el siguiente comando para comprobar si se está ejecutando un agente de escucha y compruebe los puertos predeterminados.

    c:\> winrm e winrm/config/listener

    Los puertos predeterminados son 5985 para HTTP y 5986 para HTTPS.

  3. Habilite la autenticación básica en el servicio WinRM.
    1. Ejecute el siguiente comando para comprobar si se permite la autenticación básica.

      c:\> winrm get winrm/config/service

    2. Ejecute el siguiente comando para habilitar la autenticación básica.

      c:\> winrm set winrm/config/service/auth @{Basic="true"}

  4. Ejecute el siguiente comando para permitir la transferencia de datos sin cifrar en el servicio WinRM.

    c:\> winrm set winrm/config/service @{AllowUnencrypted="true"}

  5. Habilite la autenticación básica en el cliente WinRM.
    1. Ejecute el siguiente comando para comprobar si se permite la autenticación básica.

      c:\> winrm get winrm/config/client

    2. Ejecute el siguiente comando para habilitar la autenticación básica.

      c:\> winrm set winrm/config/client/auth @{Basic="true"}

  6. Ejecute el siguiente comando para permitir la transferencia de datos sin cifrar en el cliente WinRM.

    c:\> winrm set winrm/config/client @{AllowUnencrypted="true"}

  7. Si la máquina host de WinRM está en un dominio externo, ejecute el siguiente comando para especificar los hosts de confianza.

    c:\> winrm set winrm/config/client @{TrustedHosts="host1, host2, host3"}

  8. Ejecute el siguiente comando para probar la conexión con el servicio WinRM.

    c:\> winrm identify -r:http://servidor_winrm:5985 -auth:basic -u:nombre_de_usuario -p:contraseña -encoding:utf-8