My Holy Grail Of iPhone Apps Arrives: pTerm
Just this week I was posing the question of where are all the (no-jailbreak-required) ssh/terminal apps for the iPhone? While not the best platform for such a tool (the keyboard would – and does, as you will see – eat up some serious real estate), the platform has enough processing power to handle such an app and there are definitely times when it is handy to get ultra-portable access to your systems.
As if they were listening for my request, Instant Cocoa released pTerm, which provides support for SSH, Telnet and taw TCP client connections from your iPhone. pTerm is based on PuTTY, one of the more stable & well-known ssh client suites (OS X users can grab that via some ports).
You start new sessions by choosing from the Connections panel:

To get an entry on that panel, you use a very basic configuration screen to enter a display name for the connection, the host (or IP address) and the port you wish to connect on:

For ssh connections, you will receive a warning about host keys that you should be familiar with if you’ve used ssh before (the developers presented this in a great way as it would have been much less iPhone-like to deal with this from within the terminal prompt):

The terminal sessions work in both landscape and portrait modes,


and the xterm emulation worked with “top” (which auto-updates) and “pine” (a terminal-based e-mail reader that does quite a bit of screen manipulation).


The Instant Cocoa devs understood the need for the CTRL key (yay!) and version 1.1 adds support for ESC as well (kinda useful if you choose to use “vi” in the session). Version 1.1 also fixes some instability issues and adds full-screen support (as you can see, the keyboard eats up the majority of the real-estate). They are working on allowing users to customize the terminal sizes/colors, adjust TCP settings, provide support for port forwarding and include ways to use more easily use terminal-specific keys.
Since pTerm is based on PuTTY, we may be able to expect to see significant feature enhancements. I would personally like to see the ability to use RSA/DSA keys and the ability to log sessions (which would require some way to get that log off the iPhone). It would also be great to keep multiple sessions open simultaneously (it’s in the works) and switch between them. Some folks might like the ability to cache credentials or at least the username associated with ssh sessions (not recommended, but it’s a personal-risk-decision one can make). For RAW socket connections, having a way to record and playback keystrokes or define a set of strings to paste into the session would be great for rapid testing of web/internet services.
For me, pTerm is definitely worth $4.99USD, especially if that covers major updates for a while. I’ve only tested it over EDGE, but it worked flawlessly, even with the latency.
If you use pTerm or have some feature requests for it, drop a note in the comments!





igor on August 8th, 2008 at 1:38 pm
there is also TouchTerm for $2.99
and both of these apps so buggy that i would wait for another month or two before buying them
Ben on August 8th, 2008 at 1:59 pm
I wish the TouchTerm team would get with the pTerm team. If TouchTerm had terminal emulation, and a connection manager I think we’d have a winner.
I’m just glad somebody is working on these.
johan on August 8th, 2008 at 2:14 pm
sell have to say that i hate appstore för ons bit thing the app that i want isnt available world wide and i live in sweden and cant get this app. I hate appstore för this!!!!
Eric Maland on August 8th, 2008 at 2:44 pm
@#3:
Actually, pTerm is just waiting for export approval from the US Government. It should be released outside the US and Canada in late August or early September. If you’d like to be notified when it’s available, just drop me an email at pterm%40instantcocoa.com.
Thanks!
Eric
Michael Moncur on August 8th, 2008 at 5:17 pm
There area three others: TouchTerm, already available, iSSH, coming soon, and one from Mochasoft I believe coming soon. So far, pTerm looks the best and I can’t wait to see version 1.1!
This was my holy grail app too. I’m glad it’s finally here.
Anders Hovmöller on August 8th, 2008 at 5:28 pm
I am amazed someone would port PuTTy. Once I needed to write some simple program that needed to talk a bit of SSH, and I naturally thought that basing it on the open source putty was a great idea. That idea died very quickly when it became clear that putty is really horrible spaghetti code that has some very very deep embedded windows code in random places.
Scott McMillin on August 8th, 2008 at 7:53 pm
Just purchased. I definitely need key support, but once that’s in, I’m all set. Looks great!
Felipe D. on August 8th, 2008 at 9:07 pm
By the way, I think there’s software that un-blurs screenshots. Best bet is to use a solid color rectangle, if you’re paranoid enough.
William Prothero on August 9th, 2008 at 12:40 pm
I just installed pTerm on my iTouch, software version 2.01. I couldn’t get it working. It wouldn’t connect and didn’t seem to allow me to edit connections.
idris on August 10th, 2008 at 7:37 am
I have pterm and it’s awesome! My only request is an ability to hide the keyboard so I can see more screen if I want. (there’s no way to make the keyboard semi-transparent, is there? ;)
dingo on August 10th, 2008 at 10:37 pm
just jailbreak the thing and run real openssh, damnit
Ted on August 11th, 2008 at 4:03 pm
I’m also having serious problems with it. Every time I launch it, it fails and takes me back to the home screen. Very disappointing. $4.99 for this?
Patrick on August 13th, 2008 at 10:14 am
Sounds like I need to dig in with pTerm a bit so I can take it off my list of “Apps with Potential” and move it to the “Favorite Apps” level: http://enterventure.com/blog/2008/08/10/iphone-app-store-review-part-deux/
redbrad0 on September 16th, 2008 at 4:24 pm
because of the speed of typing on the iphone, i would think if you could have your favorite commands preset so if i need to restart apache or mysql i could just click the favorite and it would run (or at least insert the text).