Squid è una popolare applicazione proxy e di cache. Serve principalmente come proxy forward, ma può anche essere usato come proxy inverso. Squid offre molte funzionalità ed è spesso utilizzato su reti di livello aziendale.
Questo tutorial ti mostrerà come impostare un semplice proxy HTTP con autenticazione usando Squid. I passaggi elencati in questo tutorial sono stati testati su Ubuntu 15.04 e 15.10.
ATTENZIONE: è necessario prestare molta attenzione durante la creazione di proxy. Gli hacker eseguono spesso la scansione di Internet pubblico alla ricerca di proxy aperti che li utilizzano per attività dannose. La maggior parte delle società di hosting sospenderà le tue istanze se ricevi troppi reclami, quindi assicurati di utilizzare un'autenticazione sufficiente, come una password sicura.
In questa esercitazione si presuppone che si stia utilizzando un VPS appena creato senza pacchetti installati.
Installazione
Innanzitutto, assicurarsi che la apt-get
libreria dei pacchetti sia aggiornata eseguendo il comando seguente. Questo assicurerà che siano stati installati gli ultimi pacchetti.
$ apt-get update
Una volta completato, è tempo di installare l' squid
applicazione e htpasswd
. Eseguire il comando seguente usando sudo
per installare entrambi i pacchetti.
$ sudo apt-get install squid3 apache2-utils
Al termine dell'installazione di Squid, ti suggerisco di creare una copia del file di configurazione originale creato durante l'installazione in quanto è un riferimento utile e ti consente di annullare tutte le modifiche.
$ sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.default
Successivamente, crea i file necessari a Squid per archiviare le credenziali degli account proxy.
$ sudo touch /etc/squid/squid_passwd
$ sudo chown proxy /etc/squid/squid_passwd
Configurazione
Aprire il file di configurazione di calamari per la modifica utilizzando un editor di testo, ad esempio nano
.
$ sudo nano /etc/squid/squid.conf
Aggiungere le seguenti righe al file in modo che gli utenti autenticati possano connettersi al proxy.
auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/squid_passwd
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
Inoltre, per nascondere l'IP della persona che si collega al proxy dalla visualizzazione nelle intestazioni HTTP, aggiungi le seguenti righe sotto quelle sopra.
forwarded_for off
request_header_access Allow allow all
request_header_access Authorization allow all
request_header_access WWW-Authenticate allow all
request_header_access Proxy-Authorization allow all
request_header_access Proxy-Authenticate allow all
request_header_access Cache-Control allow all
request_header_access Content-Encoding allow all
request_header_access Content-Length allow all
request_header_access Content-Type allow all
request_header_access Date allow all
request_header_access Expires allow all
request_header_access Host allow all
request_header_access If-Modified-Since allow all
request_header_access Last-Modified allow all
request_header_access Location allow all
request_header_access Pragma allow all
request_header_access Accept allow all
request_header_access Accept-Charset allow all
request_header_access Accept-Encoding allow all
request_header_access Accept-Language allow all
request_header_access Content-Language allow all
request_header_access Mime-Version allow all
request_header_access Retry-After allow all
request_header_access Title allow all
request_header_access Connection allow all
request_header_access Proxy-Connection allow all
request_header_access User-Agent allow all
request_header_access Cookie allow all
request_header_access All deny all
Il tuo file di configurazione di Squid ora dovrebbe assomigliare a questo:
Salva e chiudi il file.
Per creare utenti sul proxy, eseguire il comando seguente, sostituendolo youruser
con il nome utente desiderato. Richiederà la password due volte.
$ sudo htpasswd /etc/squid/squid_passwd youruser
Puoi creare altri utenti allo stesso modo.
Riavvia il servizio Squid.
$ sudo service squid restart
Usando il tuo proxy
Ora che Squid è configurato, puoi usarlo come proxy di inoltro. Configurare le "impostazioni Internet" del browser Web per utilizzare il proxy, inclusi il nome utente e la password generati in precedenza. Per verificare che il proxy funzioni, visitare un sito di rilevamento dell'indirizzo IP, come questo .
Upon success, you will notice a Vultr IP address being reported. Here is a screenshot from my demo server: