Uvod u Squid: korak-po-korak postavljanja

Logo lignje i Tux

Squid je još jedan filter na razini aplikacije koji mogu dopuniti iptable. Squid je predmemorirani web proxy server, vrlo je popularan i besplatan te je višeplatformalan. Iako se može koristiti za poboljšanje performansi internetskih veza, može se koristiti i u sigurnosne svrhe. Otkako je projekt započeo 90-ih, Squid je vrlo napredan i sada vam ga predstavljamo kako biste znali kako ga koristiti.

Za vašu instalaciju, možete pristupiti službena web stranica projekta i odaberite binarne pakete za vaš operativni sistem ili distribuciju. Ako ga želite instalirati iz paketa izvornog koda kompajliranjem, takođe imate tu mogućnost. Dostupne tarbal lopte su tar.gz, tar.bz2 i tar.xz. Ako ne znate kako instalirati, možete otići na članak o kojem uređujemo na ovom blogu kako instalirati bilo koji paket iz linuxa. Oko! Ako imate Debian ili izvedenicu i vidjeli ste da je instaliran sa sudo "apt-get install squid", možda ćete dobiti grešku jer morate "squid" zamijeniti s "squid3" da bi stupio na snagu .. .

Sada idemo direktno na objašnjavanje akcije nekoliko primjera kako koristiti Squid da zaštitimo našu opremu. Prije nego što bih želio objasniti da se Squid temelji na ACL-ovima, odnosno na Popisu za kontrolu pristupa ili na popisu za kontrolu pristupa, odnosno popisima koji detaljno opisuju dozvole za kontrolu u ovom slučaju mrežnog toka i implementiraju filtere slične onima iz iptables-a, ali na nivou aplikacije.

Obično se nakon instalacije uključi konfiguracijska datoteka koju možete pronaći u /etc/squid3/squid.conf a ovo je onaj koji moramo urediti uređivačem poput nano ili gedit. U njemu možemo generirati naša pravila filtriranja, iako postoje opcije cache_dir, cache_mem i http_port, potonje ćemo koristiti za naša sigurnosna pravila. Još jedan detalj je da ova datoteka navodi zadani port koji koristi usluga Squid, a koji je prema zadanim postavkama 3128 (pogledajte liniju ili direktivu "http_port 3128" i uklonite # da biste je aktivirali). Ako želite, možete ga promijeniti u drugi port poput 8080 ... I još jedna stvar koja je neophodna je konfiguriranje imena hosta, potražite komentar "TAG: Vidljivo_ime hosta" i vidjet ćete redak "visible_hostname" u koji morate staviti svoj ime hosta.

Da biste znali svoje ime hosta, možete upisati terminal:

hostname

A ime koje se pojavi dodajete ga u redak kojem ne treba prethoditi # kako ne bi bilo zanemareno kao komentar. Odnosno, izgledalo bi ovako:

visible_hostname hostname_which_you_appeared

Ako vidite konfiguracijsku datoteku, vidjet ćete da je jako komentirana, ako želite poništiti kreirano pravilo, liniju možete započeti s # i pretvorite ga u komentar, s kojim ga Squid ignorira, da biste ga vratili u upotrebu, brišete # i to je to. U stvari, postoji mnogo kreiranih i komentiranih pravila koja možete koristiti uklanjanjem # iz njega. Dakle, ne morate brisati i prepisivati ​​pravila. Pa, da biste dodali određeno pravilo ili filter, mora imati ACL i direktivu koja pokazuje šta treba učiniti.

Usput, kada uklonite # za aktiviranje pravila, pazite da ne ostavljate razmake na početku retka. Na primjer:

Pogrešan način:

http_port 3128

Ispravan način:

http_port 3128

Niste ništa čuli? Pa, ne brini, sa Primjer sve ćete vidjeti puno bolje. Zamislite ovo:

acl blokira url_regex kao facebook
http_access odbiti blokiranje

Što ovo pravilo znači je da će acl s imenom "blokiranje" zabraniti pristup URL-u koji sadrži "facebook" (stoga ako pokušamo ući na Facebook preskočit će grešku u pregledniku). Ako umjesto "zabranite" koristite "dopusti", dozvolili biste pristup umjesto da ga zabranite. Takođe možete koristiti! Da izuzmete, na primjer, pretpostavimo da želite dopustiti pristup listi1, ali ne i listi2:

http_access allow lista1 !lista2

Drugi primjer može biti stvaranje datoteke / etc / squid3 / ips dozvoljeno i u nju spremite listu IP-ova kojima želimo omogućiti pristup. Na primjer, pretpostavimo da je sadržaj dopuštenih ips-a:

192.168.30.1

190.169.3.250

192.168.1.26

A onda kreiramo ACL kako bi se omogućio pristup ovim IP-ovima:

acl nuevaregla src "/etc/squid3/ipspermitidas"

Prilično praktičan primjerZamislite da vaš računar koriste djeca mlađa od 18 godina i želite ograničiti pristup određenim web lokacijama sa sadržajem za odrasle. Prva stvar je stvoriti datoteku koja se zove / etc / squid3 / list sa sadržajem:

odrasla osoba

Porn

seks

poringa

A sada unutra  datoteku squid.conf postavljamo sljedeće pravilo:

acl denegados url_regex "/etc/squid3/lista"

http_access allow !denegados

Kao što vidiš koristili smo dozvolu što je u principu dopustiti, ali ako pogledate dodali smo! poreći, dakle, bilo bi ekvivalentno stavljanju:

acl denegados url_regex "/etc/squid3/lista"

http_access deny denegados

Takođe se mogu kreirati liste, ne samo imena domena ili IP-ova kao što smo to već uradili, možete staviti i domene i na primjer ograničiti pristup domenima kao što su .xxx, .gov itd. Pogledajmo primjer zasnovan na prethodnom pravilu. Kreiramo datoteku / etc / squid3 / domene koja ima:

.edu

.es

.org

A sada naše pravilo, da odbije pristup popisu zabranjenih web lokacija koje kreiramo, ali dozvoljavajući pristup URL-ovima s ovim domenima:

acl denegados url_regex "/etc/squid3/lista" 
acl permitidos dstdomain "/etc/squid3/dominios"

http_access allow !denegados dominios

PROŠIRENJE:

Žao mi je, kad sam vidio komentare, shvatio sam to Nedostaje mi glavno. Ograničio sam se na davanje primjera kako se koristi i zaboravio sam to reći za pokretanje Squid servera:

sudo service squid3 start

Prije nego što je krenulo sa "/etc/init.d/squid start", ali sada morate koristiti ovu drugu liniju koju sam stavio. Baš kao što se konfiguracijska datoteka više ne nalazi u /etc/squid/squid.conf, već u /etc/squid3/squid.conf. U redu, nakon što se kreiraju politike filtriranja i pokrenemo ga, moramo konfigurirati i pretraživač, na primjer, ako koristite Mozilla Firefox ili derivate, možete otići u konfiguracijski meni (znate, tri trake), a zatim na Postavke, Napredno i na kartici Mreža kliknite na Konfiguracija u odjeljku Povezivanje. Tamo odabiremo Ručnu konfiguraciju proxyja i stavimo IP i port koji koristi Squid, u ovom slučaju 3128. Također odaberite "Koristi isti proxy za sve" i zatvorite spremanje promjena.

Molim te Ne zaboravite ostaviti komentare, sumnje ili što god želite ... Iako je ovo udžbenik daleko iznad Squid-a, nadam se da će vam pomoći.