Cómo configurar mejor un túnel ssh para acceder a una red remota (Linux)

Cómo configurar mejor un túnel ssh para acceder a una red remota (Linux)

Mi situación: quiero depurar de forma remota mi aplicación C++ con gdbserver y eclipse. Eclipse se ejecuta en mi estación de trabajo local (en la red 192.168.0.0) y gdbserver se ejecuta en una máquina de clúster en la red 10.0.0.0. Tengo acceso ssh a la máquina del clúster a través de una máquina que está en ambas redes.

¿Cómo puedo configurar un túnel para que mi eclipse pueda acceder al gdbserver? No tengo derechos de administrador/acceso root/sudo.

Todas las máquinas son Linux/Unix con openssh.

Respuesta1

Confío en que ya pueda acceder mediante SSH a un sistema en la red privada remota (10.0.0.0). Si su sistema local ejecuta openssh, agregue a su $HOME/.ssh/config:

Host gatewaymachine
  LocalForward 12080 remote_ip:portnum

Donde 'remote_ip' es la dirección IP del sistema clustermachine remoto donde se ejecuta gdbserver y portnum es el puerto en el que escucha. SSH a la máquina de puerta de enlace, luego conecte su aplicación al host local, puerto 12080. Por ejemplo, si se trata de una aplicación web

http://localhost:12080

Si no está utilizando una aplicación web, deberá configurar la información de su conexión para reflejar que va al puerto 'localhost' '12080' (o cualquier puerto que desee, consulte a continuación).

En lugar de editar su configuración ssh, también puede usar los parámetros del comando ssh:

ssh -L 12080:remote_ip:portnum gatewaymachine

(cambie 12080 a cualquier puerto que desee por encima de 1024; por debajo de 1024 y necesitará acceso de root para vincularse al puerto)

Respuesta2

Básicamente, lo que dijo jtimberman :). Quizás quieras investigarautosshsi tiene problemas para mantener su túnel en funcionamiento durante períodos prolongados.

información relacionada