Konfiguriranje SquidGuard, omogočanje pravil o vsebini in analiza dnevnikov lignjev - 6. del


LFCE ( Linux Foundation Certified Engineer ) je strokovnjak, ki ima potrebna znanja za namestitev, upravljanje in odpravljanje težav z omrežnimi storitvami v sistemih Linux in je odgovoren za načrtovanje, izvajanje in stalno vzdrževanje sistemske arhitekture v celoti.

Predstavljamo vam Linux Foundation Certification Program.

V prejšnjih objavah smo razpravljali o tem, kako namestiti Squid + squidGuard in kako nastaviti lignje za pravilno obdelavo ali omejitev zahtev za dostop. Preden nadaljujete, preglejte te dve vadnici in namestite Squid in squidGuard, saj določajo ozadje in kontekst za to, kar bomo obravnavali v tem prispevku: integracija squidguard v delujoče lignjevo okolje za izvajanje pravil črnih seznamov in nadzor vsebine nad proxy strežnik.

  1. Namestite Squid in SquidGuard - 1. del
  2. Konfiguriranje proxy strežnika Squid z omejenim dostopom - 5. del

Za kaj lahko/česa ne morem uporabljati SquidGuard?

Čeprav bo squidGuard zagotovo izboljšal in izboljšal funkcije Squid, je pomembno poudariti, kaj lahko in česa ne.

squidGuard se lahko uporablja za:

  1. nekaterim uporabnikom dovolite spletni dostop na seznam sprejetih/dobro znanih spletnih strežnikov in/ali URL-jev, hkrati pa zavrnite dostop do drugih spletnih strežnikov in/ali URL-jev.
  2. blokirati dostop do spletnih mest (po naslovu IP ali imenu domene), ki se ujema s seznamom regularnih izrazov ali besed za nekatere uporabnike.
  3. zahtevajo uporabo domenskih imen/prepovejo uporabo naslova IP v URL-jih.
  4. blokirane URL-je preusmerite na strani z napakami ali z informacijami.
  5. uporabite ločena pravila dostopa glede na čas dneva, dan v tednu, datum itd.
  6. uvesti različna pravila za različne uporabniške skupine.

Niti squidGuard niti Squid se ne moreta uporabljati za:

  1. analizirajte besedilo v dokumentih in delujte v rezultatu.
  2. znotraj kode HTML zaznati ali blokirati vdelane skriptne jezike, kot so JavaScript, Python ali VBscript.

Črni seznami so bistveni del squidGuard. V bistvu gre za navadne besedilne datoteke, ki vam bodo omogočile uporabo filtrov vsebine na podlagi določenih ključnih besed. Obstajajo tako prosto dostopni kot komercialni črni seznami, povezave za prenos pa najdete na spletnem mestu projekta črnih seznamov squidguard.

V tej vadnici vam bom pokazal, kako vključiti črne sezname, ki jih ponuja Shalla Secure Services, v vašo namestitev squidGuard. Ti črni seznami so brezplačni za osebno/nekomercialno uporabo in se dnevno posodabljajo. Od danes vključujejo več kot 1.700.000 vnosov.

Za naše udobje ustvarimo imenik za prenos paketa črnih seznamov.

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

Najnovejša povezava za prenos je vedno na voljo, kot je poudarjeno spodaj.

Po odstranitvi zvezdice iz novo prenesene datoteke bomo poiskali mapo s črnim seznamom ( BL ).

# tar xzf shallalist.tar.gz 
# cd BL
# ls

Imeniki, prikazani v izhodnih podatkih ls , so kategorije kategorij za nazaj in njihovi ustrezni (neobvezni) podimeniki kot podkategorije, ki se spuščajo vse do določenih URL-jev in domen, ki so navedeni v datotekah. URL-ji in domene . Za dodatne podrobnosti glejte spodnjo sliko.

Namestitev celotnega paketa črnega seznama ali posameznih kategorij se izvede s kopiranjem imenika BL ali enega od njegovih podimenikov v /var/lib/squidguard/db .

Seveda bi lahko v ta imenik najprej prenesli tarball na črni seznam , toda prej pojasnjeni pristop vam daje večji nadzor nad tem, katere kategorije je treba ob določenem času blokirati (ali ne).

Nato vam pokažem, kako namestite črne sezname anonvpn , vdiranje in klepet ter kako konfigurirati squidGuard, da jih uporablja.

1. korak : Rekurzivno kopirajte imenike anonvpn , vdiranje in klepet iz /opt/3rdparty/BL do /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. korak : Z datotekami domen in URL-jev ustvarite datoteke zbirke podatkov Squidguard-a. Upoštevajte, da bo naslednji ukaz deloval za ustvarjanje datotek .db za vse nameščene črne sezname - tudi če ima določena kategorija 2 ali več podkategorij.

# squidGuard -C all

3. korak : Spremenite lastništvo imenika /var/lib/squidguard/db/ in njegove vsebine uporabniku proxy, tako da bo Squid lahko bral datoteke zbirke podatkov.

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

4. korak : Konfigurirajte Squid za uporabo squidGuard. Squidovo direktivo url_rewrite_program bomo uporabili v /etc/squid/squid.conf , da bomo Squidu povedali, da squidGuard uporablja kot prepisovalnik/preusmerjevalnik URL-jev.

V squid.conf dodajte naslednjo vrstico in se prepričajte, da je /usr/bin/squidGuard prava absolutna pot v vašem primeru.

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

5. korak : dodajte potrebne smernice v konfiguracijsko datoteko squidGuard (ki se nahaja v /etc/squidguard/squidGuard.conf ).

Za nadaljnja pojasnila si oglejte zgornji posnetek zaslona za naslednjo kodo.

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. korak : Znova zaženite Squid in preizkusite.

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

Odprite spletni brskalnik v odjemalcu v lokalnem omrežju in poiščite spletno mesto, ki ga najdete v kateri koli od datotek s črnega seznama (domene ali URL-ji - v naslednjem primeru bomo uporabili klepet http://spin.de/ ) in preusmerjeni boste na drug URL, v tem primeru www.lds.org .

Preverite lahko, da je bila zahteva posredovana strežniku proxy, vendar je bila zavrnjena (301 http odgovor - Trajno premaknjeno ) in je bila namesto tega preusmerjena na www.lds.org .

Če morate iz nekega razloga omogočiti kategorijo, ki je bila v preteklosti že blokirana, odstranite ustrezni imenik iz /var/lib/squidguard/db in komentirajte (ali izbrišite) povezani acl v datoteki squidguard.conf .

Če želite na primer omogočiti domene in URL-je, uvrščene na črno listo kategorije anonvpn , boste morali izvesti naslednje korake.

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

In uredite datoteko squidguard.conf , kot sledi.

Upoštevajte, da so bili deli, označeni z rumeno pod PRED , izbrisani v PO .

Včasih boste morda želeli dovoliti določene URL-je ali domene , ne pa celotnega imenika na črni listi. V tem primeru morate ustvariti imenik z imenom myWhiteLists (ali katero koli ime, ki ga izberete) in pod vstaviti želene URL-je in domene pod /var/lib/squidguard/db/myWhiteLists v datotekah z imenom url oziroma domene.

Nato nova pravila o vsebini inicializirajte kot prej,

# squidGuard -C all

in spremenite squidguard.conf na naslednji način.

Kot prej rumeno označeni deli označujejo spremembe, ki jih je treba dodati. Niz myWhiteLists mora biti prvi v vrstici, ki se začne z pass.

Na koncu ne pozabite znova zagnati Squid, da uveljavite spremembe.

Zaključek

Po korakih, opisanih v tej vadnici, bi morali imeti zmogljiv filter vsebine in preusmerjevalnik URL-jev, ki sodelujejo z vašim proxyjem Squid. Če imate med postopkom namestitve/konfiguracije kakršne koli težave ali imate kakršna koli vprašanja ali komentarje, se lahko obrnete na spletno dokumentacijo squidGuarda, vendar nam vedno pustite vrstico z uporabo spodnjega obrazca in takoj se vam oglasimo mogoče.