Photo credit: andrewasmith (Flickr)
Chances are you’ve arrived here by Google search and already know what SSH is. For those that don’t know, a brief introduction is in order.
Wikipedia describes SSH as:
Secure Shell or SSH is a network protocol that allows data to be exchanged using a secure channel between two networked devices.
Stock (read unjailbroken) iOS devices don’t have any SSH functionality installed upon them. Even jailbroken devices don’t as standard. You have to actively choose to install something like OpenSSH (from Cydia’s repositories) in order to get SSH capabilites on your iOS device. Those that choose to install it do so in order to enable direct access to their iDevice’s file system from a computer.
Once SSH is installed on an iOS device it will automatically start the SSH service each time the device is powered up (including after reboots). If the default password “alpine” isn’t changed to something else, devices are vulnerable to attack when connected to wireless networks . Many people use the SBSettings (Cydia) app to toggle SSH off when they aren’t actively using the service therefore mitigating their risk.
Disabling auto start of SSH
I’ve been asked a several times if there’s a more permanent way to stop SSH from auto enabling when (re)booting an iPhone / iPad / iPod touch. Sadly, I’ve yet to find one, but if you’re desperate to find a way to do so, I urge you to read these words before proceeding any further:
SSH switching on on phone startup is by design. If you were to ever mess your phone up and get stuck in the endless boot cycle or stuck on the Apple logo you’d have a window open to SSH in and remove the offending program. Without this feature you’d be out of luck and need an entire restore. I don’t think it’s possible to stop this behaviour, but like I said you really don’t want to as it’ll save you headache in the future.
OpenSSH uses no battery power and therefore you should leave it enabled. Yes, it might be a pain to remember to toggle SSH off each time you (re)boot if you’re going to leave the default password as is; the better solution is not to toggle it off at all, but to change the default password. Thankfully we’ve got a guide for just that right here: How to: Change the default SSH password of your iPhone, iPad or iPod touchApple, disable, iDevice, iPad, iPhone, iPod, OpenSSH, password, sbsettings, SSH, toggle, touch