Squid è un proxy Web HTTP per la memorizzazione nella cache e l'inoltro. Calamari ha molte funzionalità e viene utilizzato in una varietà di situazioni come l'accelerazione del server Web memorizzando nella cache le richieste ripetute, la memorizzazione nella cache di ricerche Web e DNS, il filtraggio del traffico, il blocco dei siti Web, ecc. È scritto in C++ e distribuito in GNU GPL licenza.
Calamari è considerato il software di controllo dei contenuti più affidabile ed è stato utilizzato da molte organizzazioni negli ultimi 2 decenni.
In questo articolo, stiamo installando il server proxy Squid su Rocky Linux 8 o AlmaLinux 8. Anche se ci sono troppi articoli simili già disponibili sul web. Ma scriviamo questo articolo per includere i passaggi minori (ma importanti), che di solito vengono trascurati dagli altri autori.
Questo articolo enfatizza fortemente l'installazione e la configurazione iniziale del server proxy Squid su Rocky Linux 8 o AlmaLinux 8. Pertanto, se sei disposto a configurare alcune impostazioni avanzate nel proxy Squid, ti consigliamo vivamente di acquistare Squid Proxy Server 3.1:Guida per principianti di Packt Publishing .
Specifiche ambientali:
Abbiamo fornito una macchina virtuale Rocky Linux 8 o AlmaLinux 8 con le seguenti specifiche.
- CPU – 3,4 Ghz (1 Core)
- Memoria – 1 GB
- Archiviazione – 20 GB
- Sistema operativo – Rocky Linux 8, AlmaLinux 8
- Nome host – squid-proxy-01.example.com
- Indirizzo IP – 192.168.116.214/24
Installazione di Squid Web Proxy su Rocky Linux 8 o AlmaLinux 8 :
Connettiti con squid-proxy-01.example.com utilizzando ssh come root utente.
Il pacchetto software Squid è disponibile nei repository yum standard, pertanto stiamo installando il proxy Squid utilizzando yum comando.
[[email protected] ~]# yum install -y squid
...
Installed:
squid.x86_64 7:3.5.20-12.el7_6.1
Dependency Installed:
libecap.x86_64 0:1.0.0-1.el7
perl.x86_64 4:5.16.3-294.el7_6
perl-Carp.noarch 0:1.26-244.el7
perl-Compress-Raw-Bzip2.x86_64 0:2.061-3.el7
perl-Compress-Raw-Zlib.x86_64 1:2.061-4.el7
perl-DBI.x86_64 0:1.627-4.el7
perl-Data-Dumper.x86_64 0:2.145-3.el7
perl-Digest.noarch 0:1.17-245.el7
perl-Digest-MD5.x86_64 0:2.52-3.el7
perl-Encode.x86_64 0:2.51-7.el7
perl-Exporter.noarch 0:5.68-3.el7
perl-File-Path.noarch 0:2.09-2.el7
perl-File-Temp.noarch 0:0.23.01-3.el7
perl-Filter.x86_64 0:1.49-3.el7
perl-Getopt-Long.noarch 0:2.40-3.el7
perl-HTTP-Tiny.noarch 0:0.033-3.el7
perl-IO-Compress.noarch 0:2.061-2.el7
perl-Net-Daemon.noarch 0:0.48-5.el7
perl-PathTools.x86_64 0:3.40-5.el7
perl-PlRPC.noarch 0:0.2020-14.el7
perl-Pod-Escapes.noarch 1:1.04-294.el7_6
perl-Pod-Perldoc.noarch 0:3.20-4.el7
perl-Pod-Simple.noarch 1:3.28-4.el7
perl-Pod-Usage.noarch 0:1.63-3.el7
perl-Scalar-List-Utils.x86_64 0:1.27-248.el7
perl-Socket.x86_64 0:2.010-4.el7
perl-Storable.x86_64 0:2.45-3.el7
perl-Text-ParseWords.noarch 0:3.29-4.el7
perl-Time-HiRes.x86_64 4:1.9725-3.el7
perl-Time-Local.noarch 0:1.2300-2.el7
perl-constant.noarch 0:1.27-2.el7
perl-libs.x86_64 4:5.16.3-294.el7_6
perl-macros.x86_64 4:5.16.3-294.el7_6
perl-parent.noarch 1:0.225-244.el7
perl-podlators.noarch 0:2.5.1-3.el7
perl-threads.x86_64 0:1.87-4.el7
perl-threads-shared.x86_64 0:1.43-6.el7
squid-migration-script.x86_64 7:3.5.20-12.el7_6.1
Complete!
Abilita e avvia il servizio proxy Squid.
[[email protected] ~]# systemctl enable --now squid.service
Created symlink from /etc/systemd/system/multi-user.target.wants/squid.service to /usr/lib/systemd/system/squid.service.
Consenti il servizio proxy Squid nel firewall Rocky Linux 8 o AlmaLinux 8.
[[email protected] ~]# firewall-cmd --permanent --add-service=squid
success
[[email protected] ~]# firewall-cmd --reload
success
Configura Squid Web Proxy su Rocky Linux 8 o AlmaLinux 8 :
Il file di configurazione globale per il proxy web Squid è /etc/squid/squid.conf . Possiamo personalizzarlo secondo il nostro requisito.
[[email protected] ~]# vi /etc/squid/squid.conf
Aggiungi le seguenti direttive al suo interno.
dns_v4_first on
Riavvia il servizio proxy Squid per caricare le modifiche.
[[email protected] ~]# systemctl restart squid
Configura il browser del cliente per utilizzare Squid Proxy:
Avvia il browser del client e aggiungi il nostro proxy Squid nelle sue impostazioni.
Per fare ciò, apri Internet Explorer e vai su Opzioni Internet .
Vai a Connessioni Tab e fai clic su Impostazioni LAN .
Inserisci l'indirizzo IP e la porta del proxy Squid nella finestra di dialogo sopra.
Fare clic su OK per uscire da Opzioni Internet .
Sfoglia https://ahmermansoor.blogspot.com in Internet Explorer .
Il sito Web di cui sopra è stato servito tramite il nostro server proxy Squid.
Configura l'autenticazione del client Squid:
Possiamo utilizzare l'autenticazione di base HTTP per configurare l'autenticazione basata sull'utente per il server proxy Squid.
Installa httpd-tools pacchetto utilizzando yum comando.
[[email protected] ~]# yum install -y httpd-tools
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.ges.net.pk
* extras: mirrors.ges.net.pk
* updates: mirrors.ges.net.pk
Resolving Dependencies
--> Running transaction check
---> Package httpd-tools.x86_64 0:2.4.6-90.el7.centos will be installed
--> Processing Dependency: libaprutil-1.so.0()(64bit) for package: httpd-tools-2.4.6-90.el7.centos.x86_64
--> Processing Dependency: libapr-1.so.0()(64bit) for package: httpd-tools-2.4.6-90.el7.centos.x86_64
--> Running transaction check
---> Package apr.x86_64 0:1.4.8-5.el7 will be installed
---> Package apr-util.x86_64 0:1.5.2-6.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
httpd-tools x86_64 2.4.6-90.el7.centos base 91 k
Installing for dependencies:
apr x86_64 1.4.8-5.el7 base 103 k
apr-util x86_64 1.5.2-6.el7 base 92 k
Transaction Summary
================================================================================
Install 1 Package (+2 Dependent packages)
Total download size: 286 k
Installed size: 584 k
Downloading packages:
(1/3): httpd-tools-2.4.6-90.el7.centos.x86_64.rpm | 91 kB 00:00
(2/3): apr-util-1.5.2-6.el7.x86_64.rpm | 92 kB 00:01
(3/3): apr-1.4.8-5.el7.x86_64.rpm | 103 kB 00:02
--------------------------------------------------------------------------------
Total 96 kB/s | 286 kB 00:02
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : apr-1.4.8-5.el7.x86_64 1/3
Installing : apr-util-1.5.2-6.el7.x86_64 2/3
Installing : httpd-tools-2.4.6-90.el7.centos.x86_64 3/3
Verifying : apr-1.4.8-5.el7.x86_64 1/3
Verifying : httpd-tools-2.4.6-90.el7.centos.x86_64 2/3
Verifying : apr-util-1.5.2-6.el7.x86_64 3/3
Installed:
httpd-tools.x86_64 0:2.4.6-90.el7.centos
Dependency Installed:
apr.x86_64 0:1.4.8-5.el7 apr-util.x86_64 0:1.5.2-6.el7
Complete!
Crea il file della password e aggiungi squiduser utente al suo interno.
[[email protected] ~]# htpasswd -c /etc/squid/passwd squiduser
New password:
Re-type new password:
Adding password for user squiduser
Cambia proprietario della passwd file.
[[email protected] ~]# chown squid.squid /etc/squid/passwd
Ora, modifica il file di configurazione di Squid e aggiungi le impostazioni di autenticazione del client.
[[email protected] ~]# vi /etc/squid/squid.conf
Aggiungi le seguenti direttive dopo gli ACL delle porte.
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd
auth_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
Riavvia il servizio proxy Squid per rendere effettive le modifiche.
[[email protected] ~]# systemctl restart squid
Apri l'URL https://ahmermansoor.blogspot.com nel browser del client.
Questa volta richiede l'autenticazione.
Tutorial sull'utilizzo del comando di timeout su Linux
Creazione di una blacklist personalizzata per bloccare i siti Web tramite Squid Proxy:
Crea un file di blacklist per bloccare i siti web.
[[email protected] ~]# vi /etc/squid/blacklist
e aggiungi i seguenti URL al suo interno.
.yahoo.com
.facebook.com
Modifica il file di configurazione del proxy Squid per aggiungere le impostazioni della blacklist.
[[email protected] ~]# vi /etc/squid/squid.conf
aggiungi le seguenti direttive dopo gli ACL delle porte.
acl bad_urls dstdomain "/etc/squid/blacklist"
http_access deny bad_urls
Riavvia il servizio proxy Squid per caricare le modifiche.
[[email protected] ~]# systemctl restart squid
Sfoglia l'URL http://www.yahoo.com nel browser del cliente.
Puoi vedere che il http://www.yahoo.com è stato bloccato dal nostro server proxy Squid.
Abbiamo installato con successo il server proxy Squid su Rocky Linux 8 o AlmaLinux 8