Come usare Wget con il proxy

Come usare Wget con il proxy
GNU Wget è uno strumento di comando per il download di file in modo non interattivo. Non è interattivo perché può eseguire in background quando l'utente non viene accettato. Questa è una grande flessibilità con Wget in quanto la maggior parte dei browser Web richiede che l'utente venga effettuato l'accesso mentre qualsiasi attività è in corso. Può funzionare con protocolli HTTP, HTTPS e FTP e supporta anche il download di file tramite proxy HTTP.

Il comando WGET è simile al comando Curl e può essere installato su Linux/Unix, Mac OS, Windows. Se un'attività di download è bloccata a metà strada, puoi riprenderlo da dove è stato lasciato fuori.

Cosa copriremo?

Questa guida esplorerà il comando WGET e imparerà come usarlo con il server proxy di calamari.

Utilizzando il comando wget per scaricare un file

Wget è uno strumento molto diretto. Se utilizzato senza alcuna opzione, Wget recupererà le risorse dall'URL specificato e le scaricherà nella directory di lavoro corrente. Ad esempio, guarda l'esempio seguente:

$ wget https: // tldp.org/ldp/intro-linux/intro-linux.PDF

Il file sopra viene scaricato nella directory da dove veniva utilizzato il comando wget.

Impostazione del proxy per Wget

Ora passiamo al nostro argomento principale oggi: configura Wget con il proxy. Un server proxy presenta molti vantaggi, di cui la sicurezza è la preoccupazione principale. In questa guida, utilizzeremo il server proxy Squid, che è già configurato per la nostra rete. Ecco la configurazione dei calamari nel nostro caso, cambialo per soddisfare le tue esigenze:

Passo 1. Abbiamo installato calamari sulla nostra macchina Kali Linux con l'IP 192.168.186.161. Se non hai ancora installato i calamari, puoi farlo semplicemente eseguendo il comando:

$ sudo apt install squid

Passo 2. Assicurati che Squid sia in esecuzione con il comando:

$ sudo systemctl status squid

Passaggio 3. Ora modifica la configurazione di Squid secondo la tua rete. Abbiamo impostato i calamari per consentire ai dispositivi sulla nostra rete di utilizzare i calamari. Per questo, puoi semplicemente aprire il file di configurazione:

$ sudo nano/etc/squid/squid.conf

e aggiungi una riga 'ACL LocalNet SRC' insieme all'IP o all'indirizzo di rete che si desidera consentire l'accesso. Qui nella foto qui sotto, puoi vedere che abbiamo permesso alla nostra rete 192.168.186.1/24

Inoltre, trova e imposta il "Http_access" A "permettere tutto" come mostrato di seguito:

Infine, riavvia il server Squid con:

$ sudo systemctl riavviare i calamari

OK, questo è sufficiente per la configurazione di calamari. Passeremo ora alla configurazione del nostro client da dove eseguiremo "Wget".

Passaggio 4. In questo passaggio, il nostro lavoro principale inizia per la configurazione di "Wget". Abbiamo selezionato un'altra macchina sulla nostra rete. Questo è il nostro Ubuntu 20.04 macchina con IP 192.168.186.150. Ora apri un terminale qui e apri il file di configurazione WGET:

$ sudo nano /etc /wgetrc

E individuare le tre righe:

#https_proxy = http: // proxy.Yoyodyne.com: 18023/
#http_proxy = http: // proxy.Yoyodyne.com: 18023/
#ftp_proxy = http: // proxy.Yoyodyne.com: 18023/

Passaggio 5. Ora rompere la linea che desideri utilizzare per il tuo proxy. Nel nostro caso stiamo usando solo il proxy HTTPS, quindi lo configureremo con il seguente formato:

https_proxy = proxy_server_address: proxy_port

Nel nostro caso, sembra:

https_proxy = http: // 192.168.186.161: 3128/

Passaggio 6. Dopo aver modificato il file WGETRC, andiamo avanti per verificare se la nostra configurazione funziona o meno. Scarica nuovamente un file usando Wget:

$ wget https: // tldp.org/ldp/intro-linux/intro-linux.PDF

Questa volta possiamo vedere che il WGET utilizza una connessione proxy per connettersi al server.

Impostazione del proxy per WGET con autenticazione di calamari

In questa sezione, configureremo Wget per utilizzare l'autenticazione dei calamari. Se non passiamo le credenziali, Wget non scaricherà le risorse. Facciamolo adesso.

Passo 1. Installa il pacchetto seguente:

$ sudo apt Installa Apache2-Utils

Passo 2. Crea un file passwd all'interno della directory '/etc/squid/'

$ sudo touch/etc/squid/passwd

Impostare la proprietà di questo file Proxy utente Squid:

$ sudo chown proxy/etc/squid/passwd

Passaggio 3. Aggiungeremo ora un nuovo utente, 'nuovo utente' a calamari le cui credenziali verranno utilizzate per l'autenticazione:

$ sudo htpasswd/etc/squid/passwd newuser

Il comando sopra chiederà di inserire una password per l'utente "newuser".

Passaggio 4. Apri il file di configurazione dei calamari:

$ sudo nano/etc/squid/squid.conf

Passaggio 5. Ora cerca la riga contenente la stringa "Auth_Param Basic Program" e farlo sembrare sotto:

Auth_Param Basic Program/usr/lib/squid/base_ncsa_auth/etc/squid/passwd
Auth_param Basic Children 5
autenticazione di base del regno di base dell'auth_param
auth_param credentialstttl di base 2 ore
ACL AUTH_USERS proxy_auth richiesto

Se non trovi nessuna delle righe, quindi aggiungile.

Passaggio 6. Inoltre, aggiungi la seguente riga:

http_access consenti l'auth_users

E sotto la riga sopra, aggiungere o cambiare "http_access Consenti a tutti "di" http_access negare tutto " come mostrato di seguito:

Passaggio 7. Infine, riavvia il servizio di calamari:

$ sudo systemctl riavviare i calamari

Ora prima prova a eseguire wget senza credenziali dell'utente:

$ wget https: // tldp.org/ldp/intro-linux/intro-linux.PDF

Questa volta, fornisce un errore richiesto dall'autenticazione come: "Tunneling proxy non riuscita: autenticazione proxy richiesta per stabilire la connessione SSL."

Ora esegui il comando WGET con le credenziali dell'utente che abbiamo appena aggiunto nel passaggio 3:

$ wget --Proxy-User = newUser --Proxy-Password = 123 https: // tldp.org/ldp/intro-linux/intro-linux.PDF

Fantastico, questa volta, il comando Wget funziona come un incantesimo.

Più da imparare ..

Questo completa la nostra dimostrazione di impostazione di Wget con e senza proxy autenticato. Spero che tu abbia imparato troppe cose nuove in questo tutorial. Una cosa di cui fare attenzione è che a volte la configurazione dei pacchetti può variare per diverse distribuzioni. E.G., Squid può avere un file di configurazione leggermente diverso su Kali Linux e Ubuntu. In tali casi, il file di configurazione dovrebbe essere cambiato saggiamente.