SquidGuard Web Filter Plugin für Squid3

squidGuard ist ein Internetfilter, der in Verbindung mit dem Web-Cache-Proxy Squid über den Redirector-Mechanismus eingesetzt werden kann. SquidGuard ist freie Software und unter der GNU General Public License lizenziert.

SquidGuard kann nicht gegen Viren oder andere Malware eingesetzt werden. Surft ein Benutzer eine Website an, so schickt Squid den Seitenaufruf an squidGuard zur Überprüfung. Findet squidGuard die Domain oder die URL, so wird der Benutzer auf eine Seite umgelenkt, die ihm sagt, dass er keinen Zugriff auf diese Seite hat.

SquidGuard wird über eine zentrale, textbasierte Datei konfiguriert. Hier wird hinterlegt, welche Ziele wann für wen gesperrt sind und welche Seite statt der blockierten angezeigt werden soll. Die Informationen über die gesperrten Domänen und URLs sind dabei üblicherweise in verschiedene Klassen unterteilt. Neben dem Einsatz von Domain- oder URL-Listen kann der Zugang auch mit Hilfe von Regulären Ausdrücken verhindert werden. Hier kann die Fehlerquote sehr hoch sein, also mehr gesperrt werden als notwendig. Wird zum Beispiel jede URL gesperrt, die das Wort sex enthält, werden auch Seiten über das Staatsexamen nicht angezeigt. Es ist möglich, weiße Listen zu hinterlegen, auf deren Einträge stets zugegriffen werden kann.

Der squidGuard-Administrator kann die Zugriffsbedingungen sehr differenziert gestalten. Der Zugang kann je nach Benutzer, Uhrzeit, Ursprungsseite und anderen Kriterien erlaubt oder verweigert werden.
Quelle: Wikipedia

Squidguard installieren

apt-get install squidguard

Blacklist installieren

Blacklists gibt es von diversen Anbietern. Teilweise kostenlos, teilweise kostenpflichtig.

  1. MESD blacklists (kostenlos).
  2. Shalla’s Blacklists (kostenlos für private Nutzung).
  3. Urlblacklist (kommerziell)

Nachfolgend wird die MESD Blacklist genutzt.

Download der Liste, entpacken und kopieren in den Datenbankpfad von Squidguard:

wget http://squidguard.mesd.k12.or.us/blacklists.tgz
tar -zxvf blacklists.tgz
cd blacklists/
cp -avr * /var/lib/squidguard/db/

Erstellen der Datenbank:

cd /var/lib/squidguard/db/porn
squidGuard -b -C domains
squidGuard -b -C urls

Oder direkt für alle Kategorien:

squidGuard -C all

Squid zum Lesen der Dateien berechtigen:

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

Squid konfigurieren

URL Rewriter definieren (/etc/squid3/squid.conf):

url_rewrite_program /usr/bin/squidGuard

Squidguard konfigurieren

/etc/squidguard/squidGuard.conf öffnen und anpassen

dbhome /var/lib/squidguard/db
logdir /var/log/squidguard

src clients {
ip 172.30.0.0/16
}

dest good {
}

dest local {
}

dest porn {
domainlist porn/domains
urllist porn/urls
redirect http://proxyserver/blocked.html?clientaddr=%a&clientname=%n&clientuser=%i&clientgroup=%s&targetgr$
}

acl {
clients {
pass good !in-addr !porn any
} else {
pass any
}

default {
pass local none
redirect http://proxyserver/blocked.hmtl?clientaddr=%a&clientname=%n&clientuser=%i&clientgroup=%s&$
}
}

Die Seite für den Redirect anlegen und je nach Wünschen befüllen:

<html>
	<head>
		<title>URL Blocked</title>
	</head>
	<body>
		<h1>URL Blocked</h1>
		<p>Access to this site / url has been blocked.</p>
	</body>
</head>
</html>

Dienst neu starten
service squid3 restart

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s