„SquidGuard“ konfigūravimas, turinio taisyklių įgalinimas ir „Squid“ žurnalų analizavimas – 6 dalis


LFCE (Linux Foundation Certified Engineer) yra profesionalas, turintis reikiamų įgūdžių diegti, valdyti ir šalinti tinklo paslaugas Linux sistemose ir yra atsakingas už visos sistemos architektūros projektavimas, diegimas ir nuolatinė priežiūra.

Pristatome „Linux Foundation“ sertifikavimo programą.

Ankstesniuose įrašuose aptarėme, kaip įdiegti Squid + squidGuard ir kaip sukonfigūruoti kalmarus, kad jie tinkamai tvarkytų arba apribotų prieigos užklausas. Prieš tęsdami būtinai peržiūrėkite šias dvi pamokas ir įdiekite „Squid“ ir „SquidGuard“, nes jie nustato foną ir kontekstą tam, ką aptarsime šiame įraše: „Squidguard“ integravimas į veikiančią „Squid“ aplinką, kad būtų įgyvendintos juodojo sąrašo taisyklės ir turinio valdymas. tarpinis serveris.

Reikalavimai

  1. Įdiekite „Squid“ ir „SquidGuard“ – 1 dalis
  2. „Squid“ įgaliotojo serverio su ribota prieiga konfigūravimas – 5 dalis

Kam galiu/negaliu naudoti SquidGuard?

Nors squidGuard tikrai sustiprins ir pagerins Squid funkcijas, svarbu pabrėžti, ką jis gali ir ko negali.

SquidGuard gali būti naudojamas:

  1. apriboti kai kurių vartotojų leistiną prieigą prie žiniatinklio iki priimtinų/gerai žinomų žiniatinklio serverių ir (arba) URL adresų sąrašo, tuo pačiu uždrausdami prieigą prie kitų į juodąjį sąrašą įtrauktų žiniatinklio serverių ir (arba) URL.
  2. blokuoti prieigą prie svetainių (pagal IP adresą arba domeno pavadinimą), atitinkančių įprastų posakių ar žodžių sąrašą kai kuriems vartotojams.
  3. reikalauti naudoti domenų vardus/uždrausti naudoti IP adresą URL.
  4. peradresuoti užblokuotus URL į klaidų ar informacijos puslapius.
  5. naudoti skirtingas prieigos taisykles, pagrįstas paros laiku, savaitės diena, data ir kt.
  6. įgyvendinti skirtingas taisykles skirtingoms vartotojų grupėms.

Tačiau nei squidGuard, nei Squid negali būti naudojami:

  1. analizuoti tekstą dokumentuose ir veikti pagal rezultatą.
  2. aptikti arba blokuoti įterptąsias scenarijų kalbas, tokias kaip JavaScript, Python arba VBscript HTML kode.

Juodieji sąrašai – pagrindai

Juodieji sąrašai yra esminė squidGuard dalis. Iš esmės tai yra paprasto teksto failai, kurie leis įdiegti turinio filtrus pagal konkrečius raktinius žodžius. Yra ir laisvai prieinamų, ir komercinių juodųjų sąrašų, o atsisiuntimo nuorodas galite rasti squidguard juodųjų sąrašų projekto svetainėje.

Šioje pamokoje parodysiu, kaip integruoti „Shala Secure Services“ pateiktus juoduosius sąrašus į „squidGuard“ diegimą. Šie juodieji sąrašai yra nemokami asmeniniam/nekomerciniam naudojimui ir yra atnaujinami kasdien. Šiandien jie apima daugiau nei 1 700 000 įrašų.

Patogumui sukurkime katalogą juodojo sąrašo paketui atsisiųsti.

mkdir /opt/3rdparty
cd /opt/3rdparty 
wget http://www.shallalist.de/Downloads/shallalist.tar.gz

Naujausia atsisiuntimo nuoroda visada pasiekiama, kaip paryškinta toliau.

Pašalinę naujai atsisiųstą failą, naršysime iki juodojo sąrašo (BL) aplanko.

tar xzf shallalist.tar.gz 
cd BL
ls

Katalogus, rodomus ls išvestyje, galite laikyti atgalinio sąrašo kategorijomis, o atitinkamus (pasirenkamus) pakatalogius – subkategorijas, besileidžiančias iki konkrečių URL ir domenų, kurie yra išvardyti failuose. URL ir domenai. Daugiau informacijos rasite toliau pateiktame paveikslėlyje.

Juodųjų sąrašų diegimas

Visas juodojo sąrašo paketas arba atskiros kategorijos įdiegiamas nukopijuojant BL katalogą arba vieną iš jo pakatalogių į /var/ lib/squidguard/db katalogą.

Žinoma, iš pradžių galėjote atsisiųsti juodąjį sąrašą į šį katalogą, tačiau anksčiau paaiškintas metodas suteikia jums daugiau galimybių valdyti, kurios kategorijos turi būti blokuojamos (ar ne) konkrečiu metu.

Toliau parodysiu, kaip įdiegti anonvpn, hacking ir chat juoduosius sąrašus ir kaip sukonfigūruoti squidGuard, kad juos naudotų.

1 veiksmas: rekursyviai nukopijuokite anonvpn, hacking ir chat katalogus iš /opt/3rdparty/ BL į /var/lib/squidguard/db.

cp -a /opt/3rdparty/BL/anonvpn /var/lib/squidguard/db
cp -a /opt/3rdparty/BL/hacking /var/lib/squidguard/db
cp -a /opt/3rdparty/BL/chat /var/lib/squidguard/db

2 veiksmas: naudokite domenų ir URL failus, kad sukurtumėte squidguard duomenų bazės failus. Atminkite, kad ši komanda veiks kuriant .db failus visuose įdiegtuose juoduosiuose sąrašuose – net kai tam tikroje kategorijoje yra 2 ar daugiau subkategorijų.

squidGuard -C all

3 veiksmas: pakeiskite katalogo /var/lib/squidguard/db/ nuosavybės teisę ir jo turinį įgaliotajam vartotojui, kad Squid galėtų skaityti duomenų bazės failus.

chown -R proxy:proxy /var/lib/squidguard/db/

4 veiksmas: sukonfigūruokite Squid naudoti squidGuard. Naudosime Squid direktyvą url_rewrite_program, esančią /etc/squid/squid.conf, kad nurodytume Squid naudoti squidGuard kaip URL perrašytuvą/peradresavimo priemonę.

Pridėkite šią eilutę prie squid.conf ir įsitikinkite, kad /usr/bin/squidGuard yra teisingas absoliutus kelias jūsų atveju.

which squidGuard
echo "url_rewrite_program $(which squidGuard)" >> /etc/squid/squid.conf
tail -n 1 /etc/squid/squid.conf

5 veiksmas: pridėkite reikiamas direktyvas į squidGuard konfigūracijos failą (esantį /etc/squidguard/squidGuard.conf).

Norėdami gauti daugiau paaiškinimų, žr. aukščiau esančią ekrano kopiją po šiuo kodu.

src localnet {
        ip      192.168.0.0/24
}

dest anonvpn {
        domainlist      anonvpn/domains
        urllist         anonvpn/urls
}
dest hacking {
        domainlist      hacking/domains
        urllist         hacking/urls
}
dest chat {
        domainlist      chat/domains
        urllist         chat/urls
}

acl {
        localnet {
                        pass     !anonvpn !hacking !chat !in-addr all
                        redirect http://www.lds.org
                }
        default {
                        pass     local none
        }
}

6 veiksmas: iš naujo paleiskite Squid ir išbandykite.

service squid restart 		[sysvinit / Upstart-based systems]
systemctl restart squid.service 	[systemctl-based systems]

Atidarykite žiniatinklio naršyklę vietiniame tinkle esančiame kliente ir naršykite į svetainę, esančią bet kuriame iš juodojo sąrašo failų (domenų arba URL – toliau pateiktame pavyzdyje naudosime http://spin.de/ pokalbį). ) ir būsite nukreipti į kitą URL, šiuo atveju www.lds.org.

Galite patikrinti, ar užklausa buvo pateikta įgaliotajam serveriui, bet buvo atmesta (301 http atsakymas – Perkelta visam laikui) ir buvo peradresuota į www.lds.org.

Apribojimų pašalinimas

Jei dėl kokios nors priežasties jums reikia įgalinti kategoriją, kuri anksčiau buvo užblokuota, pašalinkite atitinkamą katalogą iš /var/lib/squidguard/db ir pakomentuokite (arba ištrinkite) susijusį acl faile squidguard.conf.

Pavyzdžiui, jei norite įgalinti domenus ir URL, įtrauktus į juodąjį sąrašą anonvpn kategorijoje, turėsite atlikti šiuos veiksmus.

rm -rf /var/lib/squidguard/db/anonvpn

Ir redaguokite squidguard.conf failą taip.

Atkreipkite dėmesį, kad dalys, paryškintos geltonai po PRIEŠ, buvo ištrintos PO.

Konkrečių domenų ir URL įtraukimas į baltąjį sąrašą

Kartais galbūt norėsite leisti tam tikrus URL arba domenus, bet ne visą į juodąjį sąrašą įtrauktą katalogą. Tokiu atveju turėtumėte sukurti katalogą pavadinimu myWhiteLists (arba bet kurį pasirinktą pavadinimą) ir įterpti norimus URL ir domenus po /var/lib/squidguard/db/myWhiteLists failuose, atitinkamai pavadintuose URL ir domenais.

Tada inicijuokite naujas turinio taisykles, kaip anksčiau,

squidGuard -C all

ir modifikuokite squidguard.conf taip.

Kaip ir anksčiau, geltonai paryškintos dalys nurodo pakeitimus, kuriuos reikia pridėti. Atminkite, kad eilutė myWhiteLists turi būti pirma eilutėje, kuri prasideda raide „pass“.

Galiausiai nepamirškite iš naujo paleisti Squid, kad pritaikytumėte pakeitimus.

Išvada

Atlikę šiame vadove aprašytus veiksmus, turėtumėte turėti galingą turinio filtrą ir URL peradresavimo priemonę, veikiančią kartu su Squid tarpiniu serveriu. Jei diegdami/konfigūruodami susiduriate su problemomis arba turite klausimų ar komentarų, galbūt norėsite peržiūrėti „squidGuard“ žiniatinklio dokumentus, bet visada galite parašyti mums naudodami toliau pateiktą formą ir mes su jumis susisieksime, kai tik galima.