Monday, May 2, 2011

Tuneles TCP/IP con OpenSSH (Port Forwarding)

Como muchos sabemos Secure Shell (SSH) permite que podamos acceder en modo terminal a un sistema remoto y poder controlarlo de forma segura ya que estos datos van cifrados, pero aparte de poder conectarnos remotamente podemos utilizar esa conexión segura para crear túneles donde los datos TCP/IP pasen a través de SSH, y de esta forma saltarnos cualquier bloqueo hacia la maquina a la cual estamos conectados.

En este articulo daré un ejemplo claro de su funcionamiento, vamos a poner como ejemplo el siguiente escenario: Tenemos un Servidor corriendo un Proxy Squid en el puerto 3128, pero desde el equipo en que estamos solo tenemos acceso al servidor a través del puerto 22.


Nos conectamos al servidor SSH de la siguiente manera:

[ramphis@puntolibre]$ ssh -L 3000:localhost:3128 proxyserver

Luego que tengamos esa conexión SSH realizada, en otra terminal verificamos si esta escuchando por el puerto 3000 nuestra maquina.


[ramphis@puntolibre]$ lsof -i:3000
... TCP *:3000 (LISTEN)


Y cualquier conexión que hagamos al socket localhost:3000 sera reenviada a el puerto 3128 de el servidor, por ejemplo podemos configurar nuestro navegador web poniendo de proxy "localhost" y como numero de puerto, el 3000 y estaremos usando el Squid del servidor a traves de SSH.
Ramphis Che

0 comentarios:

Post a Comment