zurück

squidGuard für Arktur

  1. Zweck und Ziel

  2. Realisierung

    1. Installation

      • Eine ausführliche Anleitung für Arktur 3.2 stammt von Dieter Krömer.
      • Arktur 3.4/3.6/5.0

        Das Programmpaket "odssquidguard" wird vor-installiert, aber noch nicht aktiviert.
        Das Paket "squidGuard-db*.tgz" liegt auf der CD in "slack/odszusatz", vermutlich ist die Version bei
        	http://arktur.shuttle.de/CD/Zusatzpakete
        aktueller.
        Das Datenbank-Paket wird wie ein sonstiges Update mit Hilfe des "sysadm"-Pakets eingebunden.
    2. Aktivierung

      • In "/var/lib/squidGuard/db/" müssen in etlichen Unterverzeichnissen die Basis-Dateien liegen: "domains", "urls" und (manchmal) "expressions".
      • In "/etc/squid/squid.conf.in", "Abschnitt 7: Zugriffskontrolle" muss die Zeile "redirect_program ..." (bei neueren "squid"-Versionen: "url_rewrite_program") aktiviert sein, d.h. vor "redirect" darf kein Kommentarzeichen "#" stehen.
      • Der Pfad in dieser Zeile muss mit der Ausgabe von
        	which squidGuard
        übereinstimmer; je nach Herkunft des "squidGuard"-Pakets kann dort "/usr/bin/" oder "/usr/sbin" passen.
      • Wenn "squidGuard" erstmals aktiviert wird, dann muss "squid" neu gestartet werden: (als "root")
        	/etc/init.d/squid stop
        	/etc/init.d/squid start
      • Datenbank
        1. neu aufbauen
          	squidGuard -d -C all
          baut die Datenbank neu auf. Das kann bei einem Pentium 200 schon mal 1 Stunde dauern.
        2. updaten
          	squidGuard -d -u
          bindet die "*.diff"-Dateien in den jeweiligen Unter-Verzeichnissen ein; das sollte recht schnell gehen.

      Die Ausgangsdateien ("domains", "expressions", "urls", "*.diff") können anschliessend aus den Verzeichnissen entfernt werden, aber sie stören dort auch nicht weiter.

      Beim Neu-Aufbau werden nur "domains", "expressions" und "urls" berücksichtigt, kein anderer Dateiname.
      Beim Update werden nur "domains.diff", "expressions.diff" und "urls.diff" berücksichtigt.

    3. Wenn die Datenbank geändert worden ist, dann muss "squid" neu gestartet werden: (als "root")
      	/etc/init.d/squid stop
      	/etc/init.d/squid start
      oder
      	squid -k reconfigure

    4. Funktionskontrolle

      • squid
        	pgrep -l squid
        muss (mindestens) eine Zahl (Wert beliebig) melden
      • squidGuard
        	pgrep -l squid
        muss u.a. einige Zeilen liefern, in denen rechts "squidGuard" steht.
      • Wirksamkeit
        Nehmen Sie eine Webadresse Ihrer Wahl aus einer "urls"-Datei und lassen Sie den Browser Ihrer Wahl diese Seite aufsuchen. Wenn "squidGuard" funktioniert, dann meldet er, dass er diese Seite nicht besuchen darf.
      • Log-Dateien
        Log-Dateien landen in
        • /var/log/proxy
        • /var/log/squidGuard
        • /var/log
        • /var/log/proxy/blocked.log (ist in "squidGuard.conf" als Log-Datei einstellbar)
        Wichtig ist diejenige in "/var/log/proxy".
        Weitere Meldungen über die Tätigkeit von "squidGuard" können in den Apache-Logdateien landen.
    5. Datenbank-Dateien aufräumen

      Die Dateien "domains", "expressions" und "urls" können mit Hilfe des Programms "sgclean" bereinigt werden
      	sgclean /etc/squid/squidGuard.conf
      Bei einem Pentium 200 kann das mehr als 1 Stunde dauern. Wenn Sie nicht so lange die Konsole blockieren wollen:
      	sgclean /etc/squid/squidGuard.conf & disown
      verschiebt den Prozess in den Hintergrund.
    6. Updates

      Updates werden bei "squidguard.org", "ftp://k12linux.mesd.k12.or.us/pub/squidGuard/" und den "Oberberg"-Seiten angeboten. Auch Lars Rupp arbeitet für den SuSE-Schulserver an einem zuverlässigen Update-Verfahren.

      Die Diskussion über ein sicheres und zuverlässiges Verfahren ist noch nicht abgeschlossen, insbesondere ist das Mischen von Dateien von verschiedenen Webseiten noch nicht zufriedenstellend gelöst. "k12" bietet derzeit nur Ausgangs-Dateien an, keine Updates. "Pfaffenhofen" ist mehr als veraltet.

      Auf den "Oberberg"-Seiten werden etliche *.diff-Dateien angeboten, die zusammengefasst werden können; das dort empfohlene Verfahren "update_sq", eine neue Datenbank aufzubauen, ignoriert die Möglichkeit, per "*.diff"-Datei überflüssige oder falsche Einträge zu beseitigen.

      Derzeit neige ich dazu, einzig die Dateien von k12/Toulouse zu benutzen; die auf der "squidGuard"-Seite angebotene Datenbank ist schon seit langer Zeit nicht mehr aktualisiert worden..

      Solange das Updaten nicht zufriedenstellend geklärt ist, liefere ich (natürlich) kein Skript zum Updaten. Derzeit sollte reichen:

      1. die o.g. Dateien holen und in die zugehörigen Verzeichnisse schieben
      2. 	squidGuard -d -C all
            squidGuard -d -u
      3. "squid" neu starten
        	squid -k reconfigure
    7. erlaubte Seiten

      Nach Voreinstellung werden u.a. auch Zugriffe auf (externe) Webmail-Server wie web.de gesperrt. Wenn das nicht gewünscht ist:
      	Datei /etc/samba/squidGuard.conf
      	Abschnitt  "Die sonstigen Rechner der Schule"
      	"!mail" herausnehmen
  3. weitere Informationen

  4. Fehlersuche

    Fehlermeldungen landen in "/var/log/proxy".
    	squid -k debug -X 
    liefert viele Zeilen, u.a. auch Hinweise auf Fehler. Die Ausgabe sollte fürs komfortablere Lesen z.B. nach "/tmp/squid.log" umgelenkt werden.

© Helmut Hullen
letzte Änderung 23.04.2013
Haftungsausschluss, Impressum