PowerShell Server

Easily install and configure an SSH 2.0 server that gives you the ability to manage Windows remotely from any SSH client, add an SFTP Server to Windows, and secure local resources for remote access.

PowerShell Server

Remote PowerShell Over SSH

PowerShell Server is a powerful SSH 2.0 server that makes remote system management and resource access easy. Install it on Windows Desktops and Servers for a secure remote entry point, giving users power to securely manage Windows through PowerShell from any standard SSH client. Easily add an SFTP/SCP server to Windows. Provide secure access from outside the firewall to otherwise insecure network resources via SSH Tunneling.

Create an SSH Host

Install on any Windows machine to configure a secure remote entry point that can be accessed from PowerShell or any SSH client.

Add an SFTP/SCP server to Windows

Easily configure an SFTP Server on any Windows Desktop or Server for instant Secure File Transfer capability.

Provide Secure Remote Access to Internal Resources

Use the unique SSH Tunnel and Reverse Tunnel features to provide secure remote access to otherwise insecure internal resources.

Publish Dynamic Web Content

Use PowerShell ASP, a special template language, to easily create and host Web pages and Web applications.

Enjoy Industrial Strength Security

PowerShell Server supports SSH and TLS security protocols, AES and 3DES encryptions, FIPS 140-2 cryptography, and more.

Outstanding Technical Support

Backed by an expert team of support professionals. Free Email Support for everyone. Premium Support also available for a fee.


PowerShell SSH Terminal Server

PowerShell Server is a powerful SSH solution that enables administrators and other IT professionals to securely manage remote Windows machines through a lightweight PowerShell command-line interface.

PowerShell Server is a full-featured SSH 2.0 server that enables Windows Desktops and Servers with a secure remote entry point to a Windows PowerShell Host. This gives users the power to securely manage Windows remotely through PowerShell from any standard SSH client, including: PuTTY, OpenSSH, iPhone, Blackberry, Linux/Unix machines, as well as our own SSH client solutions.

In addition to terminal access, the included secure remote access cmdlets work with PowerShell Server to provide an easy-to-use WinRM alternative for PowerShell Remoting. PowerShell Server can act as a standalone server or can pass remote objects through the included SSHRunspace cmdlet, enabling SSH secured remoting.

  • Support for Secure Shell (SSH) Version 2.0.
  • Run as a Windows Service or as a standalone user application.
  • Securely connect to Windows PowerShell remotely from any standard SSH client, including: iPhone, Blackberry, Linux/Unix machine, etc.
  • Public Key, Password, and GSSAPI Authentication (NTLM and Kerberos) support.
  • Strong 3DES encryption, message integrity checking, secure secret key exchange
  • SSH tunnel support.
  • Unlimited concurrent remote connections (depending on license level).
  • An easy-to-use, lightweight and secure PowerShell Remoting alternative to WinRM.
  • SSH-enabled cmdlets for scriptable access to PowerShell Server available through NetCmdlets.
  • Programmatic access to PowerShell Server from developer technologies including ActiveX, Delphi, C++, Java, and more via IPWorks SSH.


When the SSHRunspace cmdlet connects to PowerShell Server, the objects in the remote shell are XML serialized and returned through a secure SSH connection. On the client side, SSHRunspace will transparently deserialize to PSObjects with corresponding fields matching the remote objects. The returned objects can be pipelined, evaluated, and stored as any other PSObject.


Secure File Transfer (SFTP)/SCP Server

PowerShell Server can be used to easily add Secure File Transfer (SFTP)/SCP server capabilities to Windows. PowerShell Server is an SFTP/SCP Server which works out of the box with minimal configuration. For advanced scenarios, control over items such as algorithms and authentication methods are supported. You can also extend functionality through custom scripts.

SFTP Server Features

  • PowerShell-enabled SFTP/SCP Server.
  • Zlib Transfer Compression.
  • AES & 3DES Encryption.
  • Public Key and Password Authentication.
  • IPV6 Addressing Support.
  • FIPS 140-2 validated cryptography
  • Windows User Management.

What is "PowerShell-Enabled" SFTP?

PowerShell Server is configured through PowerShell script that provides hooks into all of the most common events associated with SFTP connection and file transfer. As a result, it is easy to extend and integrate the SFTP capabilities of PowerShell server with back-end systems for messaging, automation, authentication, and more.

For example, suppose that an administrator would like to log, email, or send an instant message of some kind when a file has been uploaded. The administrator could insert script into the FileClose configuration event and execute custom PowerShell script to add this feature.

function Confirm-FileClose($sftpArgs) { # $sftpArgs.connectionId: connection id # $sftpArgs.user: username # $sftpA rgs.path: file or directory virtual path # $sftpArgs.statusCode: operation result # $sftpArgs.physicalPath: physical path of the opened file $sftpArgs.statusCode = $SSH_FXS_OK # Perform script or custom action… }

This powerful extensibility enables many integration opportunities. For example, instead of serving files from the file system, PowerShell Server could act like a virtual file system by retrieving and serving files from another source, like a SQL database. Almost every facet of the SFTP Server is configurable and extensible through PowerShell.


Secure Resources for Remote Access

PowerShell Server provides two mechanisms for securing local resources for remote access: SSH Reverse Tunnels and SSL Tunnels.

Using an SSH Reverse Tunnel provides a time-proven way to expose a local resource to clients outside of your network in a safe and secure way. This is achieved without the need for firewall changes.

The use of SSL Tunnels provides an outward facing SSL/TLS server to secure an otherwise insecure resource. This approach quickly adds a security layer to a resource while maintaining a simple design.


  • Built on the long-standing SSH core available from /n software.
  • Fully customizable security options (encryption algorithms, key exchange algorithms, etc.).
  • Automatic connection management to re-establish broken connections.
  • Supports any number of tunnels simultaneously.
  • SSL Tunnels support latest industry standards including SHA2 and TLS 1.2.
  • SSL Tunnels allow fine grain control over TLS protocol options.
  • Use Tunnels to secure legacy applications with TLS 1.2.

SSH Reverse Tunnels

PowerShell Server's SSH Reverse Tunnel forwards traffic to and from local servers/machines through a secure SSH pipe.

Configuring an SSH Reverse Tunnels is easy. All you need to do is specify your SSH server information and credentials and the remote port on which you want traffic to be received. Once the tunnel is established, any traffic sent to the SSH host on the port specified during configuration will be sent over SSH to PowerShell Server. That traffic is then automatically forwarded to the local server. From the client perspective, they are communicating directly with the server behind your firewall.

See the Getting Started Guide for in-depth instructions on configuring and using SSH Reverse Tunnels.

SSL Tunnels

SSL Tunnels provide a simple way to add a layer of security using SSL/TLS. When configured, PowerShell Server will act as a "middle man" between incoming connections and local servers/hosts. PowerShell will listen on the specified port for incoming connections and secure those connections using SSL/TLS. This secures the communication between the client and PowerShell Server. The communication is then forwarded on to the local server/host over standard TCP/IP.

See the Getting Started Guide for in-depth instructions on configuring and using SSL Tunnels.


Dynamic ASP.NET Publishing

PowerShell Server includes an ASP-like PowerShell based template language for building web applications and making PowerShell scripts web accessible. This template language, PowerShell ASP, contains a mixture of markup and inline PowerShell script. You can use PowerShell ASP inside your existing applications, or create complete applications from scratch based only on PowerShell web pages. PowerShell Server even comes complete with a lightweight Webserver allowing users to web-enable PowerShell scripts without the overhead and setup requirements of Microsoft IIS.

PowerShell Web Publishing runs on the ASP.NET platform, implemented as a custom IHttpHandler mapped to *.ps1x files. Because of this, you can mix PowerShell Web Publishing pages alongside any ASP.NET application. This provides a great way to leverage PowerShell Web Publishing inside your existing applications as needed or you can create complete applications from scratch based only on *.ps1x pages.

Case Study: Implementing an SSH Management Solution

The Canadian Centre for Child Protection Implements their PowerShell-based Solution in Under One Week

With time-critical deadline to meet, the Canadian Centre for Child Protection turned to PowerShell Server to provide them with a proven, secure way to manage their Windows Servers over SSH from their existing Linux infrastructure.

While we initially went with PowerShell Server to manage our Windows servers, we have been really impressed with the other features and plan to expand our usage and deploy the solution to all upcoming Windows servers within our organization.

Lloyd Richardson, Director of Information Technology
More Details

Download Trial

30-Day Fully-Functional Trial

Get started today and see why developers worldwide
choose PowerShell Server.


Order Online

Enterprise Subscriptions

Enterprise Subscriptions offer commercial support and advanced capabilities. Please contact our sales team for details.