Comparison of SSH clients
An SSH client is a software program which uses the secure shell protocol to connect to a remote computer. This article compares a selection of notable clients.
General[]
Name | Developer | Status | First release | Latest release | Current version | Based on | License | Source available |
---|---|---|---|---|---|---|---|---|
AbsoluteTelnet | Celestial Software (Brian Pence) | Active | 1996 | 2016-10-12 | 10.16[1] | Proprietary | No | |
Bitvise SSH Client | Bitvise Limited | Active | 2001 | 2020-05-22 | 8.43[2] | Proprietary | No | |
ConnectBot | Kenny Root / Jeffrey Sharkey | Active | 2007-11 | 2019-11-12 | 1.9.6 [3] | Trilead SSH-2 for Java | Apache-2.0 | Yes |
Dropbear | Matt Johnston | Active | 2003-04-06 | 2020-06-26 | 2020.80 | MIT | Yes | |
eSSH Client | Ecode Software | Inactive | 2002-07 | Proprietary | No | |||
lsh | Niels Möller | Active | 1999-05-23 | 2013-06-26 | 2.1 | GPL-2.0-or-later | Yes | |
OpenSSH (OpenBSD Secure Shell) | The OpenBSD project | Active | 1999-12-01 | 2021-03-03 | 8.5[4] | ossh | BSD | Yes |
PuTTY | Simon Tatham | Active | 1999-01-22 | 2021-07-17 | 0.76[5] | MIT | Yes | |
SecureCRT | VanDyke Software | Active | 1998-06 | 2020-02-11 | 8.7.0[6] | Proprietary | No | |
Tera Term | TeraTerm Project | Active | 2004 | 2018-08-31 | 4.100[7] | Tera Term Pro 2.3 (1994–1998) | BSD | Yes |
TN3270 Plus | SDI USA, Inc. | Active | 2006 | Proprietary | No | |||
TtyEmulator | FCS Software | Active | 2002-05 | 2020-01-05 | 4.4.6.1[8] | Proprietary | No | |
wolfSSH | wolfSSL | Active | 2016-07-20 | 2021-11-04 | 1.4.8 | wolfCrypt | GPL-3.0-or-later (or proprietary) | Yes |
ZOC Terminal | EmTec, Innovative Software | Active | 1995-07-01 | 2022-01-19 | 8.03.4[9] | Proprietary | No |
Platform[]
The operating systems or virtual machines the SSH clients are designed to run on without emulation include several possibilities:
- Partial indicates that while it works, the client lacks important functionality compared to versions for other OSs but may still be under development.
The list is not exhaustive, but rather reflects the most common platforms today.
Name | macOS | Windows | Cygwin | BSD | Linux | Solaris | Java | OpenVMS | z/OS | AIX | HP-UX | iOS | Android | Maemo | Windows Phone |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
AbsoluteTelnet | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | ? |
Bitvise SSH Client | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | No |
ConnectBot | No | No | No | No | No | No | No | No | No | No | No | No | Yes | No | No |
Dropbear | Yes | No | Yes | Yes | Yes | Yes | ? | ? | ? | Yes | Yes | Yes[Note 1] | No | Yes | ? |
eSSH Client | Yes | Yes | ? | Yes | Yes | Yes | ? | ? | ? | No | No | No | No | No | ? |
lsh | Yes | No | No | Partial[Note 2] | Yes | Yes | ? | ? | ? | No | No | No | No | No | ? |
OpenSSH (OpenBSD Secure Shell) | Included | Included[Note 3] | Included | Included | Included[Note 4] | Yes | ? | Yes | Yes | Yes | Yes | Yes[Note 1] | Yes | Yes | ? |
PuTTY | Partial | Yes | ? | Yes | Yes | Yes | No | ? | ? | No | No | No | No | No | Beta |
SecureCRT | Yes | Yes | No | No | Yes | No | No | No | No | No | No | Yes | No | No | ? |
SmartFTP | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | ? |
Tera Term | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | ? |
TN3270 Plus | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | ? |
TtyEmulator | No | Yes | No | No | No | No | No | No | No | No | No | No | No | No | ? |
WinSCP | No | Yes | No | No | No | No | No | No | No | No | No | Yes[Note 1] | No | No | ? |
wolfSSH | Yes | Yes | Yes | Yes | Yes | Yes | No | No | ? | ? | No | No | No | No | No |
ZOC | Yes | Yes | No | No | No | No | No | No | No | No | No | No | No | No | ? |
Name | OS X | Windows | Cygwin | BSD | Linux | Solaris | Java | OpenVMS | z/OS | AIX | HP-UX | iOS | Android | Maemo | Windows Phone |
- ^ a b c Only for jailbroken devices.
- ^ lsh supports only one BSD platform officially, FreeBSD.
- ^ Included and enabled by default since windows 10 version 1803. Win32-OpenSSH can be installed as an optional component in the Windows versiones before Windows 10 version 1803 to Windows 10 version 1709. Portable version can be download from Win32-OpenSSH for other versions.
- ^ The majority of Linux distributions have OpenSSH as an official package, but a few do not.
Technical[]
Name | User interface | SSH1 (insecure) |
SSH2 | Additional protocols | Port forwarding and Tunneling | Session multiplexing [Note 1] |
Kerberos | IPv6 | Terminal | SFTP/SCP | Proxy client[Note 2] | |||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
TELNET | rlogin | Port forwarding |
SOCKS [Note 3] |
VPN [Note 4] | ||||||||||
AbsoluteTelnet | GUI (multi-session, single-window) |
yes | Yes | Yes | No | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | SOCKS 4, 5; HTTP |
Bitvise SSH Client | GUI or command line | no | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | SOCKS 4, 5 |
Dropbear | command line | no | Yes | No | No | Yes | No | No | No | No | Yes | Yes | Yes | ? |
lsh | command line | no | Yes | Yes | No | Yes | Yes | No | Yes | No | Yes | Yes | Yes | ? |
OpenSSH (OpenBSD Secure Shell) | command line | no[Note 5] | Yes | No | No | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ProxyCommand |
PuTTY | GUI or command line | yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes[Note 6] | Yes | Yes | Yes[Note 7] | SOCKS 4, 5; HTTP; Telnet; Local |
SecureCRT | GUI | yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | SOCKS 4, 5; HTTP; Telnet; Generic |
SmartFTP | GUI (multi-session, single-window) |
no | Yes | Yes | No | No | No | No | No | Yes | Yes | Yes | Yes | SOCKS 4, 5; HTTP |
Tera Term | GUI | yes | Yes | Yes | No | Yes | No | No | No | No | Yes | Yes | SCP | SOCKS 4, 5; HTTP; Telnet |
TN3270 Plus | GUI | yes | Yes | Yes | No | No | Yes | No | Yes | No | Yes | Yes | No | SOCKS 4 |
TtyEmulator | GUI or command line | yes | Yes | Yes | Yes | Yes | Yes | No | Yes | No | No | Yes | No | SOCKS 4,4a, 5; HTTP Local |
WinSCP [Note 8] | GUI or command line | yes | Yes | No | No | limited[Note 9] | No | No | No | Yes | Yes | simple | Yes | SOCKS 4, 5; HTTP; Telnet; Local |
wolfSSH | command line | no | Yes | No | No | Yes | No | No | No | No | Yes | simple | Yes | ? |
ZOC | TDI or command line | yes | Yes | Yes | Yes | Yes | Yes | No | No | Yes | Yes | Yes | SCP and SFTP through terminal[Note 10] | SOCKS 4; 5; HTTP; Jumpserver |
Name | User interface | SSH1 (insecure) |
SSH2 | Additional protocols | Tunneling | Session multiplexing [Note 1] |
Kerberos | IPv6 | Terminal | SFTP/SCP | Proxy client[Note 2] | |||
TELNET | rlogin | Port forwarding |
SOCKS [Note 3] |
VPN [Note 4] |
- ^ a b Accelerating OpenSSH connections with ControlMaster.
- ^ a b Can the SSH client connect itself through a proxy? This is distinct from offering a SOCKS proxy or port forwarding.
- ^ a b The ability for the SSH client to perform dynamic port forwarding by acting as a local SOCKS proxy.
- ^ a b The ability for the SSH client to establish a VPN, e.g. using TUN/TAP.
- ^ OpenSSH deleted SSH protocol version 1 support in version 7.6 (2017-10-03)
- ^ The version 0.63 supports GSSAPI. Successfully tested on Win 8 using Active Directory
- ^ The PuTTY developers provide SCP and SFTP functionality as binaries for separate download.
- ^ Winscp bundles a number of software components including putty. [1].
- ^ WinSCP connection tunneling.
- ^ SCP and SFTP according to ZOC features page.
Features[]
Name | Keyboard mapping | Session tabs | ZMODEM transfers | Find text in buffer | Mouse input support[Note 1] | Unicode support | URL hyperlinking | Public key authentication | Smart card support | Hardware encryption | FIPS 140-2 validation | Scripting | Shared Database | Auto-reconnect | CA Certificates |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
AbsoluteTelnet | full | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ? | Yes | Yes | ? | ? | ? |
Bitvise SSH Client | ? | No | No | No | Yes | Yes | No | Yes | No | ? | Partial | Yes | No | Yes | No |
OpenSSH (OpenBSD Secure Shell) | ? | No | No | ? | Yes[Note 2] | Yes | not native[Note 3] | Yes | Yes | Yes | Partial[Note 4] | No | No | ? | Yes[Note 5] |
PuTTY | No | No[Note 6] | No | No | Yes | Yes | No[Note 7] | Yes | No[Note 8] | Yes | No | No | No | No | No[Note 9] |
SecureCRT | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | No | ? | ? |
SmartFTP | Partial | Yes | No | Yes | Yes | Yes | Yes | Yes | Yes | AES-NI | Yes | No | ? | ? | ? |
Tera Term | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | No | No | No | Yes | No | ? | ? |
TN3270 Plus | Yes | Yes | No | No | No | No | Yes | Yes | No | No | No | Yes | ? | ? | ? |
TtyEmulator | No | No | No | Yes | Yes | No | Yes | Yes | No | No | No | Yes | ? | ? | ? |
wolfSSH | No | No | No | No | No | Yes | No | Yes | No | Yes | Yes | No | No | ? | Yes |
ZOC | full | Yes | Yes | Alt+F | Yes | UTF-8 | Yes | Yes | Yes | No | No | Yes | ? | ? | ? |
- ^ The ability to transmit mouse input to text mode applications such as Midnight Commander
- ^ Only when the terminal itself supports mouse input. Most graphical ones do, e.g. xterm.
- ^ No native URL highlighting; however most graphical consoles support URL highlighting.
- ^ Validated when running OpenSSH 2.1 on Red Hat Enterprise Linux 6.2 in FIPS mode or when running OpenSSH 1.1 on Red Hat Enterprise Linux 5 in FIPS mode
- ^ OpenSSH supports the minimal certificate format since v5.4. "OpenSSH Release Notes: 5.4". OpenBSD Project. 2010-03-08. Retrieved 2021-08-30.
- ^ PuTTY does not support tabs directly, but many wrappers are available that do (e.g. PuTTY Connection Manager, SuperPuTTY, MTPuTTY, PuTTYTabManager, mRemoteNG, WinSSHTerm, PuTTY Manager, PuttyTabs and TWSC (Terminal Window ShortCuts)).
- ^ PuTTY does not support hyperlinks, but some forks of PuTTY do (e.g. PuTTY Tray and KiTTY).
- ^ PuTTY does not support smart cards, but is supported in puttywincrypt, PuTTY-CAC, and in Smartcard Authentication – Secure & Easy putty version.
- ^ Putty v71.0 does not support OpenSSH certificates. See Ben Harris' 2016-04-21 wish. [2] and [3]
Authentication key algorithms[]
This table lists standard authentication key algorithms implemented by SSH clients. Some SSH implementations include both server and client implementations and support custom non-standard authentication algorithms not listed in this table.
Name | ssh-dss[AuthNote 1] | ssh-rsa | RSA with SHA-2 | ECDSA with SHA-2 | Security keys | |||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
rsa-sha2-256 | rsa-sha2-512 | ecdsa-sha2-nistp256 | ecdsa-sha2-nistp384 | ecdsa-sha2-nistp521 | ssh-ed25519 | sk-ecdsa-sha2-nistp256 | sk-ecdsa-sha2-nistp256-cert-v01 | sk-ssh-ed25519 | sk-ssh-ed25519-cert-v01 | |||
AbsoluteTelnet | ? | ? | ? | ? | ? | ? | ? | ? | ||||
Bitvise SSH Client | ? | ? | ? | ? | ? | ? | ? | ? | ||||
Dropbear | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes | ||||
lsh | ? | ? | ? | ? | ? | ? | ? | ? | ||||
OpenSSH (OpenBSD Secure Shell) | Yes[AuthNote 2] | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
PuTTY | ? | Yes | ? | ? | Yes | ? | ? | ? | ||||
SecureCRT | ? | ? | ? | ? | ? | ? | ? | ? | ||||
SmartFTP | ? | ? | ? | ? | ? | ? | ? | ? | ||||
Tera Term | ? | ? | ? | ? | ? | ? | ? | ? | ||||
TN3270 Plus | ? | ? | ? | ? | ? | ? | ? | ? | ||||
TtyEmulator | ? | ? | ? | ? | ? | ? | ? | ? | ||||
WinSCP | No | Yes | Yes | Yes | Yes | Yes | Yes | ? | ||||
wolfSSH | No | Yes | Yes | Yes | Yes | Yes | Yes | ? | ||||
ZOC | ? | ? | ? | ? | ? | ? | ? | ? | ||||
Name | ssh-dss | ssh-rsa | rsa-sha2-256 | rsa-sha2-512 | ecdsa-sha2-nistp256 | ecdsa-sha2-nistp384 | ecdsa-sha2-nistp521 | ssh-ed25519 | sk-ecdsa-sha2-nistp256 | sk-ecdsa-sha2-nistp256-cert-v01 | sk-ssh-ed25519 | sk-ssh-ed25519-cert-v01 |
RSA with SHA-2 | ECDSA with SHA-2 | Security keys |
- ^
ssh-dss
is based on Digital Signature Algorithm which is sensitive to entropy, secrecy, and uniqueness of its random signature value. - ^ By default, disabled at run-time since OpenSSH 7.0 released in 2015.
See also[]
References[]
- ^ "AbsoluteTelnet/SSH Version History (9.53) | AbsoluteTelnet SSH client". Archived from the original on 2013-04-23.
- ^ "Bitvise SSH Client Version History | Bitvise". bitvise.com. Retrieved 2020-06-19.
- ^ https://github.com/connectbot/connectbot
- ^ "OpenSSH 8.5 Release Notes".
- ^ "PuTTY Change Log".
- ^ "SecureCRT Release History".
- ^ "Download Files List – Tera Term – OSDN".
- ^ "What's new".
- ^ "ZOC version number and version history".
Categories:
- Cryptographic software
- Internet Protocol based network software
- Network software comparisons
- Secure Shell