Tras ver cómo desde Applesfera nos comentaban "cómo acceder al iPhone o iPod Touch con Cyberduck":https://www.applesfera.com/2008/05/25-accede-al-contenido-de-tu-iphoneipod-touch-con-cyberduck, y después de que Alexliam escribiera un post sobre "cómo realizar dicha conexión desde Windows":https://www.genbeta.com/2008/05/26-accediendo-a-las-entranas-del-iphone-o-ipod-touch-desde-windows, ahora es el turno de Linux.
Veamos qué tenemos que hacer en el iPhone o iPod Touch (utilizando el Installer) para dejarlo listo para aceptar conexiones SSH: * Instalar los programas BSD Subsystem, OpenSSH y Community Sources. * Instalar BossPrefs para activar y desactivar fácilmente las conexiones vía SSH, más que nada por temas de seguridad.
Álex sugería instalar también Insomnia en el iPhone para que la conexión WiFi siga activa aunque el teléfono entre en modo reposo. Otra posibilidad es simplemente desactivar el bloqueo automático para que el terminal esté siempre activo, y la conexión wireless también. Esto se puede hacer desde Ajustes -> General -> Bloqueo Automático.
Desde BossPrefs hay que activar las conexiones SSH. La IP que tenemos asignada en la red wireless puede consultarse también desde ese programa o también desde Ajustes -> WiFi. Teniendo el ordenador en la misma red que el iPhone, como ya tenemos la IP y sabemos el nombre de usuario y contraseña, ya podemos conectarnos al sistema usando SSH. Normalmente la IP será algo como "192.168.1.X", aunque en mi caso es un poco más rara.
Antes de seguir quiero recordar que estamos accediendo al iPhone/iPod Touch como usuario root, con plenos permisos y poderes para hacer cualquier cosa, lo cual implica un riesgo bastante importante para usuarios que no sepan bien qué están haciendo. Queda terminantemente prohibido tocar nada que no se sepa qué es y es obligatorio hacer una copia de seguridad de cualquier fichero o directorio que se vaya a modificar, por si acaso hay que volver a ponerlo como estaba.
Forma 1: línea de comandos
Tan sencillo como abrir un terminal y ejecutar el comando:
ssh root@10.1.0.178
(sustituyendo la IP por la de tu iPhone)
Te pedirá confirmación porque no es capaz de autenticar el destino de la conexión y después te preguntará la contraseña del usuario root, que en el caso del firmware 1.1.4 es "alpine", sin las comillas.
Para enviar ficheros al iPhone podemos usar SCP del mismo modo que siempre. Por ejemplo, si queremos instalar un nuevo tema del SummerBoard lo único que hay que hacer es copiar la carpeta del tema en el directorio correcto dentro de la estructura de directorios del móvil. Esto se puede hacer ejecutando:
scp -r nombre_carpeta root@10.1.0.178:/var/mobile/Library/SummerBoard/Themes
Del mismo modo también se pueden copiar ficheros desde el iPhone al disco duro del ordenador, cambiando el orden de los argumentos en la ejecución del comando. Para copiar la carpeta "nombre_carpeta" del iPhone en el directorio actual del ordenador sería:
scp -r root@10.1.0.178:/var/mobile/Library/SummerBoard/Themes/nombre_carpeta ./
Forma 2: desde cualquier cliente SFTP
Lógicamente también podemos acceder al aparato desde cualquier otro cliente que acepte conexiones SFTP, con una interfaz gráfica que pueda resultar más cómoda que la línea de comandos. Por elegir uno, y por hacerlo lo más sencillo posible, yo voy a conectarme usando el propio Nautilus, el navegador de archivos de Gnome.
En una ventana de Nautilus pulsar la combinación de teclas [Ctrl]+L para introducir una dirección manualmente y escribir:
sftp://root@10.1.0.178
(sustituyendo la IP por la de tu iPhone)
Se abrirá una ventana preguntando la contraseña y si quieres que te la recuerde. La introducimos ("alpine") y directamente ya estaremos navegando por los directorios del iPhone usando el navegador de Gnome, para meter mano donde haga falta.
En cualquier otro cliente gráfico los pasos son similares, crear una nueva conexión SFTP a la dirección IP del iPhone/iPod Touch con nombre de usuario "root", contraseña "alpine".
Imagen | "Flickr de Javier Aroche":http://flickr.com/photos/j_aroche/2242994204/