Rebex SSH Shell

SSH shell, tunneling, telnet, ANSI terminal emulation library for .NET

Download 30-day free trial Buy from $699
More .NET libraries

Back to feature list...

Standards and platform support

VT100, VT52, and other terminals 

Supported terminal types:

  • VT52 terminal

    All common features are supported.
  • ANSI terminals

    All common features are supported.
  • VT100 and its successors

    Common features of VT100, VT102, VT201, VT220 supported.
    Works with higher versions such as VT520, VT525 as well (some features are supported).
  • xterm terminal

    Common features are supported.
  • Wise 60

    Experimental support.
  • SCO ANSI

    Experimental support.
  • Pick terminal

    Experimental support.

If you lack any of the less-common features we have not implemented yet, please let us know.

100% managed .NET code with no external dependencies 

  • Rebex SSH Shell is written in 100% managed C# code.
  • No external dependencies. It only needs .NET.
  • No third-party or open source code used.
  • Fully CLS-compliant.
  • Supports any .NET language (C#, VB.NET, C++/CLI, etc.)
  • Platform-independent code. Same assemblies for both 32-bit and 64-bit applications and x86/x64, ARM32/ARM64 architectures.

.NET 8/7/6/5 

Rebex SSH Shell supports .NET 8 and .NET 7 on all supported operating systems:

  • Windows 11 (x64, ARM64)
  • Windows 10 (x64, x86, ARM64)
  • Windows Server 2022 (x64)
  • Windows Server 2019 (x64)
  • Windows Server 2016 (x64)
  • Windows Server 2012 (x64, x86)
  • Linux (x64, ARM64, ARM32)
  • macOS (x64, ARM64)
  • Android (x64, ARM64, ARM32)
  • iOS/tvOS (x64, ARM64, ARM32)

Rebex SSH Shell also supports .NET 6 and .NET 5 on all supported operating systems:

  • Windows 11 (x64, ARM64)
  • Windows 10 (x64, x86, ARM64)
  • Windows Server 2022 (x64)
  • Windows Server 2019 (x64)
  • Windows Server 2016 (x64)
  • Windows Server 2012 (x64, x86)
  • Windows 8.1 (x64, x86)
  • Windows 7 SP1 (x64, x86) (end-of-life platform)
  • Linux (x64, ARM64, ARM32)
  • macOS (x64, ARM64)
  • Android (x64, ARM64, ARM32)
  • iOS/tvOS (x64, ARM64, ARM32)

.NET Framework on Windows 

Rebex SSH Shell supports the following .NET Framework platforms:

  • .NET Framework 4.8.x
  • .NET Framework 4.7.x
  • .NET Framework 4.6.x
  • .NET Framework 4.5.x
  • .NET Framework 4.0
  • .NET Framework 3.5 SP1
  • Both 32-bit and 64-bit versions (same DLLs)

Legacy binaries for .NET Framework 2.0/3.0 are available as well.
For details and a trial version download link, see Support for Legacy Platforms.

Supported IDE versions:

  • Microsoft Visual Studio 2022
  • Microsoft Visual Studio 2019
  • Microsoft Visual Studio 2017
  • Microsoft Visual Studio 2015
  • Microsoft Visual Studio 2013
  • Microsoft Visual Studio 2012

Supported Windows versions:

Rebex SSH Shell is also known to work on Windows 8, Windows Vista SP1, Windows XP SP3, Windows Server 2003 R2, Windows Embedded Standard 2009 and Windows Embedded POSReady 2009. However, these platforms already reached end-of-life (most of them many years ago), which means we cannot guarantee support for Rebex SSH Shell on these operating systems.

.NET Core 

Rebex SSH Shell supports .NET Core platform.

Supported versions:

Supported operating systems:

.NET Standard 

Rebex SSH Shell supports .NET Standard 2.1 on .NET 8/7/6/5, .NET Core 3.1, Mono 6.10 (or higher), Xamarin.Android 10.1 (or higher) and Xamarin.iOS 13.10 (or higher). It also supports .NET Standard 2.0 on .NET Core 2.1.

Mono on Linux 

Rebex SSH Shell supports Mono 6.0 (or higher) on Linux and macOS.

However, please note that our terminal emulation Windows Forms control (TerminalControl class) is only supported on Windows in .NET Framework 3.5-4.8.1 and .NET 8/7/6/5. UI-less classes work fine on Linux and macOS.

Xamarin.iOS 

  • Visual Studio with Xamarin.iOS 13.10 or later
  • iOS 10.2 or later

To target Xamarin.iOS platform, reference .NET Standard 2.1 binaries.

Only the UI-less classes are supported on this platform. See mobile features page for details.

Xamarin.Android 

  • Visual Studio with Xamarin.Android 10.1 or later

To target Xamarin.Android platform, reference .NET Standard 2.1 binaries.

Only UI-less classes are supported on this platform. See mobile features page for details.

Legacy platform support 

Legacy edition of Rebex SSH Shell for the following platforms is available as a separate product:

  • .NET Compact Framework 3.5/3.9
  • .NET Framework 2.0/3.0

Legacy platforms are platforms that are no longer covered by our Standard Support, but have not yet reached End of Life. For details, see the following KB articles:

.NET Compact Framework 

Rebex SSH Shell supports .NET Compact Framework on Microsoft's legacy embedded, handheld and mobile platforms based on Windows CE.

Supported frameworks:

  • .NET Compact Framework 3.9
  • .NET Compact Framework 3.5 (end-of-life)

Supported operating systems:

  • Windows Embedded Compact 2013

Known to work on the following end-of-life operating systems:

  • Windows Embedded Compact 7
  • Windows Embedded Handheld 6.5
  • Windows Embedded CE 6.0
  • Windows CE 5.0
  • Windows Mobile 5.0, 6.0, 6.1, 6.5

Please note .NET Compact Framework is a legacy platform, which means that Rebex SSH Shell for .NET CF is available as a separate product with different lifecycle and pricing.

Due to popular demand, we will continue to provide and maintain binaries for .NET Compact Framework 3.5 until 2023-10-10, as long as your legacy support contract remains active. However, support for these binaries is no longer included in the Rebex Support Contract.

Only the UI-less classes are supported on this platform. See mobile features page for details.

Internet RFC specifications 

Rebex SSH Shell supports SSH2 protocol and implements the following specifications:

Rebex SSH Shell supports Telnet over TLS and implements the following specifications:

Other RFCs:

SSH1 is not supported - it is no longer considered secure and has been considered deprecated more than 15 years ago.

Please note that some non-essential features might not be supported. Let us know if you need to add anything.

FIPS 140-2 mode 

Rebex SSH Shell can operate in a FIPS 140-2 compliant mode. When enabled, only FIPS-approved cryptographic modules from MS CryptoAPI are used. FIPS mode is activated automatically when Windows is running in FIPS mode. To switch on the FIPS mode manually, set
Rebex.Security.Cryptography.CryptoHelper.UseFipsAlgorithmsOnly to true.

Proxy servers 

  • SOCKS4
  • SOCKS4a (Socks4 with domain name resolving)
  • SOCKS5
  • HTTP proxies with CONNECT method support
  • Tunneling through SSH servers

Learn how to use proxy servers in Rebex SSH Shell.

Cryptographic algorithms 

  • RSA
  • Ed25519
  • ECDSA
  • DSA (legacy)
  • Diffie-Hellman key exchange
  • Elliptic curve Diffie-Hellman key exchange (ECDH)
  • AES
  • AES/GCM
  • ChaCha20/Poly1305
  • Tripple DES
  • Twofish
  • DES (legacy)
  • Blowfish (legacy)
  • ArcFour (compatible with RC4, legacy)
  • ArcTwo (compatible with RC2, legacy)
  • SHA-2 (SHA-256, SHA-384, SHA-512)
  • SHA-1
  • MD5 (legacy)
  • MD4 (legacy)

Learn more about SSH security settings.

Private key formats 

  • PKCS #8 keys
  • PuTTY .ppk keys
  • OpenSSH/OpenSSL (SSLeay) keys
  • Keys on smart cards
  • Certificate-based keys

Learn more about private keys in Rebex SSH Shell.

Scripting platforms 

Rebex SSH Shell is designed primary for use in .NET framework applications. However, it can be used in several other scripting and hosting environments:

  • Microsoft SQL Server SSIS packages
  • Microsoft SQL Server SQL CLR stored procedures
  • Microsoft PowerShell scripts

See how to use Rebex SSH Shell in SSIS, SQL CLR and PowerShell environments.

Asynchronous operations 

Ssh object supports Task-based Asynchronous Pattern (TAP, introduced by .NET 4.0), which makes it possible to use the 'await' operator in .NET 4.5. Legacy IAsyncResult pattern (Begin/End methods) is supported as well.

Other technologies 

Back to feature list...