Cory Bohon takes a look at the two best SSH clients for iOS, shows you how to use them, and offers his advice on which one you should choose.
When Secure Shell (SSH) clients first started appearing for the iOS platform, it was extremely exciting, because IT pros could easily SSH into their computers from anywhere and perform tasks, or log into their web servers and update software. As the operating system and clients have matured, there are two clear-cut winners in this space: Prompt and a new entrant called Cathode. Both clients have excellent features, but they target two difference audiences. Let's take a look at both of these pieces of software, and I'll explain which one I think is worth your hard-earned money.
Prompt has been around for a few years and is built by the award-winning OS X software developers Panic, Inc. This no-nonsense application costs $7.00 (USD) and lets you SSH (or use unencrypted Telnet) into your systems while you're on the go. It works over Wi-Fi and cellular connections to provide easy access anywhere through SSH.
However, the software does trade aesthetics over functionality. You can open an SSH connection using either SSH credentials (username or password) or SSH keys that are synced over using iTunes. Unfortunately, the keys cannot be pasted directly into the application and must be synced over to the device.
To establish an SSH connection inside of Prompt, first download the application from the iTunes App Store, then launch it. You'll be presented with your connection list after first launching the app. Follow these instructions to begin:
- Tap the plus sign [+] in the top bar
- In this view (Figure A), enter the SSH host and the port (the default is 22 unless you're using a non-standard port number to connect with); then enter your username and password (or tap the key icon to import your SSH keys)
- Tap the Connect button
Connecting to a server is easy, but if you're using SSH keys, be sure to sync them over beforehand.
As an added security measure, you can leave the password field blank in order to be prompted each time you connect to the host. Once you're connected, you'll see the Terminal appear. You can begin typing, and press the return key to submit the command. Above the keyboard, function and other handy keys are available. The keys in the white spaces are assignable. To assign a key, simply tap and hold a key, then press a key on the iOS keyboard to assign it to the hot key location (Figure B).
Easily assign keys to the white buttons by tapping and holding the button, then press a key on the iOS keyboard to take its place.
To disconnect from the server or select another server to connect with simultaneously, simply press the small cloud button. This will take you back to your server listing (Figure C). Servers that currently have a connection are listed with an eject button beside them. Tapping this eject button will close the connection with the server, while tapping another server will open a simultaneous connection.
Open connections are designated by the eject button that's used to close the connection to the host.
The pros of Prompt: It has a passcode lock for added security, supports Telnet, has VT100 capabilities, and provides agent forwarding.
The cons of Prompt: SSH keys must be synced and cannot be pasted into the app.
Cathode is a relatively new entrant by the developer Secret Geometry, and it costs $4.99 (USD). This application on iOS is a port of its OS X counterpart. On OS X, Cathode is an alternative to the Terminal. Like its OS X counterpart, it brings a flair for the past with its real-life 1980s Terminal visualizations. This app doesn't just have a cool factor though -- it's got the features to make any power user happy.
To establish an SSH connection with Cathode, you'll follow these steps after downloading and launching the application for the first time:
- Tap the plus sign [+] in the upper right-hand corner of the screen
- Tap the Untitled Bookmark that's created
- Enter the Title, Server, Port, User, and Password (Figure D)
- If you're using an SSH key, you can tap the none key and paste in your key from the clipboard, or you can sync it over through iTunes
- When your information has been entered, the New Session button will light up in a green color; tap it to begin a new session with the host
Creating an SSH connection with Cathode couldn't be easier. Just enter your credentials.
Once a session has been established with the server, you'll see the Terminal being emulated to look like it was from the 1980s, with a realistic CRT style reflection and font. Cathode really is beautiful to behold. Swipe down from the top of the screen to get access to the toolbar, which will let you hide the keyboard for optimum viewing when long commands are running (Figure E).
Cathode gives old-style Terminal visual appeal by creating a realistic CRT display.
To open a new connection or close the current connection, swipe back when in the Terminal view to get to the host detail view. Here, you can tap New Session to start a new session, or you can see the current running sessions for the same host. This is a pretty nifty feature of Cathode, because you can start multiple sessions for the same host and see the time that you've been connected (Figure F). To disconnect from a current session, swipe from right to left on the session that's currently connected or tap the Logout button in the navigation bar.
Create a New Session or close an existing one from the host detail view.
The pros of Cathode: It offers multiple concurrent sessions, detects nearby computers using Bonjour, paste keys with the clipboard, and has the ability to hide the iPhone keyboard.
The cons of Cathode: Text in the UI can be a bit hard to read when items scroll by quickly.
The bottom line
Both applications are great -- they provide connectivity and features that would make any modern day SSH user happy. But, for the price, I prefer what Cathode has to offer. It not only has the eye candy of using a Terminal from the 80s, but it also provides great features like the ability to establish multiple SSH sessions with the same machine, perform multiple user-specifiable tweaks to the user interface, and add your SSH keys without having to deal with iTunes syncing.
Do you use one of these SSH clients, or is there another one that you prefer? Let us know in the comments below.