iPhone SSH clients reviewed: iSSH, pTerm, and TouchTerm
SSH is the de facto way to establish a secure connection with a command line interface. It is an essential too for people who regularly manage Unix servers, networking gear, and a variety of other devices.
There are now three SSH clients that will work on any iPhone or iPod Touch with access to the iPhone App Store. It is true that iPhone SSH clients have been available early on for jailbroken iPhones, but the new clients are available on non-jailbroken iPhones.
Currently, there is no clear winner as each SSH client has its own tradeoffs and none are ideal. Since they are all likely to be revised quickly, if you absolutely need one right now, buy whichever one has the functionality you need. These SSH clients would all be maddening for long term use, but have great potential for emergency fixes, monitoring, and just running a few commands without needing access to a computer and a network.
The developers of each of these SSH clients have submitted updates that will be available as soon as they go through the App Store approval process, most likely in the next week or two. The good thing is that each of the apps is inexpensive and show promise. All three developers seem responsive. I’ll write an updated post after the updates for all three apps (and if there are newcomers) are released.
I used a recent version OpenSSH sshd running on FreeBSD and on Linux for testing.
Some commonalities across clients:
- All worked in both portrait and landscape mode
- All support a default 80x24 terminal in portrait mode
- All supported saving at least the hostname and nickname for future session reuse
- All worked with color ls
- I was able to bring up and use (to some extent) Pine and Emacs on each
- Each client allowed access to the built in iPhone keyboard that supports most meta characters you might need including tilde, pipe, brackets, angle brackets, ampersands, and asterisks.
- None of the clients supported an alt key, meta key, or an explicit break key.
- No esc key, but can use Ctrl-[
- All will work on iPhone/iPod Touch with access to the App Store and 2.0 firmware or higher
- All with work with Wi-Fi and EDGE/3G(HSDPA)
- None of the clients supported host-based public key authentication, ssh-agent, or port forwarding.
Version tested: 1.0
I found iSSH to be the nicest to work with overall for the current crop. It edged out the others because of the widest terminal emulation support and its use of the touch screen for arrow keys, which I found to make a much better user experience especially with Pine and Emacs. Another nice touch swiping up (up arrow) would allow you to scroll back through your command history. iSSH is based off the open source PuTTY client like pTerm.
The account screen includes fields for Description, host, login (username), and an optional command to run on login. The password is requested after each connect.
iSSH the Good
- Widest range of terminal emulation support: VT100, VT102, VT220, ANSI, xterm, and xterm-color
- Nice use of the touchscreen to emulate arrow keys and to handle scrollback without scrollbars
- Keyboard allows for Ctrl, shift, Function keys, the tab key worked and allowed for command completion
- Developer seems responsive. Has a support forum on Google Groups
iSSH the Bad
- No alt, meta, or escape keys although Ctrl-[ worked in place of esc.
- Does not show a session key fingerprint. It’s unclear if it actually caches the session key or not.
- No way to delete a session you have created
- Canceling an SSH session is slow
- Supports screen rotation, but the screen rotation causes existing text on the screen to be covered up.
- Finding the correct position on the screen to delete or edit existing sessions is difficult
- No online manual
- No support for non-default SSH ports
- Was not smart enough to know when the terminal session ended, you have to hit the exit button
- Has an exit session button, but it can take a long time to quite an existing session
- When adding a configuration the first character of each entry defaulted to having the caps lock on.
by: Instant Cocoa (Eric Maland)
Version tested: 1.1
pTerm was the second official iPhone SSH client out the door. The client supports SSH, Telnet, and raw socket (TCP) connections with Xterm terminal emulation. Like iSSH, pTerm is also based off of the PuTTY code base.
When you create a new account in the client, it has fields for nickname, host and port, which means you have to put the username in each session.
Upon initial connect, presents key fingerprint and allows you to cache host keys. You can accept once or permanently as with standard desktop clients. I did not test what would happen if the host key changed and there does not seem to be a way to delete saved keys.
As with the other clients it support both portrait and landscape modes, you can double click to make keyboard appear and disappear.
Can pinch to zoom in and out although it was a bit difficult to find the right size sometimes. A few automatic settings might be nicer.
Color ls, Pine, and emacs worked, but lack of arrow keys was annoying and limited their utility.
pTerm the Good
- Has terminal emulation (only Xterm)
- Supports SSH as well as Telnet and raw sockets
- Shows key fingerprint on connect
- Can edit account information
- Supports pinching and zooming
- Supports scrolling to emulate larger screen area
pTerm the Bad
- Terminal emulation limited to Xterm
- Text did not automatically reflow around keyboards so you will likely have to scroll the text in order to see the command line if you want to type
- Only control key. No specific alt, meta, tab, arrow keys, page up, page down, break, or function keys
- No history buffer
- Does not remember session usernames
- Pinching and zooming seems a bit finicky
Version tested: 1.1.517
TouchTerm was the first official iPhone SSH client in the App Store. The client is based on OpenSSH and OpenSSL rather than putty like pTerm and iSSH. Currently TouchTerm is the most customizable. You can change screen colors (foreground, background, cursor) in addition to the font size.
Color ls, Pine, and emacs worked surprisingly, but lack of terminal emulation makes it far less practical.
TouchTerm the Good
- Can edit session information
- Can save session password
- Extensive online manual and release notes
- Button to show command history
- Soft keys for clear, control, tab, esc.
- Supports pinch and zoom
- Supports scrolling to emulate larger screen area
TouchTerm the Bad
- Only supports saving one session
- No exit button, so you have to exit and renter the application to start a new session.
- No support for alt/meta, or function keys.
- Pinch and zoom was a little finicky
- No preset font sizes
- IT Security
- Internet Privacy
- Messaging Security
- Email Security
- Mobile Security
- Internet Security
- Cloud Security
- Information Security
- Internet Privacy
- Privacy Protection
- Email Encryption
- Data Breach Protection
- Spam Filtering
- Virus Protection
- Botnet Detection
- Internet Worm Protection
- Social Business
- Managed IT Services
- Mobile Devices
- Disaster Management
- 1 of 227