Como habilitar a autenticação de negociação para o winrm

10

Eu desabilitei a autenticação de negociação para o serviço winrm no meu servidor executando:

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

E agora eu posso executar qualquer operação com o winrm. Eu recebo o erro:

    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:

Entendo o erro, mas o problema é que a única maneira que encontro na Web para habilitar a autenticação do Negociate é executando:

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

O que obviamente dá o erro acima. Existe outra maneira de ativar a autenticação de negociação?

Ivaylo Strandjev
fonte

Respostas:

14

Use a Diretiva de Grupo:

Computador> Diretivas> Modelos Administrativos> Componentes do Windows> Gerenciamento Remoto do Windows> Serviço WinRM:
Não Permitir Negociar Autenticação: Desativado.

Greg Askew
fonte
5
Para futuros leitores: para abrir este menu, execute (win + 'R') gpedit.msce selecione Computer Configuration-> Administrative Templates... #
Ivaylo Strandjev
Se não estiver "configurado", não deixe que isso o engane; na verdade, não é o padrão que você esperaria. Isso acabou sendo a resposta para mim após tentar sem êxito as correções do registro.
Durette
5

Edite a chave do Registro HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ WSMAN \ Client.

Defina auth_kerberos e auth_negotiate como 1.

Reinicie o serviço.

Ivan
fonte
2

Conforme sugerido nesta resposta , mas Serviço, não Cliente:

  1. Edite a chave do Registro HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Service.

  2. Defina auth_kerberose auth_negotiatepara 1 .

  3. Reinicie o serviço Gerenciamento Remoto do Windows (Gerenciamento WS).

lcapty507
fonte
1

No computador do servidor 2012 / exchange 2010, tivemos esse erro ao tentar usar o software de backup do AVG.

Descobri remover ambos maxenvelopesizee trusted_hostssob essa chave fez o truque

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

Eu tinha um servidor funcionando, mas outro não. Não encontrei o problema. Finalmente eu descobri.

No servidor de envio: defina a política local Configuração do Computador \ Modelos Administrativos \ Sistema \ Delegação de Credenciais \ Permitir a Delegação de Novas Credenciais. Lá, defina o WSMAN * na lista Adicionar servidores à lista (marque também a caixa Concatenate OS default)

No servidor de recebimento (Crie um arquivo .reg com o seguinte :):

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 mim

Citrix Admin
fonte
1

Observe que, se o computador (servidor) for um membro do domínio, ou ele próprio for um controlador de domínio (no meu caso, Windows Server 2019), a Política de Grupo poderá ser aplicada a partir da política de grupo de domínio.
Então, sugiro (nesses casos) o uso abaixo do comando e verifique o valor de ganho da diretiva "Não permitir autenticação de negociação".

C:\Temp\gpresult /h rep.htm

Pode ser aplicado a partir da "Política de Controladores de Domínio Padrão" !!

Mehdi Imani
fonte