Як увімкнути аутентифікацію переговорів для 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).


1

На нашому серверному сервері 2012 / Exchange 2010 на машині сталася помилка при спробі використання програмного забезпечення для резервного копіювання AVG.

Я знайшов видалення обох maxenvelopesizeі trusted_hostsпід цим ключем зробив трюк

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

1

У мене один сервер працював, ще один - ні. Я не зміг знайти проблему. Нарешті я зрозумів це.

На сервері відправки: встановіть локальну політику Конфігурація комп'ютера \ Адміністративні шаблони \ Система \ Делегування облікових даних \ Дозволити видалення свіжих облікових даних. Там встановіть WSMAN * у списку Додати сервери до списку (також встановіть прапорець Concatenate OS за замовчуванням)

На приймальному сервері (Створіть .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

працює для мене


1

Зауважте, що якщо комп'ютер (сервер) є членом домену або сам є контролером домену (у моєму випадку Windows Server 2019), групову політику можна застосовувати з групової політики домену.
Тому я пропоную (у цих випадках) використовувати команду нижче та перевірити значення виграшної політики "Заборонити переговорну перевірку".

C:\Temp\gpresult /h rep.htm

Він може застосовуватися з "Політики контролерів домену за замовчуванням" !!

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.