GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare il server proxy Squid su Ubuntu 20.04

Squid è un'applicazione proxy completa basata su Linux utilizzata principalmente per filtrare il traffico, la sicurezza e le ricerche DNS. Viene anche utilizzato per migliorare le prestazioni del server Web memorizzando nella cache le risorse. In parole povere, un server Squid è un computer che funge da intermediario tra un computer desktop e Internet che reindirizza le richieste dei client in entrata a un server in cui vengono archiviati i dati per un più facile recupero. Supporta diversi protocolli tra cui HTTP, FTP, TLS, SSL, Internet Gopher e HTTPS.

In questo tutorial, ti mostreremo come installare e configurare il server proxy Squid sul server Ubuntu 20.04.

Prerequisiti

  • Un server che esegue Ubuntu 20.04.
  • Una password di root è configurata sul server.

Per iniziare

Prima di iniziare, dovrai aggiornare i pacchetti di sistema all'ultima versione. Puoi aggiornarli con il seguente comando:

apt-get update -y

Una volta aggiornati tutti i pacchetti, riavvia il sistema per applicare le modifiche.

Installa Squid Proxy

Per impostazione predefinita, il pacchetto Squid è disponibile nel repository predefinito di Ubuntu 20.04. Puoi installarlo usando il seguente comando:

apt-get install squid -y

Una volta installato Squid, puoi controllare lo stato del servizio Squid con il seguente comando:

systemctl status squid

Dovresti ottenere il seguente output:

? squid.service - Squid Web Proxy Server
     Loaded: loaded (/lib/systemd/system/squid.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2020-08-23 12:00:24 UTC; 11s ago
       Docs: man:squid(8)
    Process: 49265 ExecStartPre=/usr/sbin/squid --foreground -z (code=exited, status=0/SUCCESS)
    Process: 49282 ExecStart=/usr/sbin/squid -sYC (code=exited, status=0/SUCCESS)
   Main PID: 49283 (squid)
      Tasks: 4 (limit: 2353)
     Memory: 16.4M
     CGroup: /system.slice/squid.service
             ??49283 /usr/sbin/squid -sYC
             ??49285 (squid-1) --kid squid-1 -sYC
             ??49287 (logfile-daemon) /var/log/squid/access.log
             ??49288 (pinger)

Aug 23 12:00:24 ubuntu2004 squid[49285]: Max Swap size: 0 KB
Aug 23 12:00:24 ubuntu2004 squid[49285]: Using Least Load store dir selection
Aug 23 12:00:24 ubuntu2004 squid[49285]: Set Current Directory to /var/spool/squid
Aug 23 12:00:24 ubuntu2004 squid[49285]: Finished loading MIME types and icons.
Aug 23 12:00:24 ubuntu2004 squid[49285]: HTCP Disabled.
Aug 23 12:00:24 ubuntu2004 squid[49285]: Pinger socket opened on FD 14
Aug 23 12:00:24 ubuntu2004 squid[49285]: Squid plugin modules loaded: 0
Aug 23 12:00:24 ubuntu2004 squid[49285]: Adaptation support is off.
Aug 23 12:00:24 ubuntu2004 squid[49285]: Accepting HTTP Socket connections at local=[::]:3128 remote=[::] FD 12 flags=9
Aug 23 12:00:25 ubuntu2004 squid[49285]: storeLateRelease: released 0 objects

Per impostazione predefinita, Squid è in ascolto sulla porta 3128. Puoi verificarlo con il seguente comando:

netstat -plunt | grep 3128

Dovresti vedere il seguente output:

tcp6       0      0 :::3128                 :::*                    LISTEN      50017/(squid-1)

Una volta terminato, puoi procedere al passaggio successivo.

Impostazione dell'autenticazione basata su IP

Esistono diversi modi per limitare l'accesso a Internet da parte del client. In questa sezione, imposteremo Squid per l'autenticazione in base all'indirizzo IP del cliente.

Puoi farlo modificando il file di configurazione predefinito di Squid:

nano /etc/squid/squid.conf

Aggiungi la seguente riga all'inizio del file:

acl client1 src 192.168.10.10
acl client2 src 192.168.10.11
http_access allow client1 client2

Salva e chiudi il file quando hai finito. Quindi riavvia il servizio Squid per applicare le modifiche:

systemctl restart squid

Dove:

  • cliente1 e cliente2 è il nome che ha identificato i computer client.
  • 192.168.10.10 e 192.168.10.11 è l'indirizzo IP del computer client.

Ora, solo i computer configurati con IP 192.168.10.10 e 192.168.10.11 possono accedere a Internet.

Impostazione dell'autenticazione basata sull'utente

Puoi anche impostare Squid per l'autenticazione in base a utente e password. Per farlo, dovrai installare il pacchetto utils di Apache nel tuo sistema.

Esegui il comando seguente per installare il pacchetto di utilità di Apache:

apt install apache2-utils -y

Una volta installato, crea un primo utente con il seguente comando:

htpasswd /etc/squid/passwd client1

Ti verrà chiesto di impostare una password come mostrato di seguito:

New password: 
Re-type new password: 
Adding password for user client1

Quindi, crea un secondo utente con il seguente comando:

htpasswd /etc/squid/passwd client2

Imposta la tua password come mostrato di seguito:

New password: 
Re-type new password: 
Adding password for user client2

Successivamente, puoi verificare entrambi gli utenti utilizzando il seguente comando:

cat /etc/squid/passwd

Dovresti ottenere il seguente output:

client1:$apr1$CPlx8eVt$NJq3CT/hzfDCnAZRypIq5/
client2:$apr1$XYxQ2npc$IW0Nqjp15O5WYCo/wCFlB0

Quindi, apri il file di configurazione predefinito di Squid:

nano /etc/squid/squid.conf

Rimuovi le prime tre righe che hai aggiunto nella sezione precedente e aggiungi le seguenti righe all'inizio del file:

auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/passwd
acl ncsa_users proxy_auth REQUIRED
http_access allow ncsa_users

Salva e chiudi il file. Quindi, riavvia il servizio proxy Squid per applicare le modifiche:

systemctl restart squid

Ora dovrai fornire nome utente e password per accedere a Internet.

Imposta l'autenticazione combinata

Puoi anche impostare uno Squid per autenticare un client in base all'indirizzo IP e al nome utente/password.

Apri il file di configurazione predefinito di Squid:

nano /etc/squid/squid.conf

Trova le seguenti righe che hai aggiunto nella sezione precedente:

auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/passwd
acl ncsa_users proxy_auth REQUIRED
http_access allow ncsa_users

E sostituiscili con le seguenti righe:

acl client1 src 192.168.10.10
acl client2 src 192.168.10.11
auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/passwd
acl ncsa_users proxy_auth REQUIRED
http_access allow client1 client2 ncsa_users

Salva e chiudi il file al termine, quindi riavvia il servizio Squid per applicare le modifiche:

systemctl restart squid

Configura Squid per rendere anonimo il traffico

Successivamente, dovrai aggiungere alcune regole per mascherare gli indirizzi IP dei client dai server che ricevono traffico dal tuo proxy HTTP Squid.

Puoi farlo modificando il file di configurazione predefinito di Squid:

nano /etc/squid/squid.conf

Aggiungi le seguenti righe all'inizio del file:

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

Salva e chiudi il file al termine, quindi riavvia il servizio Squid per applicare le modifiche:

systemctl restart squid

Verifica proxy Squid

Successivamente, dovrai definire il tuo server proxy nel tuo browser web Mozilla.

Vai al sistema client, apri il browser web Mozilla e fai clic su Modifica => Preferenze come mostrato di seguito:

Fai clic sulla Rete Impostazioni sezione e fai clic su Impostazioni . Dovresti vedere la seguente pagina:

Seleziona il Manuale proxy configurazione pulsante di opzione, inserisci l'indirizzo IP del tuo server Squid nel campo Host HTTP e 3128 nel campo Porta e seleziona la casella di controllo Usa questo server proxy per tutti i protocolli e fai clic su OK pulsante per salvare le impostazioni.

Ora, il tuo browser è configurato per navigare in Internet tramite il proxy Squid.

Per verificarlo, digita l'URL https://www.whatismyip.com/. Ti verrà chiesto di fornire un nome utente e una password come mostrato di seguito:

Fornisci il nome utente e la password del server proxy Squid che hai creato in precedenza e fai clic su OK pulsante. Dovresti vedere la seguente pagina:

Nella pagina sopra, dovresti vedere l'indirizzo IP del tuo server Squid invece dell'indirizzo IP del tuo computer client.

Conclusione

Congratulazioni! hai installato e configurato correttamente il server proxy Squid sul server Ubuntu 20.04. Puoi anche configurare il proxy Squid per limitare il sito Web specifico in base alla parola, al dominio e agli IP. Per maggiori informazioni, visita la documentazione ufficiale di Squid.


Ubuntu
  1. Come installare il server proxy Squid su CentOS 7

  2. Come installare Zimbra 8.6 su Ubuntu 14.04 Server

  3. Come installare e configurare Squid Proxy su Ubuntu 20.04

  4. Come installare Squid Proxy Server su Ubuntu 18.04 LTS

  5. Installa il server proxy Squid su Ubuntu 14.04

Come installare Zabbix su Ubuntu 18.04

Come installare MySQL 8.0 su Ubuntu 18.04

Come configurare Squid Proxy Server su Ubuntu 20.04 LTS

Installa Squid Proxy Server su Ubuntu 20.04 LTS Linux

Come installare il server proxy Squid su Ubuntu 18.04

Come installare Squid Proxy su Ubuntu 20.04