Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Windows Powershell Remoting into Non-Domain Joined System

Powershell Remoting to a Non-Domain Host

  1. From an admin shell, enable PS remoting on the machine you wish to access:
New-ItemProperty -Name LocalAccountTokenFilterPolicy `
  -Path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System `
  -PropertyType DWord -Value 1

Enable-PsRemoting -Force
  1. From an admin shell, configure your client system to allow remote connections to non-domain machines
Set-Item WSMan:\localhost\Client\TrustedHosts -Value "*" -Force
  1. Connect to the remote machine using the exact login credentials. For example, a local user would provide SERVER\username and password.
$SERVER = 'REMOTE_SERVER'
$USER   = 'REMOTE_USER'
Set-ItemProperty 'HKLM:\SOFTWARE\Microsoft\PowerShell\1\ShellIds' ConsolePrompting $true
Invoke-Command -Computer $SERVER -Credential (get-credential "$SERVER\$USER") { ls C:\ }
@basezen

This comment has been minimized.

Copy link

@basezen basezen commented May 29, 2018

There is a backquote missing on 2nd line, but great, thanks. BTW if the Set-Item call fails, it means remote WS Management on localhost has not been correctly configured, e.g. winrm quickconfig

@lyoungstratus

This comment has been minimized.

Copy link

@lyoungstratus lyoungstratus commented Jul 25, 2019

Thanks this was immensely helpful.

@cmcginty

This comment has been minimized.

Copy link
Owner Author

@cmcginty cmcginty commented Jul 26, 2019

@basezen thanks, I fixed the line
@lyoungstratus you're welcome

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment