Você pode criar um túnel SSH através da máquina2 e, em outra sessão, conectar-se ao túnel.
Por exemplo, abra duas sessões CLI na máquina1. Na primeira sessão, execute o seguinte:
MACHINE1$ ssh -L 2022:MACHINE3:22 <user>@MACHINE2
Na segunda sessão, execute o seguinte:
MACHINE1 $ ssh -p 2022 <user>@localhost
O que está acontecendo com o primeiro comando é que uma porta local (2022 na máquina1) está sendo encapsulada na porta 22 na máquina3 usando sua conexão SSH para a máquina2.
Com o segundo comando, você está se conectando à porta local recém-aberta (2022) e é como se estivesse se conectando diretamente à máquina3.
Agora, se você quiser usar seu processo típico de transferência de arquivos, faça o seguinte:
ssh -p 2022 <user>@localhost "tar cf - /path/to/remote/directory/" > filename.tar
Como alternativa, você pode se familiarizar com o rsync e fazer algo assim:
rsync -aHSv --progress -e 'ssh -p 2022' <user>@localhost:/path/to/remote/directory/ /path/to/local/directory/
Assumindo que o objetivo final não é obter um tarball.