URLFilter
Aus IpcopWiki
| URL filter | |
|---|---|
| Datei:URL filter.gif URL filter-Logo | |
| Basisdaten | |
| Entwickler: | Marco Sondermann |
| Version: | 1.9.3 (09. Mai 2008) |
| Größe: | 743 KB (tar.gz) |
| supported: | IPCop v1.4.21 |
| Lizenz: | Copyright 2004-2008 by Marco Sondermann |
| Sonstiges: | Preis: kostenlos Sprache: mehrsprachig |
| Website: | www.urlfilter.net/ |
Funktionsweise
Die Funktionsweise des URLFilter beruht darauf, sich in den Netzwerkverkehr beim Surfen einzuklinken und entsprechende Seiten oder Server anhand von bestimmten Kriterien zu filtern. Insbesondere werden beim URLFilter folgende Möglichkeiten genutzt:
- Einsatz von Black- und Whitelisten der URLs und der Domains (Webseitenfilterung)
- Einsatz von Black- und Whitelisten der internen Clients (IP-basiert)
- Einsatz von Zeitbeschränkungen
- Filtern von Datei-Endungen (Dateifilterung)
- Einsatz von regulären Ausdrücken
- Umleiten (beim Datei-Download) oder Sperren (von URLs) bei erkannten Kriterien
Voraussetzung
auf dem Client
Damit der URLFilter korrekt funktioniert, muss entweder der Proxy auf transparent gestellt werden (dann benötigt der Client keine Einstellungen) oder der Proxy (Server und Port) muss auf dem jeweiligem Client eingetragen sein. Alternativ kann auch das WPAD (Web Proxy Autoconfig Discovery) des Advanced Proxy oder ein ProxyScript genutzt werden.
auf dem IPCop
Der IPCop sollte auf dem momentan aktuellen Softwarestand sein und benötigt keine besonderen Hardware-Ressourcen. Generell ist aber davon auszugehen, dass durch den Einsatz des URLFilters die Geschwindigkeit gering beeinflusst wird. Je schwächer bzw. älter die benutzte Hardware, desto stärker macht sich der Einsatz bemerkbar. Beim Testlauf (momentan seit mehreren Monaten im Einsatz) mit 200MHz und 64MB RAM für 3 bis 4 PCs stellte ich keine Hardware-Engpässe fest.
Als Beispiel aus meiner Praxis: Ich habe auf einem 600 MHz, 256MB RAM PC den URLFilter ohne merkbare Verzögerung im Einsatz. Die Zahl der angeschlossenen Teilnehmer (bei mir ca. 250) ist nicht so entscheidend sondern die Zahl der gleichzeitig surfenden User, bei mir ca 25 -30.
Übersicht
URLFilter ist ein auf dem Programm squidGuard basierendes Add-On für die Linux-Distributionen IPCop und SmoothWall. Dieses Modul erweitert die Basisinstallation um die Möglichkeit, unerwünschte Domains, URLs und Dateien auszufiltern.
Leistungsmerkmale
- Betriebsfertig. Herunterladen, Installieren und sofort loslegen
- Nahtlose GUI-Integration für die Konfiguration und den Protokoll-Viewer
- Sehr fexibel, die Blockkategorien sind nicht fest programmiert
- Arbeitet mit allen squidGuard-kompatiblen Blacklists
- Automatische, zeitgesteuerte Blacklist-Updates
- Zeit-, kategorie- und clientbasierte Beschränkungen (nur IPCop)
- Lokale Dateiumleitung (nur IPCop)
- Integrierter Blacklist-Editor (nur IPCop)
- Kein Neustart für die Installation/Deinstallation oder während des Betriebes erforderlich
- Auch für den kommerziellen Einsatz kostenlos
Installation
- Die Heruntergeladene Datei (derzeitig aktuell ipcop-urlfilter-1.9.3.tar.gz) via WinSCP auf den IPCop kopieren.
- Mittels PuTTY als root einloggen und mit tar xzf ipcop-urlfilter-1.9.3.tar.gz entpacken.
- Installation starten mittels ipcop-urlfilter/install.
Das war es schon.
Die Datei ipcop-urlfilter-1.9.3.tar.gz und das Verzeichnis ipcop-urlfilter kann hinterher via winSCP oder mit
rm -r ipcop-urlfilter-1.9.3*
gelöscht werden.
Im Webinterface des IPCop kann nun, unter Dienste, der URLFilter konfiguriert werden.
Einstellungen des URLFilter
Die URLFilter-Ansicht besteht im Großen und Ganzen aus zwei Teilen:
- Im oberen Bereich sind alle Einstellungsmöglichkeiten
- Der untere Bereich ist für die Wartung zuständig
Sperrkategorien
Der erste Bereich des URLFilter behandelt im Groben die Kategorien, welche grundsätzlich gesperrt werden sollen. In der momentanen Version gibt es 11 Kategorien: ads (Werbung), gambling (Glücksspiele), proxy, aggressive, hacking, violence (Gewalt), audio-video, mail, warez (Illegale Softwarebeschaffung), drugs (Drogen) und porn (Pornos u.ä.).
Durch das Anklicken und setzen des jew. Kästchens und das Neustarten des URLFilters wird die entspr. Liste von Domains und URLs geladen.
angepasste Listen
angepasste Blackliste
Der Bereich der Blacklisten stellt den Firewall-Administrator relativ einfach die Möglichkeit dar, in den beiden Fenstern ganze Server (als Namen oder als IP-Adresse) oder nur URLs zu sperren. Ein #-Zeichen vor der jeweiligen Zeile kommentiert den dahinter stehenden Eintrag nur. Beispiele für Domainsperrung:
#IP-Adresse 127.0.0.1
#die Domain und alle Subdomains davon (ohne führendes www.) ipcopwiki.de
#nur eine Subdomain (ohne führendes www.) subdomain.ipcopwiki.de
Beispiele für URL-Sperrung:
#URL (ohne führendes www.) ipcopwiki.de/inhalt/boeseseite.html
angepasste Whiteliste
Manchmal kann es vorkommen, dass URLs ungewollt gesperrt werden, obwohl diese nirgendwo eingetragen wurden. Solche Vorfälle nennt man 'False Positives'. Folgendes Beispiel ist bei uns aufgetreten:
Ein Motorradladen surft auf den italienischen Seiten der Motorradhersteller und wird auf einmal geblockt. Eine Untersuchung der Logprotokolle ergab, dass der italienische Hersteller kleine Bilder (sog. Thumbnails) von Ersatzteilen mit dem Thumbnail-Kürzel und folgend dem Länderkürzel von Italien versehen hat. Die Bilder fingen also alle mit tit_bild.jpg an. Hier schlug der URLFilter mit der Kategorie 'porn' zu.
Verhindern kann man dieses Problem nie, aber man kann es eingrenzen, indem man solche Seiten explizit noch einmal freigibt. Dazu dient die Whitelist. Hier werden entweder ganze Server (Domains) entweder mit Namen oder IP-Adresse oder nur URLs eingetragen.
Zudem kann man die Sperrkategorien mit der Whitelist kombinieren. Ein Beispiel:
In den Sperrkategorien wird der Haken bei 'mail' gesetzt, in die Domainliste der Whitelist wird aber web.de eingetragen. Somit werden alle Mail-Seiten außer web.de gesperrt. (Richtigerweise sollten natürlich die Black- listen der Sperrkategorien nach gepflegt werden!)
Weiterer Nutzen der Whitelist ergeben sich, wenn man Dateieindungen oder 'Seiten, auf die über IP-Adresse zugegriffen wird' sperrt, aber ein paar spezielle wiederum freigeben möchte.
reguläre Ausdrücke
Alle hier eingegebenen Ausdrücke beziehen sich immer auf die URL selbst, nicht auf den Inhalt der Seiten. Als Beispiele für unerwünschte URLs dient dieser Eintrag:
(bikini|porn)
Es werden alle Seiten mit dem Wort Bikini oder dem Wort porn in der Adresse gesperrt.
Gute Beispiele über reguläre Ausdrücke findet man auf dem Cop selbst: Unter Log-Dateien, Proxy-Log ist ein Ignorieren-Filter...
Sperrung von Dateierweiterungen
Unter Windows und zum Teil auch unter Linux (und anderen Betriebssystemen), aber auch beim Darstellen bestimmter Seiten im Web werden Dateien anhand ihrer jeweiligen Endung (ihrer Erweiterung) unterschieden. Diese Endung enthält meistens 3, mittlerweile aber auch 2 oder 4 Zeichen, welche vorher einen Punkt besitzen. Als Beispiele seien genannt: index.html oder lied.mp3. Im URLFilter werden die verschiedenen Endungen zu Gruppen zusammengefasst.
Unter der entsprechenden Sektion im URLFilter lassen sich folgende Dateigruppen sperren:
- ausführbare Dateien (ade|adp|asx|bas|bat|chm|com|cmd|cpl|crt|dll|eml|exe|hiv|hlp|hta|inc|inf|ins|isp|jse|jtd|lnk|msc|msh|msi|msp|mst|nws|ocx|oft|ops|pcd|pif|plx|reg|scr|sct|sha|shb|shm|shs|sys|tlb|tsp|url|vbe|vbs|vxd|wsc|wsf|wsh)
- komprimierte Archivdateien (bin|bz2|cab|cdr|dmg|gz|hqx|rar|smi|sit|sea|tar|tgz|zip)
- Audio- und Video-Dateien (aiff|asf|avi|dif|divx|mov|movie|mp3|mpe?g?|mpv2|ogg|ra?m|snd|qt|wav|wmf|wmv)
Diese Dateitypen sind in der Datei /home/httpd/cgi-bin/urlfilter.cgi in der Funktion
sub writeconfigfile
als Regular Expression festgelegt:
Nachzulesen hier: http://www.ipcop-forum.de/forum/viewtopic.php?t=13431
Dateiablage
Durch das Aktivieren der Funktion entsteht auf der Firewall die Möglichkeit, abgelegte Dateien den Benutzern zur Verfügung zu stellen. Zusätzlich muss natürlich die jew. Datei hochgeladen werden. Hierbei sollte man den Plattenplatz unter /home/httpd/html/repository im Auge behalten, da die Grösse des root-Dateisystems begrenzt ist...
Zugriffskontrollen
Netzwerkbasiert
Sollen Client-PCs ohne die Wirkung des URLFilters surfen können, so werden diese im Eingabefeld für 'ungefilterte IP-Adressen' eingetragen. Auch ganze Adress-Bereiche oder Subnetze können genutzt werden. Eine Kombination der Methoden erfolgt durch ein Leerzeichen. Hier ein Beispiel:
192.168.0.54 192.168.0.0/24 192.168.0.0/255.255.255.0 192.168.0.100-192.168.0.200
Eingetragen wird in dem Fall
192.168.0.54 192.168.0.0/24 192.168.0.0/255.255.255.0 192.168.0.100-192.168.0.200
Sollen bestimmte Clients überhaupt keinen Zugriff auf das Internet haben, so werden deren IP-Adressen nach dem gleichen Schema in das dafür vorgesehene Feld gesetzt.
Zeitbasiert
Die Zeitbasierte Option erlaubt es, dass bestimmte Client-IP-Adressen (oder Netzwerke oder Subnetze) zu bestimmten Uhrzeiten und Wochentagen bestimmte Sperr-Bereiche unterlaufen oder nicht unterlaufen dürfen. Ein Beispiel:
Nach Feierabend und in der Mittagspause ist es allen Mitarbeitern erlaubt, Mailseiten aufzurufen. Nehmen wir an, von Montag bis Freitag ist von 8:00 Uhr bis 18:00 Uhr, und am Samstag ist von 9:00 Uhr bis 14 Uhr Arbeitszeit. Von Montag bis Freitag ist die Mittagszeit zwischen 12:00 Uhr und 13:00 Uhr.
Also wird eine Regel definiert, welche die Mailseiten nach Feierabend in der Woche freigibt, eine Regel für Samstag und eine weitere für die Mittagszeit. Die Mailseiten befinden sich alle in der Kategorie 'mail'. Der Sonntag wird nicht berücksichtigt. Die Regel-Konstellation sieht in dem Fall wie folgt aus:
Zusätzlich zu den Sperrkategorien gibt es hier allerdings noch folgende Bereiche:
- alle (alle Sperren)
- in-addr (Zugriff auf IP-Adressen)
- files (alle Dateien, alle Dateiendungen)
- custom-blocked (eigene White- und Blacklisten)
- custom-expressions (eigene Reguläre Ausdrücke)
Weiterhin lässt sich jede Regel einzeln aktivieren oder deaktivieren.
Benutzerbasiert
Die benutzerbasierten Regelungen betreffen ebenfalls die Zeit. Hierbei werden den einzelnen Benutzern Zeitkontingente eingeräumt. Dazu muss aber der Advanced Proxy oder ein vergleichbares [RFC-931]-fähiges Produkt eingesetzt werden. Die Zeitmessung beginnt mit dem ersten Aufruf einer Seite, in welcher der Benutzer sich authentifiziert hat und endet nach Ablauf des Kontingents. Zur Messung findet, je nach Einstellung, eine Aktivitätserkennung statt. Zusätzlich gilt eine Erneuerungsperiode, nach welcher das Quota wieder auf 0 gesetzt wird. Somit lässt sich zum Beispiel festlegen, dass alle hier eingetragenen Benutzer nur 1 Stunde pro Tag surfen dürfen. Wird allerdings der URLFilter neugestartet (neue Regeln werden nur mit dem Neustart auch aktiviert), so werden alle Zähler auf 0 gesetzt und die Kontingente beginnen wieder von vorne.
Sperrseiteneinstellung
Dieser Bereich betrifft das Aussehen der Sperrseite, sofern eine verwendet werden soll. Es kann bestimmt werden:
- ob die Sperrkategorie angezeigt wird
- ob die gesperrte Adresse angezeigt wird
- ob die Client-IP-Adresse angezeigt wird
- ob ein Hintergrundbild verwendet wird
Weiterhin kann, anstatt einer Sperrseite, direkt ein DNS-Error erzeugt werden oder der Client auf eine andere URL gelenkt werden, um dessen Seite anzuzeigen. Zusätzlich kann man drei Textfelder mit Informationen belegen, welche statt der Standardmeldung auf der Sperrseite gezeigt werden. In Zeile 1 wäre dann die Überschrift, in Zeile 2 und Zeile 3 dann die beiden Texte. Allerdings müssen hier beim Eintragen unter Umständen html-konforme Zeichen eingegeben werden.
Als Alternative kann direkt unter /home/httpd/html die redirect.cgi bearbeitet werden, um eine Angleichung an die Fehlerseiten des Copfilter zu erzielen.
erweiterte Einstellungen
'Ausdruckslisten'...
Die Funktion 'sperre Seiten, auf die über IP-Adresse zugegriffen wird', sperrt alle Seiten, welche keinen DNS-Namen verwenden. Würde man statt www.cipcopwiki.de die IP-Adresse des Servers im Browser eingeben, um auf dessen Homepage zu kommen, so würde diese Seite gesperrt werden. Sperrt man allerdings 'alle URLs, die nicht ausdrücklich erlaubt sind', so können nur die Seiten aus der 'angepassten Whitelist' aufgerufen werden. Sogenannte 'ads mit leerem Fenster' betreffen spezielle Werbe-Popups, welche beim Aktivieren der Funktion unterdrückt werden.
Wird die Protokoll-Anzeige aktiviert, so kann man unter dem Menüpunkt 'Logs' des IPCop die gesperrten Seiten aufgelistet bekommen. Zusätzlich besteht die Möglichkeit, den Benutzernamen zu erhalten und das Protokoll in Kategorien aufzuteilen.
'Filterprozesse'...
Wartung
Blacklist
Sicherung und Wiederherstellung
Versionen
|
|
|
|

