Tipos de túneles SSH
Una de las grandes características de ssh son los túneles. Los podemos hacer tanto directos (un puerto local a un puerto del lado remoto) como inversos (un puerto remoto a un puerto del lado local). Vamos a ver como utilizarlos.
En el caso del túnel permite que un determinado puerto en el lado local se reenvíe a un host y puerto del lado remoto. Su sintaxis es:
-L [bind_address:]port:host:hostport
Un ejemplo podría ser:
remoto# ssh -l jordi edge.systemadmin.es -L2222:interno.systemadmin.es:22
Mediante este comando podemos crear un túnel que permita desde la maquina remoto.systemadmin.es conectar a interno.systemadmin.es a través de edge.systemadmin.es (imagen anterior). De esta forma podemos saltarnos las restricciones del firewall haciendo pasar la conexión por otra maquina a la que sí tenemos acceso. Para conectar desde edge.systemadmin.es a interno.systemadmin.es haríamos:
edge# ssh -l jordi localhost -p 2222
En el caso de un túnel inverso su sintaxis es similar:
-R [bind_address:]port:host:hostport
Permite que un determinado puerto en el lado remoto se reenvíe a un host y puerto en el lado local. Por ejemplo, desde la maquina interno.systemadmin.es conectamos a externo.systemadmin.es con un túnel inverso a localhost en el puerto de ssh:
interno# ssh -l jordi externo.systemadmin.es -R 2222:localhost:22
De esta forma desde externo.systemadmin.es conectando a localhost:2222 pasamos por el túnel establecido y nos podemos conectar por ssh a interno.systemadmin.es. De esta manera podemos saltarnos el firewall y acceder a sistemas internos desde maquinas externas.
En el caso del ejemplo, para conectar desde externo.systemadmin.es a interno.systemadmin.es usando el túnel usaríamos el siguiente comando en externo.systemadmin.es:
externo# ssh -l jordi localhost -p 2222
Para evitar problemas con el fingerprint podemos crear alias en el fichero /etc/hosts de 127.0.0.1, con lo que guardaremos para cada sistema sus claves aúnque sea atraves de un túnel ssh:
127.0.0.1 localhost valls interno stargate tricia
Relacionados
Imprimir


18. September 2009 at 10:13 am :
[...] Túneles ssh. Sucinto y muy práctico, como casi todo lo que publican en systemadmin.es ¡Nos van a mal acostumbrar! [...]
28. December 2011 at 12:46 am :
Tengo una duda, he tratado de hacer el tunel , usando como intermediario una shell gratuita(shell.cjb.net), y el problema radica en el intermediario, no permite conexiones entrantes desde el exterior. ¿cómo se puede resolver ese problema?,¿es necesario contratar un VPS?