Existem várias maneiras de resolver isso, no entanto, porque queremos executar o comando rsync em seu PC doméstico, eu acho que a melhor maneira seria criar um túnel do seu PC doméstico para o labpc, da seguinte maneira:
joe@homepc> ssh -L 2222:127.0.0.1:2222 [email protected]
student7@university999> ssh -L 2222:127.0.0.1:22 joedude@labpc
Agora, no seu PC doméstico, você deve conseguir ssh diretamente no computador do laboratório:
joe@homepc> ssh -p 2222 joedude@localhost
Quando isso estiver funcionando, você poderá criar um script rsync.
Eu adicionaria as seguintes linhas ao ~ / .ssh / config
# Tunnel to labpc
Host labpc_tun
User joedude
Port 2222
# ProxyCommand ... TODO: set up tunnel automatically
HostName 127.0.0.1
Agora, você deve ser capaz de fazer (em uma janela separada, após os dois primeiros logins ssh serem feitos):
joe@homepc> rsync labpc_tun:/path-on-labpc/ /path-on-homepc/
Há muito mais melhorias que você poderia fazer depois disso, mas eu esperaria até você fazer a primeira parte funcionar e, em seguida, ver quanto de automação você precisa. Para automatizar completamente isso você precisaria usar o ssh-keygen para permitir logins ssh sem uma senha. Você também pode adicionar mais a .ssh / config para a primeira perna ssh de saída. Usando o parâmetro ProxyCommand em .ssh / config, você pode automatizar tudo.