remoto remote exclude another ssh rsync ssh-tunnel

remote - rsync a través del túnel ssh



rsync ssh key (3)

Debe conectarse al puerto 22 de clusternode, por lo que el túnel debería verse como

ssh -L localhost:8000:clusternode:22 user@bridge

Quiero sincronizar con un nodo de clúster al que suelo conectar pasando por otro sistema:

Digamos que me conecto primero a

ssh user@bridge

y de allí a

ssh user@clusternode

Ahora quiero sincronizar desde mi estación de trabajo a clusternode. Yo hago lo siguiente:

  • Abro un túnel ssh

    ssh -L8000:clusternode:8000 user@bridge

  • I rsync desde mi estación de trabajo a clusternode

    rsync -e "ssh -p8000" source user@localhost:destination

y no funciona, me sale

ssh_exchange_identification: Connection closed by remote host

Por que no funciona? ¿Que tengo que hacer?

He encontrado mucha información aquí:

http://toddharris.net/blog/2005/10/23/rsyncing-through-an-ssh-tunnel/

Creo que tengo que entender que mi problema es la segunda autenticación entre el puente y el destino, así que cambié al método 2, que tampoco es muy elegante, pero funciona. Me gustaría probar el método 3, pero no sé cómo configurar un daemon rsync


Esto es lo que funcionó para mí.

Ejecuto un comando en segundo plano para hacer un túnel al host remoto:

ssh -N -L 2222:remote.example.com:22 bridge.example.com&

entonces rsync al localhost así:

rsync -auve "ssh -p 2222" . me@localhost:/some/path


Prueba este one-liner:

rsync -av -e "ssh -A root@proxy ssh" ./src root@target:/dst