sábado, 22 de junio de 2013

Conexión SSH remota a un PC Linux dentro de una red LAN

No soy un experto Linux, pero en mis proyectos más reciente y personalmente estoy usando linux como sistema operativo. En varias ocasiones he tenido necesidad de conectarme de manera remota a algún PC o Servidor que se encuentra dentro de una red LAN para cumplir con algún mantenimiento, utilizando la herramienta ssh.

Esta LAN no está abierta para el acceso directo, pues la red LAN pertenece y es soportada por el cliente, por lo que casi siempre tengo obstáculos para conectarme (cortafuegos).

Para evitar estas situaciones protocolares con el cliente suelo instalar Logmein Hamachi, el cual tiene la gran ventaja de que funciona para los sistemas operativos que uso (Linux y Windows), y además me permite un acceso total por IP a través de una red virtual que mantiene unas direcciones IP estables.

En la mayoría de las ocasiones instalo esto en el servidor (Linux) para poder dar soporte directo al cliente.



Así para conectarme al servidor utilizo la IP que me otorga la red virtual de Hamachi de la siguiente manera:
$> ssh -l usuario <IP Hamachi>

Sin embargo he tenido últimamente necesidad de conectarme a más de un PC Linux dentro de esta red LAN. Lo primero que pensé fué en instalarle a todos esos PC el Logmein Hamachi, sin embargo no me agradaba la idea de tener esa lista extensa de PC's en mi lista de nodos de hamachi, por lo que busqué información sobre si era posible, teniendo un solo computador en la red virtual, conectarse a cualquier otro dentro de esa red LAN, y voilá: la herramienta ssh permite una conexión limpia a cualquier computador usando una sola IP virtual.

Lo único que hace falta es saber la dirección IP (o nombre, según cómo se use) del PC destino dentro de la red LAN.

Para esto se usa el comando ssh de la siguiente manera:
$> ssh -A -t -l <usuario del PC que tiene hamachi> <ip hamachi> ssh -l <usuario del PC en la LAN> <IP/nombre del PC en la LAN>

Así, suponiendo que la IP del computador que tiene instalado hamachi es 25.55.55.55, usuario1, y la IP del computador dentro de la LAN al que nos interesa conectarnos fuera 192.168.0.57, usuario2, el comando quedaría así:
$> ssh -A -t -l usuario1 25.55.55.55 ssh -l usuario2 192.168.0.57

Como es de esperar, la utilidad ssh pedirá las contraseñas de manera secuencial, es decir, primero la del PC con hamachi y luego la del PC en la LAN.

Si fuera necesario hacer más de un "salto" ssh a través de más de una red, el comando funciona de igual forma:
$> ssh -A -t -l usuario1 ip1 ssh -A -t -l usuario2 ip2 ... ssh -l usuarion ipn

Espero que sea de utilidad a aquellos que, como yo, no son tan expertos en este fabuloso sistema operativo.

No hay comentarios:

Publicar un comentario