У меня около 30 компьютеров, с которых мне нужна информация. например, в сети, на жестком диске и в каких процессах. У меня есть мой скрипт в моей системе, который я запускаю, и я запутался в том, как он аутентифицирует и обрабатывает некоторые запросы. Когда я использую такие вещи, как:

Get-WmiObject -ComputerName <foocomputer>

похоже, действует не так, как:

Get-Process -ComputerName <foocomputer>

Я читал кое-что о том, как иногда Powershell использует WMI в некоторых случаях и RPC в других. Что мне нужно, чтобы я мог выполнить этот скрипт на своем компьютере и получать эту информацию со всех других компьютеров, сохраняя при этом его безопасность?

хозяин

  • Windows 7 (возможно, 8 или 10)
  • PowerShell 4.0 установлен

Удаленные компьютеры

  • Windows 7 (с PS4.0) (для тестирования)
  • Windows 8 (конечные цели)

сеть

  • домен

1 ответ1

0

Вам нужно включить PSRemoting на каждом удаленном компьютере. Я думаю, что для этого вам нужно физически дотронуться до каждого компьютера, но после этого вам следует идти дальше. На каждом удаленном компьютере откройте Powershell от имени администратора и введите следующую команду:

Enable-PSRemoting

В целях безопасности я хотел бы повторить это с помощью второй команды:

Set-PSSessionConfiguration -Name Microsoft.PowerShell -showSecurityDescriptorUI

Это откроет диалоговое окно, которое позволит вам точно настроить, кто имеет удаленный доступ. Вы можете добавить конкретных пользователей или что-то вроде администраторов домена.

Еще одно предупреждение: служба удаленного реестра не настроена на автоматический запуск в Windows 7. Это вероятно то же самое в Windows 8, но я не уверен. Если вы планируете часто запускать сценарий, возможно, вы захотите, чтобы эта служба запускалась автоматически. В случае необходимости вы можете запустить его со своего компьютера с помощью команды sc:

sc \\computername start remoteregistry

Таким образом, служба будет работать только до следующей перезагрузки.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .