
Tengo una computadora en casa con SSH instalado que me gustaría poder controlar de forma remota. Sin embargo, no puedo permitir el reenvío de puertos SSH a través de mi enrutador, por lo que la única forma de ingresar sería hacer que la instalación en mi computadora escuche un puerto en un servidor para realizar conexiones. ¿Existe algún software para este propósito?
Respuesta1
Como mencionas tener acceso a un servidor externo, deberías poder hacerlo a través del túnel inverso.
Desde su sistema doméstico, querrá conectarse por ssh al servidor remoto, con una sintaxis como:
ssh -g -R 12345:localhost:22 user@remoteserver
- el indicador -g permite que los hosts remotos se conecten al puerto reenviado. De lo contrario, la configuración ssh predeterminada es que solo el sistema que primero hizo el túnel podría usar el puerto (es decir, el servidor doméstico).
- -R se usa para configurar el túnel inverso, y decimos que las conexiones al servidor remoto:12345 deben reenviarse a localhost:22
Para usar el túnel, harías algo como:
ssh -p 12345 remoteserver
Por supuesto, para que este túnel funcione, deberá asegurarse de que la sesión ssh del servidor doméstico al servidor remoto permanezca activa.
Respuesta2
@Ashley Steel, mira cómo establecer el valor de ServerAliveInterval en un valor distinto de cero. En la línea de comando ssh, sería algo como esto: -oServerAliveInterval\ 60
También puede configurarlo en el archivo .ssh/config mediante un host remoto.