MidpSSH: Controlando la PC desde el Móvil. » Blog de Notas | Soy Facus

sábado, 29 de diciembre de 2012

MidpSSH: Controlando la PC desde el Móvil.

El ser humano, por naturaleza, es perezoso. Yo sostengo que descendemos del animal que lleva ese adjetivo por nombre y no del mono, como algunos creen.

Pero para llegar a ser lo suficientemente perezoso, primero atravesamos una etapa de pensamiento profundo donde se nos ocurren aquellas ideas para realizar tareas con el menor esfuerzo posible.

La nota de hoy habla de como el avance tecnológico cada vez nos hace más sedentarios, al punto de no querer pararnos y caminar 2 pasos (del sillón a la PC) para cambiar de tema en el reproductor multimedia, por dar un ejemplo.


Hablamos de gente como yo, que usa su inteligencia para buscar la comodidad. Y si vos también sos como yo, seguramente encontraste a Linux; y con él escuchaste algo sobre SSH; también tenés algún teléfono móvil con wifi (o el simple GPRS), y querés juntar todas estas cosas para relajarte en tu sillón preferido y controlar la PC a gusto y a distancia.

Bueno, todo esto era mi sueño hace unos años atrás, y se hizo realidad con una aplicación Java llamada MidpSSH, y obviamente mi PC con sistema GNU/Linux.

En esta nota te voy a contar de que se trata todo esto y como usarlo a tu favor, como es mi estilo, paso a paso.
salto


¿Qué es SSH?

SSH es un protocolo de conexión y aplicación cliente/servidor, Secure Shell. Básicamente ofrece acceder a una máquina remota y ejecutar comandos en ella de una manera segura, ya que usa un sistema de encriptación muy potente.
Para más información, pueden visitar esta nota. (link)


¿Y qué es MidpSSH?

MidpSSH es una aplicación desarrollada en Java que cumple la función de cliente de SSH y de Telnet, o sea que por medio de ésta, podremos conectarnos a una PC (que esté corriendo el servidor SSH o Telnet) y ejecutar comandos como si fuera un interprete de comandos nativo del sistema.
Como se imaginarán, si podemos tener acceso a una Consola o Terminal de comandos de un sistema, podremos hacer prácticamente todo, para no decir TODO!, remotamente.


¿Y qué necesito para montar todo esto? dime, dime!! que ya quiero el mío!!

La respuesta es, muy pocas cosas:
  • Una PC con sistema GNU/Linux (*)
  • Un teléfono celular (**)
  • Conexión a internet en ambos dispositivos o una red local que los contenga.

(*)Seguramente no faltará el que pregunte: "¿Se puede en Window$?" y la respuesta es, no sé y no me importa... en este blog evangelizo con la palabra de GNU/Linux.
(**)El teléfono celular debe soportar aplicaciones Java.


¿Y cómo configuro todo esto?

Para la configuración del servidor SSH en la PC a la que queremos acceder, alcanza con una configuración estándar, pero recomiendo leer La Nota sobre SSH para mayor seguridad.

Para el cliente SSH, vamos a descargarnos la aplicación MidpSSH. Ésta aplicación está bajo la licencia GPL y la pueden encontrar y descargar desde la web oficial:
http://www.midpssh.org/download.php


Suposiciones iniciales:

Ahora bien, supongamos que ya tenemos una PC disponible, con una distribución de GNU/Linux instalada (puede ser Ubuntu, Debian, Linux Mint, Fedora, etc) y el servidor SSH listo y corriendo.

Esta PC está conectada a un Router que a su vez tiene WIFI y desde allí se conecta el teléfono celular (más adelante veremos un caso para teléfonos sin acceso WIFI, pero conectado a internet por GPRS o 3G).


Vamos a configurar el MidpSSH de la siguiente manera: (según mi experiencia)

Aclaración: Para esta guía utilicé un teléfono celular Sony Ericsson W200 con conexión GPRS.

MidpSSH-Main-Menu

Cuando abrimos la aplicación vamos a encontrarnos con el menú principal:

  1. Sessions (Sesiones)
  2. Marcos
  3. Settings (Configuraciones)
  4. About MidpSSH
  5. Help
  6. Quit

1- Sessions: en este menú, podremos crear las sesiones o "cuentas" de los servidores a los que vamos a acceder.

Creamos la primer sesión dando en el botón menú del teléfono, New.

Nos solicita el Alias, pondremos un nombre del servidor, por ejemplo "PC".
En Host tenemos que introducir la IP o la URL del servidor.
Aclaración: si nuestro servidor tiene un puerto de SSH (o Telnet) no estándar, tendremos que colocarlo seguido de la IP o URL y con dos puntos separanto host del puerto.
Ej: 192.168.1.10:444 ó www.miservidor.com:444

En Type definimos el protocolo: SSH o Telnet (para nuestro objetivo, seleccionamos SSH)

En Username y Password introducimos el usuario y la contraseña por la cual se autenticará en el servidor. Estos campos son opcional. Si se deja vacío, el sistema solicitará que introduzcamos estos datos en el momento que se produzca la autenticación.


2- Macros: este menú sirve para crear macros, que tal y como lo define wikipedia, sirve para tener almacenado una serie de "lineas de comandos" que se ejecutaran con una simple llamada, sirve para no tener que estar escribiendo mucho algo que se realizará en varias oportunidades.
Para crear un Macro, nos solicita un Nombre para el macro, dentro de él setteamos el comando a ejecutar y su respectivo nombre o alias.


3- Settings (configuraciones): El menú más importante.

MidpSSH-Settings-Menu

Este menú tiene a su vez varios sub-menúes:

  • Network (Red)
  • Interface
  • Fonts (Fuentes)
  • SSH
  • Restore Defaults (Restaurar Predeterminados)

3.1- Network: En este sub-menú, configuramos como se conecta el teléfono. Si usamos Proxy, lo definimos en el campo HTTP Proxy (yo lo tengo en blanco).
HTTP Proxy Mode: Off ; Persistent o Transient. (yo lo tengo en Persistent, pero al dejar en blanco el campo de arriba creo que no se aplica).

Polling I/O: On ; Off. No tengo mucha idea de para que sirve, pero lo tengo en On y así me da buenos resultados.

 3.2- Interface: En este sub-menú configuramos el "como" se ve la aplicación y la "consola" emulada.
Full Screen: On ; Off. Lo ponemos en On para ver en pantalla completa (sin la barra superior de estados del teléfono).
Orientation: Normal ; Landscape ; Landscape Flipped. La orientación de la pantalla cuando entra en la consola. Normal, apaisado (horizontal) girado en contra de las agujas del reloj y apaisado en sentido opuesto (sentido horario).
Terminal Size: Aquí definimos el tamaño de la consola en Columnas y Filas. En blanco toma por defecto.
Predictive Text: On ; Off. El método de introducción de texto, predictivo o normal (letra por letra).

3.3- Fonts: En este sub-menú definimos la Fuente (o tipo de letras).
Font Size: Tamaño de letras. Tiny (letra pequeña); Device (letra del dispositivo) ; LCD 3x6 ; LCD 4x6 ; y otros tamaños. Recomiendo ir probando cual se adapta a tu gusto.
LCD Font Mode: RGB ; BGR. El modo con el cual se interpretan los colores de la fuente.
Colours: El color de la fuente, en código HTML. Ej: #FFFFFF (blanco) #000000 (negro) #00FF00 (verde, si es en modo RGB).

3.4- SSH: Este sub-menú se trata sobre las configuraciones del protocolo SSH.
Prefer: SSH1 ; SSH2. Recomiendo el protocolo 2 para mayor seguridad.
Public Key: On ; Off. Clave pública. Lo tengo setteado en Off.
Store Session Key: On ; Off. Almacenar clave de sesión. Lo tengo configurado en On porque acelera el proceso de autenticado con servidores ya utilizados.
Session Key Size: Tamaño de la clave de sesión. 32 ; 64 ; 128 ; 256 ; 512 ; 1024. Yo lo configuré en 512.

3.5- Restore Default: Este sub-menú realiza un borrado de configuraciones y vuelve al establecido de fábrica.



4- About MidpSSH


En el About encontraremos información relevante a la aplicación, referencias de licencias y links de interés.
También podemos conocer a su creador y colaborar con un donativo para el proyecto.


5- Help: Ayuda! siempre se puede contar con más ayuda, aunque en esta tremenda guía lo intenté de explicar lo mejor posible, si querés enterarte de alguna configuración más específica o simplemente querés informarte más sobre el proyecto, te aconsejo visitar la página de ayuda de la aplicación:
http://www.midpssh.org/wiki/


6- Quit: Ahora solo resta salir a probar la aplicación!

Recordemos que si ya cumplimos con los supuestos necesarios, con configurar bien cada paso del MidpSSH podremos comunicarnos inmediatamente con nuestra PC y comenzar a ejecutar comandos.

Dentro de una red local, con WIFI, todo es más fácil.
Pero si no tenés WIFI en el teléfono, existe una solución poco ortodoxa pero que nos dará un Plus.

Podemos configurar nuestro Router para abrir el puerto SSH que hayamos configurado y dejarlo accesible desde internet!
Esto nos permitirá acceder con el teléfono directamente a nuestra IP Pública y podremos utilizar ese teléfono viejito que solo tiene GPRS (como el que uso en el ejemplo).

Pero, ¿te diste cuenta de que esto abre aún más el abanico de posibilidades?

Sí, si lográs abrir los puertos del Router, asignarle una IP Privada a la PC fija o estática, con redirección de puertos hacia ella, vas a poder acceder a tu PC desde cualquier lugar del mundo! y todo desde ese telefonito al que tus amigos se le burlaban. Te aseguro que ya no lo haran.

 MidpSSH: Conexión Establecida desde GPRS


Como verán, esta nota quedó larguísima, pero creo que vale la pena... lo tomo como un resumen de muchas de las cosas que vimos durante este 2012 y así me voy despidiendo de él.

A continuación, dejo los links de las notas que deberías leer para poder lograr controlar tu PC desde cualquier lugar del mundo y luego voy a subir un Video demostrativo (como a mí me gusta).


Links Complementarios:

Espero que pasen un Feliz Fin de Año!
Nos volveremos a encontrar en Enero de 2013.

Compartan, Comenten y Disfruten de esta Nota Monstruosa!

Saludos ;)





SoyFacus | y tengo el Control.

<---- Compartilo desde la barra social. (Facebook, Twitter y/o Google Plus)

1 comentario:

  1. Se puede en windows, tenes que instalar el openssh que es ssh para windows, lo instalas como server para conectarte de afuera.

    ResponderEliminar

Dale, dejame saber que opinás..

Ingresar un Nick en "Nombre/URL" o logueate en Google, OpenID, AIM, TypePad, WordPress o LiveJournal.