Conexión SFTP a través de otro servidor

Conexión SFTP a través de otro servidor

Quiero conectarme a mi cuenta en un servidor de mi universidad. Cuando estoy allí sólo tengo que hacer

 “ssh user@FinalServer/home/user” 

o crear una carpeta usando

 “sftp://user@FinalServer/home/user”.

Pero el problema viene cuando estoy en casa. Aquí tengo que conectarme primero a un servidor concreto en un puerto concreto y luego hacer la conexión al FinalServer.

 1st. “ssh user@IntermediateServer:54022”
 2nd. “ssh user@FinalServer/home/user”

Y para hacer un sftp primero tengo que hacerlo al Servidor Intermedio y luego al servidor final. Si es posible, quiero hacer una carpeta como la del primer ejemplo, pero no sé cómo.

Estoy buscando una solución en Linux y otra en Windows.

Estoy intentando hacer algo con Putty o WinSCP pero no sé cómo. Muchas gracias y perdón por mi mal inglés.

Respuesta1

Si su host intermedio permite el reenvío TCP, puede lograr lo que desea, pero aún se necesita la conexión ssh al servidor intermedio. Ambos comandos se ejecutarán desde su casa:

ssh -f -p 54022 user@IntermediateServer -L 2000:FinalServer:22 -N
ssh -p 2000 user@localhost

El primero establece un túnel desde la PC de su hogar en el puerto 2000 hasta el servidor final en el puerto 22 (estándar para SSH) a través del servidor intermedio en el puerto 54022. Inicie el primer comando y verifique si hay un nuevo puerto de ESCUCHA en su PC de su hogar ( netstat -na | grep LIST | grep 2000), si es así ya tienes tu túnel en funcionamiento. Simplemente ejecute los comandos como si su PC local fuera el servidor final (en el puerto 2000)

NOTA: Estoy usando el puerto 2000 porque supongo que hay un servidor ssh ejecutándose en su PC, pero puede usar el puerto que desee.

información relacionada