Remote Powershell

A l'instar de SSH sur un système Unix, Powershell permet l'ouverture de session distante et l'exécution sur des machines distantes.

Activer Remote Powershell sur une machine cliente

Enable-PSRemoting -Force

Ouvrir une session interactive sur une machine cliente

Enter-PSSession –ComputerName "Server01"

Il est possible d'ouvrir une session Remote Powershell et de l'enregistrer au sein d'une variable pour l'utiliser dans les commandes possédant un paramètre -session

$Session = New-PSSession –computername  "Server01"
Invoke-Command -Session $Session -ScriptBlock {Get-Process}
Copy-Item -ToSession $Session -Path "C:\Users\Administrator\MonScript.ps1" -Destination "C:\chemin\MonScript.ps1"
Invoke-Command -Session $session -ScriptBlock {. "C:\chemin\Monscript.ps1"}