0

iPhone – SSH

El uso de SSH para transferir archivos entre el iPhone y una PC es algo muy viejo que viene desde los comienzos del iPhone 1, pero mucha gente puede no tener idea de la existencia de esto ni para que sirve, sin embargo es necesario para hacer varias cosas interesantes con el dispositivo. Obviamente, para poder transferir archivos vía SSH, necesitamos tener el dispositivo con Jailbreak.

¿Que es SSH?
Lo primero que uno se puede preguntar es: ¿que es SSH?. SSH significa Secure SHell, y es comúnmente usado en el entorno de Unix/Linux. También se puede usar SSH para acceder a una PC remota y ejecutar comandos desde otra maquina en cualquier parte del mundo. Adicionalmente, se puede usar para transferir archivos entre PCs, tal cual lo hace el FTP. No vamos a entrar en detalles técnicos de SSH, pero simplemente lo que vale recordar es que SSH es una herramienta que permite acceder otra maquina o dispositivo remotamente. En este caso, el dispositivo es un iPhone.

Instalando SSH en un iPhone
Para utilizar SSH, debemos contar con un dispositivo con Jailbreak.
SSH se instala bajando el paquete “OpenSSH” desde Cydia y luego reiniciar el teléfono.
No aparecerá ningún icono de SSH en el escritorio, sino que el servicio de SSH se ejecuta automaticamente en el background y quedará escuchando por peticiones de conexión.

Recomendaciones:

  • Desactivar el autolock del teléfono. El teléfono debe estar despierto mientras realizamos transferencias de archivos
  • Personalmente recomiendo utilizar SBSettings para poder desactivar el servicio de SSH y que no quede siempre corriendo en el teléfono por 2 razones: seguridad y consumo de batería.
  • Como transferir archivos mediante SSH
    Aquí llegamos a la parte importante de este articulo, la transferencia de archivos (ese fue el motivo por el cual instalamos SSH en primer lugar).
    Para poder conectarnos al teléfono desde otro dispositivo (una PC), primero necesitamos saber la IP del teléfono en la red local a la cual está conectada (vale aclarar que los 2 dispositivos deben de estar conectados a la misma red WiFi).

    Para saber la dirección IP del teléfono, se puede ver directamente desde la pantalla inicial de SBSettings en caso de tenerlo instalado. De lo contrario, debemos ir a “Settings” > “WiFi”, y seleccionar la conexión WiFi a la que estamos conectados apra visualizar los detallos. Ahí estará detallada la dirección IP del teléfono en un formato similar a 192.168.1.10.

    Una vez que sabemos la dirección IP, solo resta conectarnos.

    Para usuarios Windows
    Los usuarios de Windows se puden bajar un programa de transferencia de archivos como en WinSCP, el cual es un cliente SSH gratis para Windows XP/Vista. Se puede bajar de acá.

    La instalación de WinSCP es bastante simple, solamente hay que darle doble click a “winscp421setup.exe” y seguir las instrucciones.
    Una vez que la instalación finalizó, hay que abrir WinSCP y darle click en “New”. En host name hay que colocar la dirección IP del iPhone al cual nos vamos a conectar. En usuario y password hay que utilizar “root” y “alpine” respectivamente. Los otros campos los dejamos intactos. Luego le damos en “login” para conectarse. Darle “Yes” si salta un mensaje consultando para agregar la llave al cache.

    Tip: en vez de darle “login” directamente, pueden darle “save” para que queden guardados los datos de la conexión. Hay que tener en cuenta que la dirección IP del iPhone puede variar, así que se tiene problemas para conectarse deben revisar que la dirección sea la correcta.

    Una vez conectado, vamos a ver los archivos del sistema operativo del iPhone, y se pueden transferir archivos fácilmente arrastrándolos a la ventana correspondiente.

    Para usuarios Mac
    Mac, al ser basado en Unix, ya trae un cliente SSH en su sistema, pero solamente se puede usar en modo de comando a través de la terminal, sin interface gráfica, así que recomendamos bajar un cliente gratis de SSH como “Cyberduck” para conectarse. Cyberduck se puede bajar desde aquí, o desde su página oficial.

    Para transferir archivos, simplemente hay que ejecutar Cyberduck, clickear en “Open Connection”, y luego llenar la info con la dirección IP del teléfono en “Server”, “root” dentro de “user” y “alpine” dentro de “password” respectivamente.

    Darle “Connect”, y Cyberduck se conectará al teléfono.

    Una vez conectado, podremos ver los archivos del sistema operativo del iPhone en la ventana de Cyberduck.

    Eso es todo. Ahora podemos transferir arvhicos desde y hacia el iPhone via SSH. Recuerden que les recomiendo instalar SBSettings para poder apagar el servicio y que no consuma batería además de como método de seguridad. También, es recomendable seguir esta guia para cambiar la contraseña “alpine” que viene por defecto, y evitar el ataque de algún virus que entra al teléfono por SSH utilizando los datos que son públicos.

    [UPDATE]: Me comenta @imd23 que SSH no consume bateria, por ende no hay necesidad de desactivarlo.