Secure Shell, or SSH is a network protocol which allows for remote control of network services on an unsecured network. SSH provides many functions, notably for remote network administration. SSH is a handy tool for casual Linux users and home userver users as well. While there are loads of SSH clients for Linux, Windows, and macOS PCs, mobile devices benefit from SSH clients as well. We have previously covered the list of best SSH Clients for Windows. In this post, we will learn all about the best SSH clients for Android! [Read: Introduction to SSH and htop for Linux server monitoring from commandline]
Table of Contents
What is SSH?
SSH, or Secure Shell, makes use of public-key cryptography for authentication of remote computers, thereby create a secure tunnel that prevents outsiders from sniffing the content being transmitted. Using SSH, authentication is possible through two primary means. One employs automatically generated public-private key combinations for encrypting a network connection, with a required password authentication for additional login. The other method uses manual generation of public-private key pairs. In this way it authenticates a connection for logging in sans password. [Read: 15 most used SSH commands for Raspberry Pi]
What can you do with SSH?
More importantly, what can you accomplish with SSH? Primarily, SSH is useful for server management (including home servers), network admin, and remote client maintenance. For instance, I use SSH to manage my ThinkServer TS140 Plex home server that's running headless. Since I don't have a monitor hooked up, to perform updates, reboots, and file transfers, I simply SSH into the server which is running Ubuntu, and update software and the underlying operating system (OS) via the command line. [Read: How to simplify SSH access by using SSH config file on remote server]
Similarly, SSH is ideal for managing devices like single-board computers (SBCs) like the Odroid XU4 and Raspberry Pi. I use SSH for updating my Raspberry Pi retro gaming and home theatre PC (HTPC) running RetroPie and Recalbox by SSHing into the Pi, and installing updates with the command line or editing configuration files. [Read: 15 most used SSH commands for Raspberry Pi – SSH for Raspberry Pi]
You may also transfer files with SSH. Though it's possible using a command line interface, a version of SSH called SFTP is better for such applications. SFTP, or SSH File Transfer Protocol, is a protocol which comes bundled with SSH and handles network connections in a simliar fashion. However, SFTP provides a graphical user interface (GUI) for file transfers which is much easier than a CLI-based file transfer which requires typing out paths to files and folders. [Read: Connecting to Ubuntu Server using SSH keys and PuTTY]
Why Use SSH on Android?
SSH on a PC makes sense, but why use Android SSH apps? As phones and tablets become more powerful, they're essentially reaching the point of competing with low-end to mid-range computers. Therefore, mobile devices serve as PC replacements. Often, I use my Samsung Galaxy Note 10.1 2014 Edition as a laptop when traveling. Since I have an Android secure shell client installed, I can use that to manage my various network-connected devices including my Plex server and Raspberry Pi devices. [Read: Install SSH server on Ubuntu Linux]
Best SSH clients for Android: Free Android SSH clients
There are tons of free Android SSH clients. Check out the best SSH clients for Android you can download!
1. JuiceSSH
Easily the best of the free Android SSH clients is JuiceSSH. It's pretty much the unanimous choice for SSH on Android, coming highly-touted by many forums. Additionally, searching for SSH on the Google Play store yields JuiceSSH among the first results.
Onboard, you'll find a full color terminal, popup keyboard with required shell characters, and external keyboard support. There's neat functionality such as the ability to use the volume keys for font size changes, add plugins, and even access Telent. Plus, you can access local Android terminals and pick from several themes. Among the various JuiceSSH themes, you'll find light, dark, Molokai, Solarized Dark, Solarized Light, and 80s hacker.
While it's free to use, JuiceSSH does boast a set of pro features. These are limited to a paid in-app upgrade. With JuiceSSH pro, you gain Amazon AWS and EC2 integration, automatic AES-256 encryption, and a widget for snappy access. There's also a team collaboration element for sharing connections, definitely a bonus for enterprise use, and distributed teams. Overall, JuiceSSH is one of the best SSH clients for Android that you can download.
2. Termius
Check out Termius, one of the greatest Android SSH apps available. You'll find SSH, Mosh, and Telnet support, a local terminal with bash, port forwarding for remote, local, and dynamic clients, automatic operating system recognition for the likes of Fedora, Ubuntu, and Raspberry Pi OSes, and more. Whereas many free Android SSH clients provide a solid featureset but display ads, the free iteration of Termius lacks paid banners and ads.
Still, there's an optional paid version which allows for SFTP support, fingerprint protection, a home screen widget, and AWS EC2 integration. For a spectacular, easy to use app, Termius is an excellent Android secure shell client option.
3. ConnectBot
One of the top Android SSH apps, ConnectBot delivers a well-rounded Android secure shell client. With it, you can manage multiple concurrent SSH sessions, make secure tunnels, as well as copy and paste between apps on your Android device. As users note, CTRL functions work and post-login automation makes ConnectBot one of the best SSH clients for Android devices. Moreover, unlike many of the other SSH on Android choices, ConnectBot lacks a paid upgrade. Therefore, it's completely free to use for all functionality.
4. Termux
In Termux, you gain a nifty SSH on Android application. A useful terminal app, Termux allow for functionality like editing files with Vim and Nano, using bash, and even developing in C using clang. Thus, Termux is arguably one of the most versatile free Android SSH clients you can download.
5. MobileSSH
PuTTY is a top SSH client for computers. MobileSSH is a PuTTy and OpenSSH-based Android secure shell client. Since it's derived from popular SSH clients, MobileSSh is in the list of best SSH clients for Android. Complete with an intuitive interface, lots of settings, and regular updates make MobileSSH a fantastic choice among the best SSH clients for Android. Although it's a barebones application, MobileSSH delivers power in its simplicity for a top-notch SSH Android app. [Read: 10 best PuTTY clients for Windows]
6. SSHDroid
SSHDroid is an excellent SSH client for Android. It allows terminal connections as well as SFTP, Cyberduck, and WinSCP functionality. Like JuiceSSH and Termux, SSHDroid comes with a free version and paid upgrade. Pro features include homescreen and lockscreen widgets, a Wi-Fi autostart whitelist, shared-key authentication, and ad removal. However, despite its pro iteration, SSHDroid maintains one of the greatest free Android SSH clients on the market. Since SSHDroid offers SFTP in addition to SSH, it's a neat choice for file transfers, and similarly for file or media server management.
7. SSH/SFTP/FTP/Telenet Advanced Client - Admin Hands
A comprehensive SSH on Android app, SSH/SFTP/FTP/Telenet Advanced Client Admin Hands delivers a commendable array of connection options. These include SSH, Telenet, and SFTP. There's batch mode, a syntax highlighter, and a built-in text editor. All of these make it one of the best SSH clients for Android.
8. AndFTP
Another of the top Android SSH apps, the appropriately-named AndFTP offers SSH, FTP, FTPS, SFTP, and SCP options. It's a multi-faceted program with lots of choices for managing SSH connections to a variety of devices.
9. Putty SSH
PuTTy is one of the best desktop SSH clients. Though it's not maintained by the same develpers, Putty Connectbot is an awesome SSH client for Android devices. Intuitive with an exellent layout, it's free yet powerful.
10. OrangeSSH Client
With its full color terminal, UTF-8 character support, and IPv6 compatibility, OrangeSSH is a wonderful Android secure shell client. With a small install file, and great connectivity with stock keyboard apps, it's quick and robust.
Final thoughts on Android SSH apps
A brief search for best SSH clients for Android yields loads of results. Though there are many Android SSH clients, only certain free Android SSH clients are completely free. Many solutions for accessing SSH on Android offer paid upgrades and operate on a freemium model. With this configuration, you'll gain access to Android secure shell client access, with a small one-time or recurring payment adding features and removing limitations. For instance, you might gain access to SFTP in addition to SSH with the paid iteration of an Android secure shell client. Overall, free Android SSH clients are fantastic for providing SSH on Android. Most Android SSH apps are completely usable sans payment. You'll mainly want to pay if you prefer premium features such as group collaboration, ad removal, and SFTP on top of purely SSH.
Your turn: Which best SSH clients for Android do you suggest?