Как включить согласование аутентификации для winrm

10

Я отключил согласование аутентификации для службы winrm на моем сервере, выполнив:

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

И теперь я могу выполнить любую операцию с winrm. Я получаю ошибку:

    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:

Я понимаю ошибку, но проблема в том, что единственный способ найти в Интернете способ включить проверку подлинности путем согласования - выполнить:

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

Что, конечно, дает ошибку выше. Есть ли другой способ включить согласование проверки подлинности?

Ивайло Странджев
источник

Ответы:

14

Использовать групповую политику:

Компьютер> Политики> Административные шаблоны> Компоненты Windows> Удаленное управление Windows> Служба WinRM:
Запретить согласование проверки подлинности: отключено.

Грег Аскью
источник
5
Для будущих читателей: чтобы открыть это меню, запустите (win + 'R') gpedit.mscи выберите Computer Configuration-> Administrative Templates...
Ивайло Странджев
Если это «не настроено», не позволяйте этому обмануть вас; на самом деле он не выбирает значение по умолчанию, как вы ожидаете. Это закончило тем, что было ответом для меня после неудачной попытки исправления реестра.
дюретта
5

Отредактируйте раздел реестра HKLM \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ WSMAN \ Client.

Установите auth_kerberos и auth_negotiate в 1.

Перезапустите сервис.

Иван
источник
2

Как предлагается в этом ответе , но Сервис, а не Клиент:

  1. Отредактируйте раздел реестра HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Service.

  2. Установка auth_kerberosи auth_negotiateк 1 .

  3. Перезапустите службу удаленного управления Windows (WS-Management).

lcapty507
источник
1

На нашем сервере 2012 / exchange 2010 у нас была эта ошибка при попытке использовать программу резервного копирования AVG.

Я нашел удаление обоих maxenvelopesizeи trusted_hostsпод этим ключом добился цели

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Client]
"maxEnvelopeSize"=dword:000007d0
"trusted_hosts"="*"
грабить
источник
1

У меня один сервер работал, а другой нет. Я не мог найти проблему. Наконец я понял это.

На отправляющем сервере: установите локальную политику Конфигурация компьютера \ Административные шаблоны \ Система \ Делегирование учетных данных \ Разрешить делегирование свежих учетных данных. Там установите WSMAN * в списке «Добавить серверы в список» (также установите флажок «Объединить настройки ОС по умолчанию»).

На принимающем сервере (создайте файл .reg со следующим :):

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

работает для меня

Citrix Admin
источник
1

Обратите внимание, что если компьютер (сервер) является членом домена или сам является контроллером домена (в моем случае Windows Server 2019), групповую политику можно применять из групповой политики домена.
Поэтому я предлагаю (в этих случаях) использовать приведенную ниже команду и проверить выигрышное значение политики «Запретить согласование».

C:\Temp\gpresult /h rep.htm

Может применяться из «Политики контроллеров домена по умолчанию» !!

Мехди Имани
источник