Powershell - вызов удаленных объектов WMI - ошибка RPC HRESULT: 0x800706BA (сервер RPC недоступен)
У меня есть некоторые проблемы с Get-WmiObject и использованием этого объекта.
В случае, если я подключаюсь к удаленному компьютеру - не в AD, а в Интернете.
Я использую учетные данные и могу получить список классов WMI или объекта (точнее, я хочу работать с Win32_Process) с помощью команд:
$credential = Get-Credential
$class = Get-WmiObject -list -computer "xyz" -credential $credential | Where-Object {$_.Name -eq "Win32_Process" }
$object = Get-WmiObject -class Win32_Process -computer "xyz" -credential $credential
Когда я меняю имя хоста или учетные данные, то получаю и ошибку "RPC недоступен", или несанкционированный доступ. Поэтому я предполагаю, что RPC-сервер и получение объектов и классов WMI работают.
Но когда я их получаю, я не могу с ними работать. В любом случае попытки (вызов метода или Get-Member) выдает эту ошибку:
"Server RPC není k dispozici. (Výjimka na základě hodnoty HRESULT: 0x800706BA)"
(It's a czech localization of: Server RPC is not available. (Exception based on the value of HRESULT: 0x800706BA)
Я не нашел другого примера подобной ошибки. Я использую PowerShell 1.0 на Vista Ent. машина. Целевой компьютер - Win2003 R2 (Сервер продукта будет Win. Serv. 2008 - еще не протестирован).
Буду признателен за любые советы. Спасибо.
1 ответ
Я получил и ошибку "RPC недоступен", или несанкционированный доступ. Поэтому я предполагаю, что RPC-сервер и получение объектов и классов WMI работают.
К сожалению, это не безопасное предположение. Если вы попытаетесь подключиться через WMI к пространству имен на несуществующей машине, например, foo ("\foo\root\cimv2"), вы получите именно эту ошибку:
0x800706BA ("The RPC server is unavailable.")
К тому же:
Я подключаюсь к удаленному компьютеру - который находится не в AD, а в Интернете.
Обратите внимание, что WMI через Интернет будет трудно получить работу. Даже если вы можете пропинговать целевой компьютер, это не значит, что вы сможете подключиться к нему через WMI. DCOM использует несколько портов, которые брандмауэр, маршрутизаторы NAT и т. Д. Будут блокировать. Если ваши точно такие же звонки работают для локального хоста, но не через Интернет, у вас есть проблема.
Если вы контролируете брандмауэры, вы можете ограничить порты, используемые DCOM, а затем открыть эти порты. Если вы просто используете дикий интернет, возможно, вам стоит заняться настройкой VPN, что, я думаю, должно устранить проблему "Интернета"?