rsync through multiple ssh hops with password authentication prompt
Manuel López-Ibáñez
manuellopezibanez at yahoo.es
Wed Oct 19 16:36:55 GMT 2005
Hi, I have searched the whole internet and mailing list and I was unable
to find a clear answer to this. The method described in the FAQ [1] are
not useful for me.
Three machines source, middle, target. ssh into middle from source
requires password pass_middle. ssh into target from middle requires
password pass_target. One cannot reach target from source. So I can do:
source $ ssh middle
middle's password: pass_middle
middle $ ssh target
target's password: pass_target
target $
Also I can do it in one step:
source $ ssh -t middle ssh target
middle's password: pass_middle
target's password: pass_target
target $
Now, I want to transfer files from source to target.
source $ rsync -e "ssh -t middle ssh target" :/path/to/remote/file .
Pseudo-terminal will not be allocated because stdin is not a terminal.
middle's password:
Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,password,keyboard-interactive).
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(359)
This doesn't work. Neither does:
source $ rsync -e "ssh -t -t middle ssh target" :/path/to/remote/file .
middle's password:
tcgetattr: Invalid argument
protocol version mismatch - is your shell clean?
(see the rsync man page for an explanation)
rsync error: protocol incompatibility (code 2) at compat.c(60)
Finally, the simplest form also won't work.
source $ rsync -e "ssh middle ssh target" :/path/to/remote/file .
middle's password:
Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,password,keyboard-interactive).
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(359)
Both ask the first password but they generate an error before asking for
the second one.
I know for sure that if you can ssh into target from middle without a
password (using keys or whatever), then the second rsync command works
perfectly.
I wish to know if there is a way to achieve this, that is, rsync asks
for both passwords and then transfers the files. In case it is not
currently possible, would it ever be possible, that is, should I fill a
bug report or feature request report? Otherwise, it would be interesting
to update the rsync FAQ [1] to state that this is clearly impossible and
one must use a passwordless authentication method in the second hop.
Thanks for your help,
Manuel.
(Please CC me in the reply since I am not subscribed to the list)
[1] http://samba.anu.edu.au/rsync/FAQ.html#6
______________________________________________
Renovamos el Correo Yahoo!
Nuevos servicios, más seguridad
http://correo.yahoo.es
More information about the rsync
mailing list