Windows PowerShell is a command-line shell created for system administrators. PowerShell includes an interactive prompt and a scripting environment that may be used independently or in combination with other tools. PowerShell is built on top of the .NET Framework Common Language Runtime (CLR) and the .NET Framework, and accepts and returns .NET Framework objects. PowerShell gives access to the file system on the computer. In addition, PowerShell providers enable you to acccess other data stores, such as the registry.

WinRM requires remote configuration to be able to run PowerShell commands remotely. WinRM has the capability to make this happen by providing a shared way for differing systems to communicate with each other. WinRM is the Microsoft implementation of the WS-Management Protocol, a SOAP-based protocol used for managing a variety of hardware devices.

Unfortunately, WinRM cannot be enabled remotely. Configuring WinRM is always a painful task which is prone to process errors. The secure encrypted communication of WinRM protocol on non-domain member computers is a complex procedure of creating and distributing certificates.


The Remote Execution Enabler for PowerShell allows you to execute Windows PowerShell 2.0 or later on remote and multiple machines. This conveniently lets you configure WinRM in five steps or less.

Moreover, multiple configuration is possible by separating each IP address with a comma (,).

Certificates are generated and distributed to remote hosts during the WinRM configuration process to guarantee secure and encrypted remote PowerShell execution.


Here are the components of the Remote Execution Enabler for PowerShell:

I. Dashboard

The Dashboard tab is your main window. Here, you can specify the hosts you want to configure and connect to servers.

IP address.png



.NET Framework 4.0 is required to run this application.

  1. Download and install Remote Execution Enabler for PowerShell.
  2. Run the tool against the target machine.

a. Click Dashboard.

b. In IP Address, type the IP address of the target machine.

Import button allows you to import CSV or text files with a list of IP addresses or hostnames.

Configuring multiple machines:

    • You can separate each IP address with a comma (,).

For example,,,...

    • You can specify a range of IP addresses with a hyphen (-).

For example, you want to configure machines with IP addresses from through, you can simply enter

c. In Choose Credentials, enter User Name and Password.


Your User Name should follow the domain\User Name format. Use .\ If the administrator's account is not a domain.

As in example:


d. Click Start Configuration.

The following status messages appear during a configuration:

  • In progress – This message appears while configuration is taking place.
  • Waiting – This message appears when configuring multiple systems at the same time. The configuration takes place consecutively.
  • Complete – This message appears with a green radio button once configuration is successful. The target system is ready to accept PowerShell commands.
  • Failed – This message appears with a red radio button when configuration encounters an error and is not completed. Mouse over Failed to show error message.


You may encounter the following error messages during a configuration:

  • Unknown host
  • PowerShell 2.0 is not installed
  • Admin share is not available.
  • Unable to start WinRM service
  • Unable to detect group membership
  • Unable to detect PowerShell version
  • Unable to reuse an existing SWMan listener
  • Unable to create self-signed certificate
  • Unable to create a WSMan listener
  • Cannot check or enable firewall rule
  • Unable to set up PowerShell language mode setting
  • Unable to set up Windows authentication
  • Invalid arguments count
  • Empty arguments list

For more information about troubleshooting the error messages, see Troubleshooting Applnsight for IIS and Other Errors chapters in the SAM Administration Guide.

  3. Test to obtain hostname information. Run the following command from a PowerShell prompt in the client machine:

$so = New-PSSessionOption -skipcacheck -skipcncheck
invoke-command -Computer <hostip> -ScriptBlock {get-host} -credential <credential> -useSSL -sessionoption $so

II. Resources

The Resources tab links to references, such as free tool documentation, a whitepaper for managing Exchange Management with EMS, a webcast on what’s new in PowerShell v5, and documentation on how to monitor and alert PowerShell outputs. Content is regularly updated to ensure relevance of information.

Resource Tab.JPG