Você deve ser capaz de configurar um túnel SSH de A- > B e de A-C, e então rsync diretamente de B- > C atravessando esse túnel.
Vai ser um pouco complicado, mas basicamente você faz o seguinte:
- Configurar um daemon rsync em uma porta alta (digamos 20000) em B
- Configure um LocalForward A: 20000 para B: 20000 com ssh
- Configurar um RemoteForward de C: 20000 para A: 20000 com ssh
- Em C, rsync -av / caminho rsync: // localhost: 20000 / caminho
Lembre-se de que todo esse tráfego entrará e sairá da rede em A e será criptografado, por isso provavelmente será muito lento. pode valer a pena ver se B é realmente firewall de C, você pode ser capaz de executar o servidor rsync em uma porta alta e conectar diretamente.