GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come configurare Squid Proxy Server su Ubuntu 20.04 LTS

Nel nostro post precedente Come installare Squid Proxy Server su Linux, ti abbiamo fornito l'introduzione di base del server Squid e la sua installazione nel sistema Linux. In questo post, daremo seguito alla configurazione del server proxy Squid. Tratteremo i seguenti argomenti:

  1. Configurazione di Squid per l'ascolto su una porta diversa
  2. Configurazione hostname per il server proxy Squid
  3. Impostazione della dimensione della memoria cache di Squid
  4. Specifica dei server dei nomi DNS da utilizzare
  5. Negare l'accesso a determinati siti Web nel server proxy Squid
  6. Configurazione dell'autenticazione del client Squid Proxy
  7. Configurazione dei client per la connessione tramite il server proxy Squid

Nota: I comandi e le procedure discussi in questo articolo sono stati testati su Ubuntu 20.04 LTS (Fossa focale). Gli stessi comandi e procedure sono validi anche per la distribuzione Debian.

Prerequisiti

  • Macchina con Ubuntu o Debian installato
  • Utente Sudo

Configurazione di Squid Proxy Server su Linux

Il file di configurazione del server proxy Squid si trova in /etc/squid/squid.conf .elenco. Questo file contiene le direttive attraverso le quali viene configurato il server proxy Squid.

Configurazione di Squid per l'ascolto su una porta diversa

Per impostazione predefinita, il server proxy Squid è in ascolto sulla porta 3128 per il traffico proveniente dalle macchine client. Tuttavia, puoi configurarlo per l'ascolto su una porta diversa da quella predefinita utilizzando http_port direttiva.

Modifica la configurazione del calamaro usando il comando seguente:

$ sudo nano /etc/squid/squid.conf

Ora trova la voce sottostante nel file di configurazione.

Nota: Puoi usare Ctrl+W per cercare qualsiasi riga. Premi Ctrl+W, digita le parole chiave e premi Invio.

http_port 3128

Ora sostituisci 3128 con il numero di porta che vuoi che il server proxy Squid ascolti, diciamo 3155 :

http_port 3155

Ora, riavvia il servizio del server proxy squid per rendere effettive le modifiche:

$ sudo service squid restart

Configurazione nome host per il server proxy Squid

È possibile configurare il nome host per il server proxy Squid se non è in grado di determinare il nome host della macchina da solo. Per configurare il nome host, puoi utilizzare il nome_host_visibile direttiva. Questo nome viene utilizzato da Squid nei messaggi di errore, URL interni, elenchi di directory FTP, ecc.

Modifica la configurazione del calamaro usando il comando seguente:

$ sudo nano /etc/squid/squid.conf

Ora aggiungi la seguente voce nel file di configurazione sostituendo con qualsiasi nome che desideri impostare come nome host per il server proxy Squid. Non è necessario utilizzare il nome host effettivo del tuo sistema.

visible_hostname <host_name>

Ad esempio, per impostare "linuxways ” come nome host del server proxy Squid, la voce sarebbe:

visible_hostname linuxways 

Una volta terminate le configurazioni, salva ed esci dal file di configurazione.

Ora, riavvia il servizio proxy Squid per rendere effettive le modifiche alla configurazione.

$ sudo service squid restart

Nel caso in cui il client Squid riceva una pagina di errore, vedrà il nome host elencato in fondo alla pagina web.

Impostazione della dimensione della memoria cache di Squid

Squid memorizza nella cache i contenuti visitati di frequente. La dimensione predefinita della memoria cache di Squid è 256 MB. Per modificare la dimensione della memoria cache di Squid, cache_mem viene utilizzata la direttiva.

Modifica il file di configurazione utilizzando il comando seguente:

$ sudo nano /etc/squid/squid.conf

Quindi cerca la voce seguente nel file di configurazione e sostituisci 256 con la quantità da impostare per la dimensione della memoria cache.

cache_mem 256 MB

Ad esempio, per impostare la dimensione della cache su 512 MB, la voce verrebbe modificata in:

cache_mem 512 MB

Una volta terminate le configurazioni, salva ed esci dal file di configurazione.

Ora riavvia il servizio calamari per applicare le modifiche:

$ sudo service squid restart

Specifica dei server dei nomi DNS da utilizzare

Per impostazione predefinita, Squid utilizza /etc/resolv.conf per risolvere i nomi di dominio. Se desideri che Squid utilizzi un server dei nomi diverso, puoi farlo utilizzando i dns_nameservers direttiva. Modifica la configurazione del calamaro usando il comando seguente:

$ sudo nano /etc/squid/squid.conf

Ora aggiungi la voce sottostante nel file di configurazione sostituendo:

dns_nameservers <IP address of DNS server>

Ad esempio, per impostare 8.8.4.4 come server dei nomi, la voce sarebbe:

dns_nameservers 8.8.8.8 8.8.4.4

Una volta terminate le configurazioni, salva ed esci dal file.

Ora riavvia il servizio calamari per applicare le modifiche:

$ sudo service squid restart

Controllo dell'accesso al server proxy

Come funziona Squid ACL

Per il controllo degli accessi, gli ACL vengono utilizzati in combinazione con la direttiva sul controllo degli accessi. ACL da solo non è di alcuna utilità, aiutano solo a identificare le richieste degli utenti in base a varie regole. Per consentire o negare l'accesso, sono combinati con http_access direttiva.

Per definire ACL, la sintassi è:

acl NAME TYPE value

Esempio: Consenti il ​​traffico LAN attraverso il server proxy Squid

Per abbinare il traffico proveniente dalla LAN 192.168.5.0/24 , dovremo creare una regola ACL nel file di configurazione di Squid:

acl myacl src 192.168.5.0/24

Una volta definito l'ACL, puoi utilizzare http_access direttiva per consentire/negare l'accesso. Ecco la sintassi per http_access direttiva:

http_access allow|deny NAME

Dove NAME identifica il traffico a cui vuoi consentire/negare l'accesso.

Per consentire il traffico identificato nell'ACL, dovrai aggiungere il seguente http_access direttiva nel file di configurazione di Squid:

http_access allow myacl

Configurazione delle sorgenti proxy per l'accesso a Internet

Innanzitutto, configureremo le fonti a cui vogliamo consentire l'accesso a Internet tramite il server proxy. Ad esempio, potresti voler consentire l'accesso al server proxy solo dalla rete interna.

1. Per configurare le sorgenti consentite, modifica il file di configurazione del calamaro:

$ sudo nano /etc/squid/squid.conf

2. Ora, cerca la voce acl localnet src .

Nota: Per cercare una voce nell'editor Nano, premi Ctrl+w e digita l'espressione che desideri cercare. Nel caso dell'esempio sopra, premi Ctr+w e digita acl localnet src come mostrato nella schermata seguente.

3. Qui vedrai il numero di voci per diversi intervalli di indirizzi IP. Qui, aggiungi una voce per la tua rete come segue:

acl localnet src subnet_ID/subnet_mask

Ad esempio, la tua rete locale funziona su 192.168.72.0/24 sottorete. In questo caso, la voce sarebbe:

acl localnet src 192.168.72.0/255.255.255.0

4. Ora utilizzando http_access direttiva, consenti le fonti identificate dall'acl denominato localnet definito sopra. La direttiva http_access è già definita nel configurato, devi solo trovarla e decommentarla.

Cerca la voce #http_access consenti localnet e poi decommentalo rimuovendo il # carattere.

http_access allow localnet

Ora salva ed esci dal file di configurazione di squid.

3. Ora riavvia il servizio squid usando il comando seguente:

$ sudo service squid restart

Negare l'accesso a determinati siti Web nel server proxy Squid

Per negare l'accesso ad alcuni siti Web nel server proxy Squid, crea un file ed elenca tutti i siti Web a cui desideri negare l'accesso.

$ sudo nano /etc/squid/deniedsites.acl

Ora elenca i siti a cui vuoi negare l'accesso, quindi salva ed esci dal file.

.msn.com

.yahoo.com

.bbc.com

Quindi modifica il file di configurazione di squid usando il comando seguente:

$ sudo nano /etc/squid/squid.conf

Ora crea una regola ACL per i siti Web negati e menziona il file contenente l'elenco dei siti Web negati.

acl denied_sites dstdomain “/etc/squid/deniedsites.acl”

La regola ACL siti_negati corrisponderà a tutte le richieste destinate ai siti web elencati in “/etc/squid/deniedsites.acl ” file.

Ora dovrai aggiungere http_access direttiva per negare i siti Web identificati dalla regola ACL di cui sopra denominata denied_sites . Aggiungi la riga sottostante nel file di configurazione di Squid:

http_access deny denied_sites

Una volta terminate le configurazioni, salva ed esci dal file.

Ora riavvia il servizio calamari usando il comando seguente:

$ sudo service squid restart

Configurazione dell'autenticazione client Squid Proxy

Con il server proxy Squid, possiamo aggiungere l'autenticazione di base basata sull'utente per una certa sicurezza. Per farlo, utilizzeremo htpasswd programma fornito con il server HTTP Apache. Quindi creeremo un file che conterrà nomi utente e password per l'autenticazione.

1. Innanzitutto, dovremo installare Apache2-utils. Utilizzare il comando seguente per farlo:

$ apt install -y apache2-utils

2. Ora crea il file passwd in /etc/squid directory per memorizzare le password:

$ touch /etc/squid/passwd

3. Utilizzare il comando seguente per impostare la proprietà sull'utente "proxy":

$ chown proxy: /etc/squid/passwd

4. Ora aggiungi un utente in /etc/squid/passwd file:

htpasswd /etc/squid/passwd tin

Digitare una password e quindi confermare inserendola nuovamente. Ora l'utente e la sua password crittografata verranno salvati in /etc/squid/passwd file.

5. Modifica /etc/squid/squid.conf file utilizzando il comando seguente:

$ sudo nano /etc/squid/squid.conf

Ora aggiungi le righe sottostanti nel file:

auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwdauth_param basic children 5

auth_param basic realm Squid Basic Authentication

auth_param basic credentialsttl 2 hours

acl auth_users proxy_auth REQUIRED

http_access allow auth_users

Once you are done with the configurations, save and exit the configuration file.

Configurazione dei client per la connessione tramite il server proxy Squid

In questa sezione, configureremo i client per la connessione tramite il server proxy Squid.

1. Apri un browser web nel tuo sistema. Qui useremo Firefox browser.

2. Vai nell'angolo in alto a destra del browser e fai clic sull'icona delle tre barre orizzontali. Quindi fai clic su Opzioni .

3. Quindi, nella barra di ricerca, digita rete . Quando viene visualizzato il risultato della ricerca, fai clic su Impostazioni come si può vedere nello screenshot qui sotto.

4. Seleziona la Configurazione proxy manuale pulsante di opzione. Quindi digita l'indirizzo IP del server proxy Squid nel Proxy HTTP campo e numero di porta in Porta campo. Inoltre, controlla Utilizza anche questo proxy per FTP e HTTPS casella di controllo. Quindi fai clic su OK .

Ora per verificare se il server Squid funziona, prova ad accedere a qualsiasi sito Web nel tuo browser. Verrà visualizzata una finestra di dialogo di autenticazione. Inserisci il nome utente e la password di squid che hai creato in precedenza e fai clic su OK .

Ora dovresti essere in grado di accedere al sito web richiesto.

Ora prova ad accedere a un altro sito Web che hai bloccato utilizzando l'elenco di accesso. Il browser mostrerà la seguente pagina che dice "Il server proxy sta rifiutando le connessioni".

Questo è tutto ciò che c'è da fare! In questo articolo, hai imparato come configurare il server proxy Squid su un sistema Linux. Abbiamo appena discusso le configurazioni di base. C'è molto di più che puoi fare con il server proxy Squid. Visita la documentazione ufficiale per ulteriori informazioni.


Ubuntu
  1. Come configurare e installare il server proxy Squid su Ubuntu 18.04

  2. Come installare e configurare Squid Proxy su Ubuntu 18.04

  3. Come installare e configurare Squid Proxy su Ubuntu 20.04

  4. Come installare Squid Proxy Server su Ubuntu 18.04 LTS

  5. Come installare Squid Proxy su Ubuntu 20.04 LTS

Come configurare un server e un client NTP su Ubuntu 20.04 LTS

Come eseguire l'aggiornamento a Ubuntu Server 22.04 LTS

Installa Squid Proxy Server su Ubuntu 20.04 LTS Linux

Come installare e configurare il server Web Lighttpd su Ubuntu 20.04 LTS

Come installare e configurare il server DNS su Ubuntu 16.04 LTS

Come installare il server proxy Squid su Ubuntu 18.04