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

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 logs 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. Si el nivel de refuerzo del token de unión de canales del servicio WinRM se establece en strict, cambie su valor a relaxed.
    c:\> winrm set winrm/config/service/auth @{CbtHardeningLevel="relajado"}
  6. 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"}
  7. Ejecute el siguiente comando para permitir la transferencia de datos sin cifrar en el cliente WinRM.
    c:\> winrm set winrm/config/client @{AllowUnencrypted="true"}
  8. 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"}
  9. 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