At first, I was satisified to have iPhone access without connecting via USB cable. All I had to do was fire up a terminal, type “iphone-mount” and enter the phone’s root password…twice. Unmount…type iphone-umount, enter root’s password, and that’s it. I could have changed it to passwordless when I first set it up, but I wasn’t quite certain what I was doing, so I didn’t want to inadvertently give unauthorised access to the root of my phone, and I left it at the default of entering passwords. After a while, though, I got past the, “Oh, this is cool!” of wireless access in the first place, and wanted wireless access without having to type anything. I’m especially lazy at getting photos off the phone; it always seems like too much trouble to type, then copy, then type some more. Yeah, lazy, but I knew there was a way to enable passwordless access, and it turned out to be much, much simpler than I’d thought!

From the beginning:

Install openSSH, change the password to something more secure than the default “alpine”. No joke–that’s the goddamned default password for root access to any iPhone 1.1 or newer firmware. Better than “dottie”, I suppose. Anyway, after that, install the package ipod-convenience from the repos. It’ll ask for the IP of the phone, and either create the mountpoint /media/ipod, or you can create your own (I made it /media/iphone just in case I ever want to mount my old iPod, since that’s its default mountpoint). That will allow you to use iphone-mount and iphone-umount from a terminal, asking for passwords.

Passwordless access is pretty simple, using a key-based login. With the phone not mounted (but can’t do my usual “forget to temporarily set the auto-lock to ‘never'”)

$ ssh-keygen -t rsa -f ~/.ssh/iphone_identity -N “”

That will either create the .ssh directory and place three files in it (iphone_identity, iphone_identity.pub, and known_hosts. The one called iphone_identy is your private keyfile, and iphone_identity.pub is your public one). If the directory already exists, as mine did, it didn’t add known_hosts because I had one already, but did add the other two.

Now, copy the public key to the phone. Mine didn’t ask whether I wanted to accept because my computers and phone already “know” one another (heh), but if it does, you have to accept.

ssh-copy-id -i ~/.ssh/iphone_identity.pub root@(IP of the phone)

Now log into the phone, and you shouldn’t be asked for a password. If you are, you’ve got the wrong SSH, but I didn’t; the one from Cydia would appear to be correct.

ssh root@(IP of the phone)

So…yay. L. had sent me a link to a bunch of icons a while ago, and of course I snagged the iPhone ones (hadn’t a use for them then, but one never knows), so I even made it pretty. Right now, I can’t mount or unmount from Nautilus like I can my partitions, but that’s going to be an ownership/permissions issue, which I don’t have time to fuss with ATM, and for now, I’m content. For now… 😀

Hmmm…wait a minute. If I don’t need to enter a password to mount/unmount anymore, that should mean I can access the phone’s music from Rhythmbox without mounting first; I can just tell Rhythmbox to mount it for me. Interesting, but no time now!