Большинство команд Linux, имеющих доступ к Интернету, ищут информацию о прокси в переменных среды HTTP_PROXY
, FTP_PROXY
и SOCKS_SERVER
. Итак, чтобы сделать что-то вроде вашего примера, просто запустите:
export SOCKS_SERVER=1.2.3.4:8000
wget http://superuser.com/q/262956/66003
Синтаксис для HTTP_PROXY
и FTP_PROXY
немного отличается:
export HTTP_PROXY=http://1.2.3.4:3128/
export FTP_PROXY=ftp://1.2.3.4:25/
Среда рабочего стола GNOME по умолчанию, включенная в настройки прокси-сервера Ubuntu, имеет кнопку Apply System-Wide , которая автоматически установит эти переменные среды для вас. В противном случае вы можете добавить строки export
в файл ~/.bashrc
чтобы они вступали в силу при каждом входе в систему.
К сожалению, wget
вообще не поддерживает SOCKS. Вы можете использовать curl
, который входит в Ubuntu, для достижения многих целей, которые делает wget
. К сожалению, он не проверяет SOCKS_SERVER
, но проверяет HTTP_PROXY
(как это делает wget
). Чтобы использовать curl для загрузки этой страницы с сервера SOCKS5 (выполнение DNS-разрешения на этом сервере) и сохранить ее как superuser.html
, выполните следующее:
curl --socks5-hostname 1.2.3.4:8000 http://superuser.com/q/262956/66003 > superuser.html
Если вы хотите, чтобы curl
всегда использовал этот прокси-сервер SOCKS, вы можете создать псевдоним оболочки. Просто добавьте следующую строку в ваш ~/.bashrc
:
alias curl='curl --socks5-hostname 1.2.3.4:8000'
Вам нужно будет перезапустить свой терминал или запустить эту строку, как если бы это была команда, чтобы изменения вступили в силу.