PowerShell Remoting: Requirements and Configuration Guide
- Tech news
- August 1, 2023
- No Comment
- 20
Introduction: Understanding PowerShell Remoting
PowerShell remoting is a powerful feature that allows users to run commands on remote computers, making it easier to manage systems from a central location. In this guide, we’ll explore the system requirements, user permissions, and configurations needed to establish remote connections and run commands using PowerShell.
System Requirements for PowerShell Remoting
To use PowerShell remoting on Windows, you need to ensure that both the local and remote computers meet certain requirements:
- Windows PowerShell 3.0 or higher
- Microsoft .NET Framework 4 or higher
- Windows Remote Management 3.0 or higher
If you’re using PowerShell 2.0, the requirements are slightly different:
- Windows PowerShell 2.0 or later
- Microsoft .NET Framework 2.0 or later
- Windows Remote Management 2.0
For full support, it is recommended to use Windows Management Framework (WMF) 5.1. PowerShell 7 and higher also support remoting over SSH, allowing connections to Windows, macOS, or Linux hosts running SSH.

User Permissions for Remote Commands
By default, users must be members of the Administrators group on the remote computer or provide administrator credentials to create remote sessions and run commands. Access to remote commands is determined by the session configuration, which defines the options for the connection endpoint.
The default session configurations, Microsoft.PowerShell and Microsoft.PowerShell32, only grant access to Administrators group members. Administrators can change security descriptors on these configurations or create new ones to allow different access levels.
Configuring Windows Network Locations
PowerShell remoting uses Windows Remote Management (WinRM) to enable remote connections. In Windows PowerShell 3.0 and later, the Enable-PSRemoting cmdlet sets up firewall rules for private, domain, and public networks, allowing unrestricted remote access on private and domain networks and limited access on public networks.
On client versions of Windows with public networks, you can use the SkipNetworkProfileCheck parameter of Enable-PSRemoting to allow remote access from computers in the same local subnet.
To remove the local subnet restriction on public networks and allow remote access from any location, you can modify firewall rules using the Set-NetFirewallRule cmdlet.

Running PowerShell as Administrator for Remoting
Certain remoting operations, like establishing a remote connection to the local computer (loopback) or managing session configurations, require administrator privileges. Even if you are an Administrator group member on the local computer, you must start PowerShell with the “Run as administrator” option to perform these tasks.
How to Configure Your Computer for Remoting
While supported versions of Windows allow remote connections without any configuration, you need to enable PowerShell remoting to receive remote connections. On Windows Server 2012 and newer releases, remoting is enabled by default, and the Enable-PSRemoting cmdlet restores default settings if needed.
You can configure PowerShell to receive remote commands by running PowerShell as an administrator and using the Enable-PSRemoting command.
Understanding Policies in PowerShell Remoting
When working remotely, your actions are affected by the policies on both the local and remote computers. The policies on the local computer take effect before and during the connection, while the remote computer’s policies come into play while using the connection.

Conclusion: Simplify Management with PowerShell Remoting
PowerShell remoting streamlines system management by enabling remote connections and commands. By understanding the requirements and configurations, you can harness the full potential of PowerShell remoting to efficiently manage your systems from a centralized location.