Mică introducere despre Proxy Squid
Squid este un proxy de cache pentru Web care suportă HTTP, HTTPS, FTP și altele. Reduce lățimea de bandă și îmbunătățește timpul de răspuns prin memorarea și reutilizarea paginilor web solicitate frecvent. Squid are controale extinse de acces și este un excelent accelerator de server. Rulează pe majoritatea sistemelor de operare disponibile, inclusiv Windows, și este licențiat sub GNU GPL.
Este foarte rapid și flexibil. De aceea, este unul dintre cele mai răspândite proxi-uri web. Este utilizat în principal în medii mari, cum ar fi universități și corporații mari.
Cu toate acestea, poate fi la fel de util și pentru afacerile mici și chiar pentru un utilizator individual.
Pentru a instala și configura Serverul Proxy Squid pe CentOS 7/8, urmați acești pași:
Pasul 1: Actualizați sistemul
Înainte de a instala Squid Proxy, este recomandat să actualizați sistemul CentOS pentru a vă asigura că aveți cele mai recente pachete de software și actualizări de securitate. Deschideți un terminal sau conectați-vă prin SSH la serverul CentOS și rulați următoarea comandă:
sudo yum update
Pasul 2: Instalați Proxy Squid
Pentru a instala Squid Proxy, rulați următoarea comandă:
sudo yum install squid
Răspundeți cu ‘y’ la prompt pentru a confirma instalarea și a permite descărcarea și instalarea pachetelor necesare.
Pasul 3: Configurați Proxy Squid
După ce Squid Proxy este instalat, trebuie să configurați setările de bază. Pentru a edita fișierul de configurare Squid, rulați următoarea comandă:
sudo nano /etc/squid/squid.conf
Aici puteți modifica setările de proxy în funcție de necesitățile dvs. Asigurați-vă că verificați și configurați opțiunile precum portul de ascultare, restricțiile de acces, cache-ul și altele.
Pasul 4: Porniți și activați Proxy Squid
După configurarea fișierului squid.conf, porniți și activați Squid Proxy utilizând următoarele comenzi:
sudo systemctl start squid
sudo systemctl enable squid
Aceste comenzi vor porni serviciul Squid Proxy la momentul actual și îl vor activa pentru a porni automat la repornirea serverului.
Pasul 5: Configurați firewall-ul
Dacă aveți un firewall activ pe server, asigurați-vă că ați permis traficul pentru portul Proxy Squid. Puteți utiliza comanda firewall-cmd
pentru a adăuga o regulă de permisiune pentru portul Squid. De exemplu:
sudo firewall-cmd --zone=public --add-port=3128/tcp --permanent
sudo firewall-cmd --reload
Pasul 6: Testați configurarea
Pentru a testa dacă Squid Proxy funcționează corespunzător, puteți configura un browser sau alte aplicații pentru a utiliza serverul proxy. Asigurați-vă că utilizați adresa IP a serverului CentOS și portul specificat în fișierul de configurare Squid.
curl -x http://<squid-proxy-server-IP>:3128 -L http://virtono.com
Pentru a configura autentificarea proxy-ului, urmați acești pași suplimentari după instalarea și configurarea serverului proxy Squid:
Creați un fișier de autentificare
Creați un fișier care va conține informațiile de autentificare pentru utilizatorii proxy. De exemplu, puteți utiliza comanda htpasswd
.
yum -y install httpd-tools
touch /etc/squid/passwd
chown squid /etc/squid/passwd
Puteți utiliza comanda htpasswd
pentru a crea acest fișier. Asigurați-vă că înlocuiți squid
cu numele utilizatorului dorit.
htpasswd /etc/squid/passwd squid
Actualizați fișierul de configurare Squid
Deschideți fișierul de configurare Squid pentru a adăuga setările de autentificare. Utilizați un editor de text pentru a edita fișierul /etc/squid/squid.conf
.
sudo nano /etc/squid/squid.conf
Adăugați următoarele linii la sfârșitul fișierului:
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic credentialsttl 2 hours
auth_param basic utf8 on
auth_param basic realm Please enter your credentials for the Proxy Server!
auth_param basic casesensitive on
acl auth_access proxy_auth REQUIRED
http_access allow auth_access
Reporniți Proxy Squid
Reporniți serviciul Squid Proxy pentru a aplica noile setări.
sudo systemctl restart squid
Pentru a bloca site-uri web folosind Squid Proxy pe CentOS, urmați acești pași:
Pasul 1: Deschideți fișierul de configurare Squid
Deschideți fișierul de configurare Squid folosind un editor de text. Fișierul se află la adresa /etc/squid/squid.conf
.
sudo nano /etc/squid/squid.conf
Pasul 2: Definiți un ACL pentru site-urile blocate
Definiți o listă de control al accesului (ACL) pentru a specifica site-urile web pe care doriți să le blocați. Adăugați următoarea linie în fișierul de configurare:
acl blocked_sites dstdomain "/etc/squid/blocked_sites.txt"
Această linie creează un ACL numit blocked_sites
și specifică că lista de site-uri blocate va fi stocată în fișierul /etc/squid/blocked_sites.txt
. Puteți alege un alt locație pentru fișier, dacă doriți.
Pasul 3: Creați un fișier care listează site-urile blocate
Creați fișierul /etc/squid/blocked_sites.txt
folosind un editor de text. Adăugați câte un site web pe fiecare linie pe care doriți să îl blocați. De exemplu:
example.com
facebook.com
twitter.com
Pasul 4: Refuzați accesul la site-urile blocate
Adăugați următoarele linii în fișierul de configurare pentru a refuza accesul la site-urile blocate:
http_access deny blocked_sites
Această linie instruiește Squid să refuze accesul la orice site web listat în ACL-ul blocked_sites
.
Pasul 5: Reporniți Squid Proxy
Reporniți serviciul Squid Proxy pentru a aplica modificările.
sudo systemctl restart squid