@WindBridges

Получаю ошибку при добавлении IP в TrustedHosts, почему?

Впервые пытаюсь настроить удаленный доступ через WinRm. Удаленный компьютер - просто облачный сервер, ни в домене, ни в рабочей группе. Следуя инструкции, на сервере выполнил Enable-PSRemoting, у себя на клиенте пытаюсь добавить IP сервера в список доверенных хостов. Выполняю
Set-Item -Path WSMan:\localhost\Client\TrustedHosts -Value "11.22.33.44"
, в ответ получаю:

Запуск службы WinRM
Служба WinRM не запущена. Выполнение данной команды приведет к запуску службы WinRM.

Вы хотите продолжить?
[Y] Да - Y  [N] Нет - N  [S] Приостановить - S  [?] Справка (значением по умолчанию является "Y"):

Настройка безопасности службы WinRM.
Данная команда изменяет список TrustedHosts для клиента WinRM. Возможно, не будет проверяться подлинность компьютеров,
указанных в списке TrustedHosts. Также возможно, что клиенты будут отправлять на эти компьютеры учетные данные. Вы
действительно хотите изменить этот список?
[Y] Да - Y  [N] Нет - N  [S] Приостановить - S  [?] Справка (значением по умолчанию является "Y"):
Set-Item : Клиенту не удается подключиться к узлу назначения, указанному в запросе. Убедитесь, что служба на узле назначения работает и принимает запросы. Ознакомьтесь с журналами и документацией для определения запущенной на узле назначения службы WS-Management (чаще всего это IIS или WinRM). Если это служба WinRM, то для анализа состояния и настройки этой службы используйте на удаленном узле команду "winrm quickconfig".
строка:1 знак:1
+ Set-Item -Path WSMan:\localhost\Client\TrustedHosts -Value "11.22.33.44 ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Set-Item], InvalidOperationException
    + FullyQualifiedErrorId : System.InvalidOperationException,Microsoft.PowerShell.Commands.SetItemCommand


Если выполнить на сервере winrm quickconfig, то получаю:
PS C:\Windows\system32> winrm quickconfig
Служба WinRM уже выполняется на этом компьютере.
Служба WinRM уже настроена для удаленного управления на этом компьютере.


А если на локальном выполнить Get-ChildItem WSMan:\localhost\Client\TrustedHosts, то тоже получаем ошибку:

PS C:\WINDOWS\system32> Get-ChildItem WSMan:\localhost\Client\TrustedHosts

Запуск службы WinRM
Служба WinRM не запущена. Выполнение данной команды приведет к запуску службы WinRM.

Вы хотите продолжить?
[Y] Да - Y  [N] Нет - N  [S] Приостановить - S  [?] Справка (значением по умолчанию является "Y"):
Get-ChildItem : Не удается найти путь "localhost\Client\TrustedHosts", так как он не существует.
строка:1 знак:1
+ Get-ChildItem WSMan:\localhost\Client\TrustedHosts
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (localhost\Client\TrustedHosts:String) [Get-ChildItem], ItemNotFoundExce
   ption
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand
  • Вопрос задан
  • 1881 просмотр
Решения вопроса 1
hekkaaa
@hekkaaa
C#/.NET Developer
Привет.

Так ну давайте по очереди. Начнем с:
Set-Item : Клиенту не удается подключиться к узлу назначения, указанному в запросе. Убедитесь, что служба на узле назначения работает и принимает запросы. Ознакомьтесь с журналами и документацией для определения запущенной на узле назначения службы WS-Management (чаще всего это IIS или WinRM). Если это служба WinRM, то для анализа состояния и настройки этой службы используйте на удаленном узле команду "winrm quickconfig".
строка:1 знак:1

На вашем месте я бы 1: Посмотрел бы вот эту статью и вязл команду
set-item wsman:localhost\client\trustedhosts -value *

Для теста разрешил бы подключаться с любого IP (да опасно, но лучше идей пока нет).

2: Если я правильно понял на локальном пк откуда вы подключаетесь к удаленной машине проблема с запуском службы WinRM.
Я бы для начала проверил ее дефолтный статус и запустил бы руками предварительно.

У меня на ноутбуке она по дефолту выключена.
"Status Name DisplayName
------ ---- -----------
Stopped WinRM Служба удаленного управления Windows …"

Варианты запуска разные. Классика через start-service ****

Есть ручные варианты

Резюмируя: Проверить запуск сервисов на двух машинах. Они действительно могут быть отключены.
Если проблема остается то решаем по мере поступления.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@MaxKozlov Куратор тега PowerShell
winrm - это такая штука, которая хочет работать как сервис с обоих концов.

Самое простое что вы можете сделать - запустить от админа winrm quickconfig у себя на клиенте
и, если вас это напрягает, запретить к нему подключаться, например через firewall или те же настройки winrm listener

на эту тему уже давно жаловались
https://github.com/PowerShell/PowerShell/issues/3468
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы