Більшість 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'
Вам потрібно буде перезапустити термінал або запустити цей рядок так, ніби це була команда, щоб зміни набрали чинності.
wget
зSOCKS_SERVER
, але це , здається , не працюють.wget
читати лише налаштування проксі/etc/wgetrc
. Я також спробувавlinks
вказатиlinks -socks-proxy 127.0.0.1:7878 <url>
, але це не вдається використовуватиexport SOCKS_SERVER=...; links <url>
.