Cómo habilitar la autenticación de negociación para winrm

10

He deshabilitado la autenticación de negociación para el servicio winrm en mi servidor ejecutando:

winrm put winrm/config/service/Auth @{Negotiate="false"}

Y ahora puedo realizar cualquier operación con winrm. Me sale el error:

    Message = The WinRM client cannot process the request. The WinRM client trie
d to use Negotiate authentication mechanism, but the destination computer (local
host:47001) returned an 'access denied' error. Change the configuration to allow
 Negotiate authentication mechanism to be used or specify one of the authenticat
ion mechanisms supported by the server. To use Kerberos, specify the local compu
ter name as the remote destination. Also verify that the client computer and the
 destination computer are joined to a domain. To use Basic, specify the local co
mputer name as the remote destination, specify Basic authentication and provide
user name and password. Possible authentication mechanisms reported by server:

Entiendo el error, pero el problema es que la única forma en que encuentro en la web para habilitar la autenticación Negotiate es ejecutando:

winrm put winrm/config/service/Auth @{Negotiate="true"}

Lo que por supuesto da el error anterior. ¿Hay otra forma de habilitar la autenticación de negociación?

Ivaylo Strandjev
fuente

Respuestas:

14

Usar la política de grupo:

Equipo> Políticas> Plantillas administrativas> Componentes de Windows> Administración remota de Windows> Servicio WinRM:
No permitir Negociar autenticación: Desactivado.

Greg Askew
fuente
55
Para futuros lectores: para abrir este menú, ejecute (win + 'R') gpedit.mscy seleccione Computer Configuration-> Administrative Templates...
Ivaylo Strandjev
Si está "no configurado", no dejes que eso te engañe; en realidad no está recogiendo el valor predeterminado como cabría esperar. Esto terminó siendo la respuesta para mí después de intentar sin éxito las correcciones de registro.
durette
5

Edite la clave de registro HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ WSMAN \ Client.

Establezca auth_kerberos y auth_negotiate en 1.

Reiniciar el servicio.

Ivan
fuente
2

Como se sugiere en esta respuesta , pero Servicio, no Cliente:

  1. Edite la clave de registro HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Service.

  2. Establecer auth_kerberosy auth_negotiatea 1 .

  3. Reinicie el Servicio de administración remota de Windows (WS-Management).

lcapty507
fuente
1

En nuestro servidor 2012 / exchange 2010 tuvimos un error al intentar utilizar el software de respaldo AVG.

Encontré que eliminar ambos maxenvelopesizey trusted_hostsbajo esta clave hizo el truco

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Client]
"maxEnvelopeSize"=dword:000007d0
"trusted_hosts"="*"
robar
fuente
1

Tenía un servidor funcionando, pero otro no. No pude encontrar el problema. Finalmente lo descubrí.

En el servidor remitente: configure la política local Configuración del equipo \ Plantillas administrativas \ Sistema \ Delegación de credenciales \ Permitir delegar credenciales nuevas. Allí, configure WSMAN * en Agregar servidores a la lista (también marque la casilla para Concatenar los valores predeterminados del sistema operativo)

En el servidor receptor (Cree un archivo .reg con lo siguiente :):

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Client] 
"auth_credssp"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Service]
"auth_credssp"=dword:00000001

funciona para mi

Administrador de Citrix
fuente
1

Tenga en cuenta que si la computadora (servidor) es miembro de un dominio o es un controlador de dominio (en mi caso, Windows Server 2019), la Política de grupo se puede aplicar desde la política de grupo de dominio.
Por lo tanto, sugiero (en estos casos) usar el siguiente comando y verificar el valor ganador de la política "No permitir negociación".

C:\Temp\gpresult /h rep.htm

¡Puede aplicarse desde la "Política de controladores de dominio predeterminados"!

Mehdi Imani
fuente