Konfigurere SquidGuard, aktivere innholdsregler og analysere Squid-logger - Del 6


En LFCE (Linux Foundation Certified Engineer) er en profesjonell som har de nødvendige ferdighetene til å installere, administrere og feilsøke nettverkstjenester i Linux-systemer, og er ansvarlig for design, implementering og løpende vedlikehold av systemarkitekturen i sin helhet.

Vi introduserer Linux Foundation-sertifiseringsprogrammet.

I tidligere innlegg diskuterte vi hvordan du installerer Squid + squidGuard og hvordan du konfigurerer squid til å håndtere eller begrense tilgangsforespørsler på riktig måte. Pass på at du går gjennom disse to opplæringene og installer både Squid og squidGuard før du fortsetter ettersom de setter bakgrunnen og konteksten for det vi vil dekke i dette innlegget: integrering av squidguard i et fungerende blekksprutmiljø for å implementere svartelisteregler og innholdskontroll over proxy-server.

Krav

  1. Installer Squid og SquidGuard – Del 1
  2. Konfigurere Squid Proxy Server med begrenset tilgang – Del 5

Hva kan/kan jeg ikke bruke SquidGuard til?

Selv om squidGuard absolutt vil øke og forbedre Squids funksjoner, er det viktig å fremheve hva den kan og hva den ikke kan.

squidGuard kan brukes til å:

  1. begrense den tillatte nettilgangen for enkelte brukere til kun en liste over aksepterte/velkjente webservere og/eller URL-er, mens de nekter tilgang til andre svartelistede webservere og/eller URL-er.
  2. blokkere tilgang til nettsteder (etter IP-adresse eller domenenavn) som samsvarer med en liste over vanlige uttrykk eller ord for enkelte brukere.
  3. kreve bruk av domenenavn/forby bruk av IP-adresse i URL-er.
  4. omdirigere blokkerte nettadresser til feil- eller infosider.
  5. bruke distinkte tilgangsregler basert på tid på dagen, ukedag, dato osv.
  6. implementere ulike regler for distinkte brukergrupper.

Imidlertid kan verken squidGuard eller Squid brukes til å:

  1. analysere tekst i dokumenter og handle i resultat.
  2. oppdage eller blokkere innebygde skriptspråk som JavaScript, Python eller VBscript i HTML-kode.

Svartelister – det grunnleggende

Svartelister er en viktig del av squidGuard. I utgangspunktet er de ren tekstfiler som lar deg implementere innholdsfiltre basert på spesifikke søkeord. Det er både fritt tilgjengelige og kommersielle svartelister, og du kan finne nedlastingslenkene på nettsiden til squidguard blacklists-prosjektet.

I denne opplæringen vil jeg vise deg hvordan du integrerer svartelistene levert av Shalla Secure Services til squidGuard-installasjonen din. Disse svartelistene er gratis for personlig/ikke-kommersiell bruk og oppdateres daglig. De inkluderer, per i dag, over 1 700 000 oppføringer.

For enkelhets skyld, la oss lage en katalog for å laste ned svartelistepakken.

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

Den siste nedlastingslenken er alltid tilgjengelig som uthevet nedenfor.

Etter å ha fjernet tjæringen av den nylig nedlastede filen, vil vi bla til svartelistemappen (BL).

tar xzf shallalist.tar.gz 
cd BL
ls

Du kan tenke på katalogene som vises i utdataene til ls som tilbakelistekategorier, og deres korresponderende (valgfrie) underkataloger som underkategorier, som går helt ned til spesifikke URL-er og domener, som er oppført i filene nettadresser og domener, henholdsvis. Se bildet nedenfor for ytterligere detaljer.

Installere svartelister

Installasjon av hele svarteliste-pakken, eller av individuelle kategorier, utføres ved å kopiere BL-katalogen, eller en av dens underkataloger, til /var/ lib/squidguard/db-katalog.

Selvfølgelig kunne du ha lastet ned svarteliste-tarballen til denne katalogen i utgangspunktet, men tilnærmingen forklart tidligere gir deg mer kontroll over hvilke kategorier som skal blokkeres (eller ikke) på et bestemt tidspunkt.

Deretter vil jeg vise deg hvordan du installerer anonvpn, hacking og chat-svartelistene og hvordan du konfigurerer squidGuard til å bruke dem.

Trinn 1: Kopier rekursivt katalogene anonvpn, hacking og chat fra /opt/3rdparty/ BL til /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

Trinn 2: Bruk domene- og nettadressefilene til å lage squidguards databasefiler. Vær oppmerksom på at følgende kommando vil fungere for å lage .db-filer for alle installerte svartelister – selv når en bestemt kategori har 2 eller flere underkategorier.

squidGuard -C all

Trinn 3: Endre eierskapet til /var/lib/squidguard/db/-katalogen og dens innhold til proxy-brukeren slik at Squid kan lese databasefilene.

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

Trinn 4: Konfigurer Squid til å bruke squidGuard. Vi vil bruke Squids url_rewrite_program-direktiv i /etc/squid/squid.conf for å fortelle Squid å bruke squidGuard som URL-omskriver/omadresserer.

Legg til følgende linje i squid.conf, og pass på at /usr/bin/squidGuard er den riktige absolutte banen i ditt tilfelle.

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

Trinn 5: Legg til de nødvendige direktivene til squidGuards konfigurasjonsfil (plassert i /etc/squidguard/squidGuard.conf).

Vennligst se skjermbildet ovenfor, etter følgende kode for ytterligere avklaring.

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
        }
}

Trinn 6: Start Squid på nytt og test.

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

Åpne en nettleser i en klient i det lokale nettverket og bla til et nettsted som finnes i noen av svartelistefilene (domener eller nettadresser – vi vil bruke http://spin.de/ chat i følgende eksempel ), og du vil bli omdirigert til en annen URL, www.lds.org i dette tilfellet.

Du kan bekrefte at forespørselen ble sendt til proxy-serveren, men ble avvist (301 http-svar – Flyttet permanent) og ble omdirigert til www.lds.org i stedet.

Fjerning av restriksjoner

Hvis du av en eller annen grunn trenger å aktivere en kategori som har blitt blokkert tidligere, fjern den tilsvarende katalogen fra /var/lib/squidguard/db og kommenter (eller slett) den relaterte acl i squidguard.conf-filen.

For eksempel, hvis du vil aktivere domenene og nettadressene som er svartelistet av kategorien anonvpn, må du utføre følgende trinn.

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

Og rediger squidguard.conf-filen som følger.

Vær oppmerksom på at deler uthevet i gult under FØR har blitt slettet i ETTER.

Hviteliste spesifikke domener og URL-er

Noen ganger vil du kanskje tillate visse nettadresser eller domener, men ikke en hel svartelistet katalog. I så fall bør du opprette en katalog kalt myWhiteLists (eller hvilket navn du velger) og sette inn de ønskede URLene og domenene under /var/lib/squidguard/db/myWhiteLists i filer som heter henholdsvis urls og domener.

Deretter initialiserer du de nye innholdsreglene som før,

squidGuard -C all

og endre squidguard.conf som følger.

Som før indikerer delene uthevet i gult endringene som må legges til. Merk at myWhiteLists-strengen må være først i raden som starter med pass.

Til slutt, husk å starte Squid på nytt for å bruke endringer.

Konklusjon

Etter å ha fulgt trinnene som er skissert i denne opplæringen, bør du ha et kraftig innholdsfilter og URL-omadresser som jobber hånd i hånd med Squid-proxyen din. Hvis du opplever problemer under installasjons-/konfigurasjonsprosessen eller har spørsmål eller kommentarer, kan det være lurt å referere til squidGuards nettdokumentasjon, men send oss gjerne en linje ved å bruke skjemaet nedenfor, så kommer vi tilbake til deg så snart mulig.