Para ejecutar comandos de PowerShell en una máquina desde una máquina remota, tenemos que agregar la máquina remota a la lista de hosts de confianza de la máquina host.
Estoy agregando la máquina A a los hosts de confianza de la máquina B usando el siguiente comando:
winrm set winrm/config/client ‘@{TrustedHosts="machineA"}’
¿Cómo agregar más máquinas, digamos máquina C, máquina D, a la lista de hosts confiables de la máquina B?
windows
powershell
hosts
winrm
usuario de cmm
fuente
fuente
winrm set winrm/config/client '@{TrustedHosts="machineA,machineB"}'
fuente
Error: Invalid use of command line ...
respuesta, intente eliminar las comillas simplesError: Invalid use of command
independientemente.Error: Invalid use of command
.La respuesta sugerida por Loïc MICHEL escribe ciegamente un nuevo valor en la entrada TrustedHosts.
Creo que una mejor manera sería consultar primero TrustedHosts.
Como publicó Jeffery Hicks en 2010 , primero consulte la entrada TrustedHosts:
PS C:\> $current=(get-item WSMan:\localhost\Client\TrustedHosts).value PS C:\> $current+=",testdsk23,alpha123" PS C:\> set-item WSMan:\localhost\Client\TrustedHosts –value $current
fuente
Creé un módulo para facilitar el trato con hosts confiables, psTrustedHosts . Puede encontrar el repositorio aquí en GitHub. Proporciona cuatro funciones que hacen que trabajar con hosts de confianza: fácil
Add-TrustedHost
,Clear-TrustedHost
,Get-TrustedHost
, yRemove-TrustedHost
. Puede instalar el módulo desde la Galería de PowerShell con el siguiente comando:En su ejemplo, si quisiera agregar los hosts 'machineC' y 'machineD', simplemente usaría el siguiente comando:
Add-TrustedHost 'machineC','machineD'
Para ser claros, esto agrega hosts 'machineC' y 'machineD' a cualquier host que ya exista, no sobrescribe los hosts existentes.
El
Add-TrustedHost
comando también admite el procesamiento de canalizaciones (también lo hace elRemove-TrustedHost
comando), por lo que también puede hacer lo siguiente:'machineC','machineD' | Add-TrustedHost
fuente