(Situação estranha, algo como a desigualdade do triângulo é válida para o roteamento da Internet?)
De qualquer forma, tente o seguinte, em A , ssh
em B com um argumento -D
,
ssh -D 1080 address-of-B
que atua como um proxy SOCKS5 em 127.0.0.1:1080
, que pode ser usado por qualquer coisa que suporte conexões proxy SOCKS5. Aparentemente, wget
pode fazer isso , usando a variável de ambiente
export SOCKS_SERVER=127.0.0.1:1080
wget http://server-C/whatever
Observe que às vezes curl
é mais útil (ou seja, não sei se wget
pode fazer pesquisas de nome de host por meio de SOCKS5; mas isso não é uma de suas preocupações, suponho); também o Firefox é capaz de funcionar completamente através de um proxy SOCKS5.
Editar Acabei de perceber que você está procurando uma solução de uma linha . Bem, que tal
ssh address-of-B 'wget -O - http://server-C/whatever' >> whatever
i.e. redirecionar a saída wget
-fetched para stdout
e redirecionar a saída local (de ssh
executando wget
remotamente) para um arquivo.
Isso parece funcionar, a saída wget
é um pouco confusa (" salva em - "), você pode se livrar dela adicionando -q
à chamada wget
.