Android

Cum se instalează și se configurează proxy-ul squid pe ubuntu 18.04

► Cum Verific Conexiunea la Internetul in Ubuntu ? | Invata Linux Ep. 6

► Cum Verific Conexiunea la Internetul in Ubuntu ? | Invata Linux Ep. 6

Cuprins:

Anonim

Squid este un proxy de memorie în cache cu caracteristici complete care acceptă protocoale de rețea populare precum HTTP, HTTPS, FTP și multe altele. Squid este folosit mai ales pentru îmbunătățirea performanței serverului web, prin memorarea în cache a cererilor repetate, filtrarea traficului web și accesarea conținutului geo-restricționat.

Acest tutorial vă va parcurge procesul de configurare a unui proxy Squid pe Ubuntu 18.04 și configurarea browserelor web Firefox și Google Chrome pentru a-l utiliza.

Instalarea Squid pe Ubuntu

Pachetul Squid este inclus în depozitele implicite Ubuntu 18.04. Pentru instalare, introduceți următoarele comenzi ca utilizator sudo:

sudo apt update sudo apt install squid

După terminarea instalării, serviciul Squid va porni automat.

Pentru a verifica dacă instalarea a avut succes și serviciul Squid este în funcțiune, tastați următoarea comandă care va imprima starea serviciului:

sudo systemctl status squid

● squid.service - LSB: Squid HTTP Proxy version 3.x Loaded: loaded (/etc/init.d/squid; generated) Active: active (running) since Thu 2019-06-27 11:45:17 UTC…

Configurarea Squid

Squid poate fi configurat prin editarea fișierului /etc/squid/squid.conf . De asemenea, puteți utiliza fișiere separate cu opțiuni de configurare care pot fi incluse folosind directiva „include”.

Fișierul de configurare conține comentarii care descriu ce face fiecare opțiune de configurare.

Înainte de a face orice modificări, este bine să faceți o copie de siguranță a fișierului de configurare original:

sudo cp /etc/squid/squid.conf{,.orginal}

Pentru a edita fișierul, deschideți-l în editorul de text:

sudo nano /etc/squid/squid.conf

În mod implicit, Squid este configurat să asculte pe portul 3128 pe toate interfețele de rețea de pe server.

/etc/squid/squid.conf

# Squid normally listens to port 3128 http_port IP_ADDR:PORT

Rularea Squid pe toate interfețele și pe portul implicit ar trebui să fie bine pentru majoritatea utilizatorilor.

În Squid, puteți controla modul în care clienții pot accesa resursele web utilizând Listele de control acces (ACL).

În mod implicit, Squid permite accesul numai din localhost.

Dacă toți clienții care vor utiliza proxy au o adresă IP statică, puteți crea un ACL care va include IP-urile permise.

În loc să adăugați adrese IP în fișierul principal de configurare, vom crea un nou fișier dedicat care va reține IP-urile:

/etc/squid/allowed_ips.txt

192.168.33.1 # All other allowed IPs

Odată terminat, deschideți fișierul principal de configurare și creați un nou ACL numit allowed_ips (prima linie evidențiată) și permiteți accesul la acel ACL folosind directiva http_access (a doua linie evidențiată):

/etc/squid/squid.conf

#… acl allowed_ips src "/etc/squid/allowed_ips.txt" #… #http_access allow localnet http_access allow localhost http_access allow allowed_ips # And finally deny all other access to this proxy http_access deny all

Ordinea regulilor http_access este importantă. Asigurați-vă că adăugați linia înainte ca http_access deny all .

Directiva http_access funcționează în mod similar cu regulile firewall-ului. Squid citește regulile de sus în jos, iar când o regulă se potrivește cu regulile de mai jos nu sunt procesate.

Ori de câte ori faceți modificări la fișierul de configurare, trebuie să reporniți serviciul Squid pentru ca modificările să aibă efect:

sudo systemctl restart squid

Autentificare Squid

Squid poate utiliza diferite versiuni laterale, inclusiv Samba, LDAP și HTTP de bază pentru autentificarea utilizatorilor autentificați.

În acest tutorial, vom configura Squid pentru a utiliza auth-ul de bază. Este o metodă simplă de autentificare încorporată în protocolul

Vom folosi openssl pentru a genera parolele și pentru a adăuga username:password de username:password pereche de username:password la /etc/squid/htpasswd folosind comanda tee după cum se arată mai jos:

printf "USERNAME:$(openssl passwd -crypt PASSWORD)\n" | sudo tee -a /etc/squid/htpasswd

Să creăm un utilizator numit „josh” cu parola „ Sz$Zdg69 ”:

printf "josh:$(openssl passwd -crypt 'Sz$Zdg69')\n" | sudo tee -a /etc/squid/htpasswd

josh:RrvgO7NxY86VM

Acum, când utilizatorul a fost creat, următorul pas este să activați autentificarea de bază HTTP și să includeți fișierul htpasswd .

Deschideți configurația principală și adăugați următoarele:

/etc/squid/squid.conf

#… auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/htpasswd auth_param basic realm proxy acl authenticated proxy_auth REQUIRED #… #http_access allow localnet http_access allow localhost http_access allow authenticated # And finally deny all other access to this proxy http_access deny all

Primele trei linii evidențiate creează un nou ACL numit authenticated iar ultima linie evidențiată permite accesul utilizatorilor autentificați.

Reporniți serviciul Squid:

sudo systemctl restart squid

Configurarea firewallului

Presupunând că utilizați UFW pentru a gestiona firewallul, va trebui să deschideți portul Squid teg. Pentru a activa acest profil „Squid” care include reguli pentru porturile implicite Squid.

sudo ufw allow 'Squid'

Pentru a verifica tipul de stare:

sudo ufw status

Rezultatul va semăna cu următoarele:

Status: active To Action From -- ------ ---- 22/tcp ALLOW Anywhere Squid ALLOW Anywhere 22/tcp (v6) ALLOW Anywhere (v6) Squid (v6) ALLOW Anywhere (v6) Dacă Squid rulează pe un alt port, care nu este implicit, de exemplu, 8888 , puteți permite traficul pe acel port cu: sudo ufw allow 8888/tcp .

Configurarea browserului dvs. pentru a utiliza proxy

Acum că aveți instalat Squid, ultimul pas este să configurați browserul preferat pentru al utiliza.

Firefox

Pașii de mai jos sunt identici pentru Windows, macOS și Linux.

  1. În colțul din dreapta sus, faceți clic pe pictograma hamburger pentru a deschide meniul Firefox:

    Faceți clic pe linkul ⚙ Preferences .

    Derulați în jos la secțiunea Network Settings și faceți clic pe butonul Settings…

    Se va deschide o fereastră nouă.

    • Selectați butonul radio de Manual proxy configuration Introduceți adresa IP a serverului dvs. Squid în câmpul HTTP Host și câmpul 3128 în Port Selectați caseta de selectare Use this proxy server for all protocols Faceți clic pe butonul OK pentru a salva setările.

În acest moment, Firefox-ul dvs. este configurat și puteți naviga pe internet prin proxy-ul Squid. Pentru a-l verifica, deschideți google.com , tastați „ce este ip-ul meu” și ar trebui să vedeți adresa IP a serverului dvs. Squid.

Pentru a reveni la setările implicite, mergeți la Network Settings , selectați butonul radio Use system proxy settings și salvați setările.

Există mai multe pluginuri care vă pot ajuta, de asemenea, să configurați setările proxy ale Firefox, cum ar fi FoxyProxy.

Google Chrome

Google Chrome utilizează setările implicite ale proxy-ului sistemului. În loc să schimbați setările proxy ale sistemului de operare, puteți utiliza fie un addon, cum ar fi SwitchyOmega, sau puteți porni browserul Chrome din linia de comandă.

Pentru a lansa Chrome folosind un profil nou și conectați-vă la serverul Squid, utilizați următoarea comandă:

Linux:

/usr/bin/google-chrome \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"

macOS:

"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"

Windows:

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" ^ --user-data-dir="%USERPROFILE%\proxy-profile" ^ --proxy-server="http://SQUID_IP:3128"

Profilul va fi creat automat dacă nu există. Astfel puteți rula mai multe instanțe Chrome în același timp.

Pentru a confirma că serverul proxy funcționează corect, deschideți google.com și tastați „ce este ip-ul meu”. IP-ul afișat în browserul dvs. ar trebui să fie adresa IP a serverului dvs.

Concluzie

Ați învățat cum să instalați Squid pe Ubuntu 18.04 și să configurați browserul pentru al utiliza.

Squid este unul dintre cele mai populare servere de memorie în cache proxy. Îmbunătățește viteza serverului web și vă poate ajuta să restricționați accesul utilizatorilor la Internet.

proxy ubuntu