POWERSHELL REMOTING

Uses TCP 5985 & TCP/SSL 5986

To enable PowerShell Remoting

Enable-PSRemoting

To connect to a remote computer where current user has local admin access

Enter-PSSession -ComputerName <COMPUTER NAME>

To store a session of a remote computer where current user has local admin access

$sess = New-PSSession -ComputerName <COMPUTER NAME>

Execute commands on remote machine via PSRemoting where our current user is local admin on the remote machine

Invoke-Command -ComputerName <COMPUTER NAME> -ScriptBlock {whoami}

Execute commands on remote machine via PSRemoting where our current user is local admin session on the remote machine

Invoke-Command -SessionName <SESSIONNAME> -ScriptBlock {whoami}

To copy a file from local machine to remote server where current user has local admin access

Copy-Item -Path <PATH TO FILE> -Destination <DESTINATION PATH ON REMOTE> -ToSession $sess

To copy a file from remote machine where current user has local admin access

Copy-Item -Path <PATH TO FILE> -Destination <DESTINATION PATH ON LOCAL> -FromSession $sess

To load PowerShell scripts from local machine to the remote machine where our current user is local admin on the remote machine

Invoke-Command -Computername <COMPUTER NAME> -FilePath <LOCAL PATH FOR SCRIPT>

To load PowerShell scripts from local machine to the remote machine with local admin session of current user

Invoke-Command -Session $sess -FilePath <LOCAL PATH FOR SCRIPT>

To load a function from local powershell memory into remote machine where our current user has local admin access

To load a function from local powershell memory into remote machine with local admin session of current user

If the remote machine prompts for authentication, store the credential of the current user which is a local admin on the remote machine

Pass the $cred variable with -Credential parameter for the above commands

Last updated