Tartalomjegyzék

< Tűzfal

Squid

Bevezetés

A Squid tartalomszűrő és cache (tároló) szerver, vagy egyszerűen csak proxy szerverként emlegetjük.

A HTTP proxy szerverek között talán a legnépszerűbbnek mondható.

A Squid egyébként a kalmárt (mint állat) jelent.

Beszerzés

Debian GNU/Linux alatt:

apt install squid

Webhely:

Telepítés után

Telepítés után kapunk egy könyvtárat a beállításokhoz:

/etc/squid/
/etc/squid/
      |-conf.d
      |-errorpage.css
      `-squid.conf

A fő beállítófájl az /etc/squid/squid.conf állomány. Saját beállításokat tehetünk még a /etc/squid/conf.d/ könyvtárba. Az állomány neve tetszőleges, de .conf kiterjesztés szükséges.

Beállítások

A Squid milyen porton várja a kéréseket:

http_port 3128

Hozzáférési neveket, majd azokhoz tartozó szabályokat kell meghatározni. A neveket az „acl” szóval vezetjük be. Ha van például egy IP címünk:

acl localnet src 1.2.3.4

De megadhatunk tartományt is:

acl localnet src 1.2.3.0/24

Határozzunk meg, hozzá egy szabályt:

http_access allow localnet

Ez utóbbi szabályt tegyük a http_access allow localhost sor után.

A kliens IP címe alapértelmezésként tovíbbítódik a webszerver felé.

forwarded_for on

Ezt kikapcsolhatja ha off-ra állítja:

forwarded_for off

Más konfigurációs fájlok befoglalása:

include /etc/squid/masik.conf

De egész könyvtárat is befoglalhatunk, abban minden .conf fájllal:

include /etc/squid/conf.d/*.conf

Konfiguráció tesztelése

squid -k parse

Esetleg szűrjünk az error szót tartalmazó sorokra:

squid -k parse | grep 'error'

Vagy más kifejezésekre:

squid -k parse | egrep 'egyik|masik'

Konfiguráció újratöltése

/usr/sbin/squid -k reconfigure

Vagy:

/etc/init.d/squid reload

Vagy:

kill -HUP $(cat /var/run/squid.pid)

A következő, ami nem szokott működni:

systemctl reload squid

Cache tiltása

Állítsuk be:

cache deny all

URL-k fájlban

A következő beállításokat készítjük el:

Az /etc/squid/squid.conf fájlban:

acl block url_regex -i "/etc/squid/forbidden"
http_access deny block
http_access allow all

Beállításminták

# Feketelistás webhelyek, amit nem szeretnénk engedni:
acl blacklisted_sites dstdomain wer.csunya.hu
acl blacklisted_sites dstdomain social.csunya.hu
acl blacklisted_sites dstdomain stats.update.csunya.hu
 
 
http_access deny blacklisted_sites
 
 
# Nem tárolandó webhely
acl cache_bypass_domains dstdomain mindiguj.hu
no_cache deny cache_bypass_domains
always_direct allow cache_bypass_domains

Minimális Squid cache nélkül

cache deny all
http_port 3128
include /etc/squid/conf.d/*
acl block url_regex -i "/etc/squid/forbidden"
http_access deny block
http_access allow all