Zugangskontrolle
Internetzugänge steuern und filtern mit Squid
Blacklists
Selbst, wenn die Kinder innerhalb der erlaubten Zeit im Internet sind, sollen sie natürlich keine Seiten mit pornografischen oder gewaltverherrlichenden Inhalten aufrufen. Dazu ergänzen Sie die Squid-Konfiguration einfach um einige Zeilen (Listing 7). In die Datei /usr/share/squid/blacklist schreiben Sie alle Zeichenfolgen, die für ein Sperren der Seite sorgen (Listing 8), wobei auch reguläre Ausdrücke [6] erlaubt sind. Nach einem /etc/init.d/squid reload liest der Proxy die Sperrliste ein.
Natürlich erlaubt Squid es auch, verschiedene Blacklists für jeden Nutzer einzusetzen. Simon darf zum Beispiel online in Auktionshäusern stöbern, während Tanja das noch nicht darf. Dafür legen Sie lediglich die entsprechende Blacklist analog Listing 8 in /usr/share/squid/blacklist_tanja an.
# definiert eine Blacklist, die für alle Clients außer denen der Eltern gilt acl blacklist url_regex -i "/usr/share/squid/blacklist" http_access deny blacklist !marion !volker # definiert eine Blacklist, die zusätzlich nur für Tanja gilt acl blacklist_tanja url_regex -i "/usr/share/squid/blacklist_tanja" http_access deny tanja blacklist_tanja
# sperrt alle Seiten/Domains, in denen folgende Zeichenfolgen vorkommen gewalt.tld actionfilme.domain nackt.xyz # die Adresse http://(www.)versand.haus/bestellung/ wird gesperrt, # der Rest des Angebots ist zugänglich versand.haus/bestellung/ # Dateien mit der Endung .mp3 oder .exe können nicht heruntergeladen werden .mp3 .exe
Das Beispiel sperrt äußert großzügig auch Seiten, in denen der genannte Text im Inhalt vorkommt. Über die regulären Ausdrücke grenzen Sie den Filter bei Bedarf genauer ein. Verlassen Sie sich beim Sperren jedoch nicht blind auf die Liste, sondern testen Sie regelmäßig, ob sie noch den gewünschten Effekt hat. Manchmal ändert sich zum Beispiel ein Server- oder Dateiname.
Whitelists
Eine andere Möglichkeit liegt im viel strengeren Filtern anhand von Whitelists. Falls Sie Tanja ausschließlich Zugriff auf eine oder wenige Seiten gewähren wollen, bietet sich eine Whitelist an. Die Konfiguration von Squid ergänzen Sie entsprechend Listing 9 und erstellen eine passende Adressliste. Die Syntax gleicht der Blacklist. Allerdings bringt der Einsatz von Whitelists mitunter Probleme mit sich, da viele Seiten nicht nur von einer Adresse Inhalte beziehen, sondern von vielen, die alle explizit zu nennen wären. Ansonsten lädt die Seite unvollständig.
# Tanja darf nur auf diese Seiten zugreifen acl whitelist url_regex -i "/usr/share/squid/whitelist" http_access deny tanja ! whitelist



