La maggior parte dei comandi di Linux che l'accesso a Internet lo sguardo nei HTTP_PROXY
, FTP_PROXY
e SOCKS_SERVER
variabili di ambiente per le informazioni proxy. Quindi, per fare qualcosa come il tuo esempio, esegui:
export SOCKS_SERVER=1.2.3.4:8000
wget http://superuser.com/q/262956/66003
La sintassi per HTTP_PROXY
ed FTP_PROXY
è leggermente diversa:
export HTTP_PROXY=http://1.2.3.4:3128/
export FTP_PROXY=ftp://1.2.3.4:25/
L'ambiente desktop GNOME predefinito incluso con le impostazioni proxy di Ubuntu ha un pulsante Applica a livello di sistema , che imposterà automaticamente quelle variabili di ambiente per te. Altrimenti, puoi aggiungere le export
righe al tuo ~/.bashrc
file per renderle effettive ad ogni accesso.
Sfortunatamente, wget
SOCKS non supporta affatto. Puoi usare curl
, incluso in Ubuntu, per ottenere molte cose wget
. Sfortunatamente, non controlla SOCKS_SERVER
, mentre controlla HTTP_PROXY
(come fa wget
). Per usare l'arricciatura per scaricare questa pagina con un server SOCKS5 (eseguendo la risoluzione DNS con quel server) e salvarlo come superuser.html
, eseguire questo:
curl --socks5-hostname 1.2.3.4:8000 http://superuser.com/q/262956/66003 > superuser.html
Se si desidera curl
utilizzare sempre quel proxy SOCKS, è possibile creare un alias di shell. Aggiungi la seguente riga al tuo ~/.bashrc
:
alias curl='curl --socks5-hostname 1.2.3.4:8000'
Dovrai riavviare il tuo terminale o eseguire quella linea come se fosse un comando per rendere effettive le modifiche.
wget
conSOCKS_SERVER
, ma non sembra il lavoro.wget
leggere solo le impostazioni proxy da/etc/wgetrc
. Anche io ho provatolinks
, va bene specificarelinks -socks-proxy 127.0.0.1:7878 <url>
, ma non è riuscito a utilizzareexport SOCKS_SERVER=...; links <url>
.