тл;др
Рассмотрите возможность использования psexec
в качестве альтернативы удаленному взаимодействию PowerShell для выполнения произвольных команд.
Список команд PowerShell, поддерживающих работу с удаленными компьютерами без использования удаленного взаимодействия PowerShell, ограничен (см. ниже); все они могут быть основаны на WMI (я не уверен), и они ориентированы на извлечение удаленных ресурсов и управление ими (как WMI в целом), а не на предоставление возможность выполнять произвольные команды.
Обновление: полезный ответ Альберто Варги указывает, что Win32_Process
метод .Create
класса WMI действительно позволяет создавать произвольные процессы ; документация PowerShell Invoke-WmiMethod
cmdlet даже содержит пример.
Напротив, Invoke-Command
, который предлагает возможность выполнять произвольные команды, действительно использует удаленное взаимодействие PowerShell, как вы обнаружили, для которого требуется протокол WS-Management, реализованный службой Microsoft WinRM, среди прочего. предварительные условия — см. Get-Help about_Remote_Requirements
а>.
Наиболее общей из перечисленных ниже команд без удаленного взаимодействия является Invoke-WmiMethod
, обеспечивающий неограниченный доступ к классам WMI и их методам.
Обратите внимание, однако, что Microsoft рекомендует использовать более новые *-Cim*
командлеты, такие как Invoke-CimMethod
, в интересах межплатформенной поддержки, и что эти CIM, снова полагаются на стандарты WS-Management (WSMan), как и удаленное взаимодействие PowerShell.
Список командлетов PowerShell, которые поддерживают нацеливание на удаленные машины через -ComputerName
без использования удаленного взаимодействия PowerShell, начиная с PSv5.1 (см. Get-Help about_Remote_FAQ
для справочной информации):
Add-Computer
Clear-EventLog
Get-EventLog
Get-HotFix
Get-Process
Get-Service
Get-WmiObject
Invoke-WmiMethod
Limit-EventLog
New-EventLog
Register-WmiEvent
Remove-Computer
Remove-EventLog
Remove-WmiObject
Rename-Computer
Restart-Computer
Set-Service
Set-WmiInstance
Show-EventLog
Stop-Computer
Test-Connection
Write-EventLog
person
mklement0
schedule
19.11.2017