Ошибка удаленного взаимодействия PowerShell - сетевой путь не найден

Я не могу подключиться к удаленному серверу с помощью enter-pssession -computername serverA. Мой сценарий:

  • у меня есть 2 сервера Win 2003 R2 в том же домене. ServerA-это сервер WSUS, serverB-это контроллер домена
  • оба сервера включили PowerShell remoting
  • оба сервера настроили winrm (winrm quickconfig)
  • на обоих серверах TrustedHosts установлено значение *
  • программы setspn.exe настроен правильно (http, https, wsman и т. д.)
  • оба сервера Брандмауэр отключен
  • оба сервера имеют PowerShell 2.0

Я пытаюсь enter-pssession -computername serverA под учетными данными администратора домена от serverB до serverA, и он выдает следующую ошибку:

"""Enter-PSSession: не удалось подключиться к удаленному серверу со следующим сообщением об ошибке: WinRM не может обработать запрос. При использовании проверки подлинности Kerberos произошла следующая ошибка: сетевой путь не найден."""

когда я пытаюсь enter-pssession -computername serverB под учетными данными администратора домена от сервера, он отлично работает! Он также работает, если я использую localhost так:enter-pssession -computername localhost под учетными данными администратора домена (на сервере) также работает, но когда я пробую имя хоста на сервере (вместо localhost) enter-pssession -computername serverA Он выдает ту же ошибку.

Я также пытался использовать get-credential и предоставить различные типы учетных данных, но это не помогло. Единственное, что помогло, это использование локальной (не доменной) учетной записи администратора и запуск enter-pssession -computername serverA -credentials $cred и это работал, но только локально, я смог сделать это с локальной машины (от сервера к себе), но не от serverB к serverA под учетными данными serverAadministrator.

какие идеи?

спасибо

4 ответов


прежде всего, я создал переменную учетных данных с моей учетной записью администратора домена:

$cred = get-credential - Я набрал свой домен\имя пользователя и пароль

затем я использовал IP-адрес вместо параметра hostname in-ComputerName, поэтому enter-pssession выглядит так:

Enter-Pssession -ComputerName 192.168.1.111 -Credential $cred

этот подход работает и для команды invoke-command

invoke-command -ComputerName 192.168.1.111 -Credential $cred -ScriptBlock {hostname}

Я до сих пор не знаю, почему он не работает с хоста и почему я должен создать $cred, но поскольку мне нужно быстрое решение, это отлично работает для меня.

Спасибо за помощь.


у меня была точно такая же проблема. С помощью FQDN работал для меня.

Крис Н прав:

The network path was not found.

это явно ошибка разрешения DNS; особенно если IP-адрес работает. Я бы рискнул сказать, что есть проблемы маршрутизации суффикса имени.

на Имя_компьютера описание говорит, что имя NETBIOS должно работать, но это не в моем тестировании в моем окружении. FQDN-еще один вариант для -Имя_компьютера собственность и исправлена эта ошибка для меня.

попробуйте использовать (используйте свой FQDN, конечно):

Invoke-Command -ComputerName servera.vertigion.com

Примечание: заметьте, это все в нижнем регистре. используя случай верблюда (serverA.vertigion.com) ошибка с той же ошибкой. Я понимаю, что обычно nslookups нечувствительны к регистру.

Примечание: у меня не было проблемы с Ввод-Сеанс PSSession


похоже, что проблема заключается в разрешении имен. Вы можете подтвердить это, пингуя ServerA от ServerB. Если это не сработает, вы сможете работать оттуда. Попробуйте пинговать по FQDN (servera.mydomain.com) или по IP.


Посмотреть подробнее здесь. Я столкнулся с этим в паре серверов, которые работали, но затем спонтанно остановились и начали выдавать сообщение об ошибке OP. Я перезагрузил целевой сервер, и все снова заработало.