(Дивна ситуація, чи не щось подібне до нерівності трикутника для маршрутизації в Інтернеті?)
У будь-якому випадку, спробуйте наступне, на A , sshв B з -Dаргументом,
ssh -D 1080 address-of-B
який діє як проксі-сервер SOCKS5 127.0.0.1:1080, який може бути використаний будь-яким підтримуючим проксі-з'єднанням SOCKS5. Мабуть, це wgetможна зробити , використовуючи змінну середовища
export SOCKS_SERVER=127.0.0.1:1080
wget http://server-C/whatever
Зауважте, що іноді curlце зручніше (тобто я не впевнений, чи wgetможна робити пошук імен хоста через SOCKS5; але, напевно, це не є однією з ваших проблем); також Firefox може повністю працювати через такий проксі-сервер SOCKS5.
Редагування Щойно я помітив, що ви шукаєте однолінійне рішення. Ну, як щодо
ssh address-of-B 'wget -O - http://server-C/whatever' >> whatever
тобто перенаправлення wgetвиправленого виводу на stdoutі перенаправлення локального виводу (із sshзапущеного запуску wget) у файл.
Це, здається, працює, wgetвихід є лише трохи заплутаним (" збережено до - "), ви можете позбутися від нього, додавши -qдо wgetвиклику.
SOCKS_SERVERзмінна середовища не впливає на Ubuntu 14.04.