PowerShell remoting over domain boundaries

Let’s imagine situation when you have server in domain and you want to execute remote PowerShell commands from the client which is not in the domain. Following recipe shows you how to configure client and server for described scenario.

Udemy course: Improve your productivity with PowerShell

On the client run PowerShell commands:

cd wsman:\localhost\Client
Set-Item .\AllowUnencrypted -Value $True -Force
Set-Item .\TrustedHosts -Value * -Force

On the server run PowerShell commands:

Enable-PSRemoting -Force
New-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WSMAN\Service -Name allow_unencrypted -Value 1 -PropertyType DWORD

On the client switch PowerShell provider to file system and run PowerShell commands to test remoting configuration:

$credential = Get-Credential -Message "Enter credentials" -UserName domain\user
Test-WSMan -ComputerName ServerName -Credential $credential -Authentication Negotiate
Enter-PSSession -ComputerName ServerName -Credential $credential

Note that this configuration is intended only for development or testing purposes and is not intended for production use.

If you are interested in PowerShell automation, take my Udemy course Improve your productivity with PowerShell.