Using an old BlackBerry as a portable SSH (or Telnet) terminal
2020-08-15
EDIT 2022-07-22: With the shutdown (or imminent shutdown) of the 2G/EDGE/3G network in the US I'm now switching to a BlackBerry Q10, which supports LTE and is able to run ConnectBot.
EDIT 2022-08-03: Well, that didn't last long. It seems T-Mobile now actually enforces VoLTE support, and the Q10 is unable to connect.
You used to see BlackBerries everywhere. Sites such as CrackBerry detailed sightings of celebrities using them constantly. Nowadays, not so much. However, I believe they still have some usecases today. One of these is as a portable terminal. Here's why one might want to use one of these devices as a terminal:
- Nice built-in physical keyboard
- Long standby battery life
- Easily swappable batteries (see my Altoids tin filled with batteries below!)
- The 7290 I'm using reportedly has a 216 hour standby battery life, and unlike modern phones this number seems to hold up relatively well even with network enabled
- Affordable
- You can easily find these devices for ~$20 on eBay
- You can get a 100 MB data plan from US Mobile for $2/mo. not including fees (closer to $5/mo. with fees)
- Extremely portable
- Much smaller than other devices one might use for this kind of thing
- OpenPandora
- GPD Pocket
- etc.
- Much shorter than most modern phones
- Cellular connection means you don't need a wireless router around
- Much smaller than other devices one might use for this kind of thing
- Decently rugged
- Not nearly as prone to failure after drops as modern smartphones (in
my experience)
- The screen is recessed, so it doesn't take the brunt of falls
- Not nearly as prone to failure after drops as modern smartphones (in
my experience)
- Easy to setup
- You can simply browse to http://xk72.com/wap on the phone itself to install an SSH client (MidpSSH) over the air
I've been using a BlackBerry 7290 on the US Mobile network, which still supports GSM for now. It's notable that the SSH negotiation is decently slow (~30-45 seconds), but is decently usable after connected (things are still a little sluggish however). Furthermore, I had to reenable the weak DSA public key algorithm as well. This doesn't bother me so much as I basically have a middleman server that allows this weak standard that I talk to everything else through rather than enabling it on every server.
To make things easier on myself, I wrote an interactive script that is sourced by
.bashrc
upon logging in that asks what I actually want to
connect to and then does so for me.
In the future, I might move to a BlackBerry 8700(c/g) as they support EDGE (much faster network speed), have much faster CPUs, and a higher standby time. I am not sure what I am going to do in the long run, as 2G networks in the US will probably all be shut down by the end of the year with 3G soon to follow. I guess I can just enjoy it while it lasts.
Here are the lines I added to my sshd
config for the
BlackBerry to be able to connect:
HostKeyAlgorithms +ssh-dss
PubkeyAcceptedKeyTypes +ssh-dss
KexAlgorithms +diffie-hellman-group1-sha1
Ciphers +3des-cbc
And here are some pictures!
Connected and at the interactive prompt
top
output from one server
htop
output from another server
Spare batteries kept in an Altoids tin