Entwicklungsumgebung/Squid
Diese Seite ist momentan eine Baustelle im Zustand: 1
-
0
-
1
-
2
-
3
-
4
Proxyserver
Installation SQUID
ich habe Squid so installiert:
aptitude install squid
Testen ob Squid läuft kann man einmal über "ps ax" (da muss eine Zeile mit squid dabei sein) und über "netstat -na", da muss eine Zeile dabei sein, die so aussieht:
tcp 0 0 0.0.0.0:3128 0.0.0.0:* LISTEN
entscheidend ist, dass auf dem Port 3128 gelauscht wird (also "LISTEN" steht).
Und dann wird die Datei "/etc/squid/squid.conf" angepasst.
<source lang="text">
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Zeile 675: http_access allow localnet Zeile 1110: http_port 8080 Zeile 1732: cache_mem 200 MB Zeile 1742: maximum_object_size_in_memory 256 KB Zeile 1979: maximum_object_size 65500 KB Zeile 1751: memory_replacement_policy heap GDSF Zeile 1793: cache_replacement_policy heap LFUDA Zeile 1942: cache_dir ufs /var/spool/squid 1603 16 256
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ </source>
Die komplette squid.conf habe ich unter http://www.arktur.th.schule.de/squid.conf.txt abgelegt.
Da es ja ums testen geht, wäre es aber deutlich schneller, einfach diese squid.conf einzuspielen (umbenennen; aufpassen, das die Datei Linuxzeilenumbrüche hat und passende Rechte erhält). Dann ein Neustart von Squid mit
/etc/init.d/squid restart
und das war's schon. Dann einen Client drangehangen, Browser konfigurieren (Gateway 192.168.0.1, Port 8080, Ausnahmen 192.168.0.1 und 'serv'). Dann sollte alles laufen.
Installation squidGuard
Die Installation erfolgt mittels:
aptitude install squidguard
Damit kann nun Squidguard in squid (als redirector) eingebunden werden. Dafür fügen Sie in "/etc/squid/squid.conf" folgendes ein:
<source lang="text"> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Zeile 436: # TAG: redirect_program Zeile 437: redirect_program /usr/bin/squidGuard -c /etc/squid/squidGuard.conf
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ </source>
Zum Kinder- und Jugendschutz wird die aktuelle Sperrliste heruntergeladen und installiert:
cd wget http://squidguard.shalla.de/Downloads/shallalist.tar.gz tar -xzf shallalist.tar.gz -C /var/lib/squidguard/db chown -R proxy.proxy /var/lib/squidguard/db
Die Fehlerseite erscheint, falls eine verbotene Seite aufgerufen wird und kann individuell gestaltet werden. Legen Sie die fertige Sperrseite unter "/var/www/htdocs/verboten.html" ab. Hier eine mögliche Beispielseite:
<source lang="text"> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>Verboten</title> <meta name="author" content="hkirmse"> </head> <body text="#000000" bgcolor="#FFFFFF" link="#0000FF" alink="#FF0000" vlink="#FF0000">
Fehlermeldung von Squidguard
<img src="http://10.100.0.1/delixs.gif" width="103" height="60" border="0" alt="Logo von Delixs"> | Nix da,es wurde eine Seite aufgerufen, die durch den Administrator gesperrt wurde. Es wird darauf hingewiesen, dass die URL zusammen mit dem Anmeldenamen im Logfile erfasst wurde. |
Diese Seite wurde vom Delixs-Developer-Team erstellt.
</body> </html> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ </source>
Um die Namen der Nutzer im Logfile erfassen zu können, muss folgende Eintragung in "/etc/squid/squid.conf" erfolgen:
<source lang="text">
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Zeile 427: #acl SCHULE src 10.100.0.0/24 Zeile 428: #http_access allow SCHULE Zeile 429: auth_param basic program /usr/lib/squid/ldap_auth -b "ou=people,ou=accounts,dc=delixs-schule,dc=de" -v 3 -u uid Zeile 430: auth_param basic children 20 Zeile 431: auth_param basic realm Internetzugang der Delixs-Schule Musterschule Zeile 432: auth_param basic credentialsttl 2 hours Zeile 433: acl password proxy_auth REQUIRED Zeile 434: http_access allow password
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ </source>
Ohne Namen der Nutzer im Logfile muss es in "/etc/squid/squid.conf" so aussehen:
<source lang="text"> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Zeile 427: acl SCHULE src 10.100.0.0/24 Zeile 428: http_access allow SCHULE Zeile 429: #auth_param basic program /usr/lib/squid/ldap_auth -b "ou=people,ou=accounts,dc=delixs-schule,dc=de" -v 3 -u uid Zeile 430: #auth_param basic children 20 Zeile 431: #auth_param basic realm Internetzugang der Delixs-Schule Musterschule Zeile 432: #auth_param basic credentialsttl 2 hours Zeile 433: #acl password proxy_auth REQUIRED Zeile 434: #http_access allow password
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ </source>
Einrichtung von SQUIDGuard
Um die Einrichtung von SQUIDGuard abschließen zu können, muss folgende Eintragung in "/etc/squid/squidGuard.conf" erfolgen:
<source lang="text">
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- CONFIG FILE FOR SQUIDGUARD
dbhome /var/lib/squidguard/db logdir /var/log/squid
- DESTINATION CLASSES:
dest good { }
dest local { }
dest aggressive { domainlist BL/aggressive/domains urllist BL/aggressive/urls }
dest porn { domainlist BL/porn/domains urllist BL/porn/urls }
dest warez { domainlist BL/warez/domains urllist BL/warez/urls }
dest hacking { domainlist BL/hacking/domains urllist BL/hacking/urls }
dest redirector { domainlist BL/redirector/domains urllist BL/redirector/urls }
default {
pass !aggressive !porn !warez !hacking !redirector all
redirect http://localhost/verboten.html
}
}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ </source>
Zum Abschluss muss die Datenbank neu aufgebaut werden und Squid neu gestartet werden:
squidGuard -d -C all chown proxy.proxy /var/lib/squidguard/db -R /etc/init.d/squid restart
Nun kann der Webfilter getestet werden
Weblinks
Squid
- http://www.squid-cache.org
- http://wiki.squid-cache.org/SquidFaq
- deutsches Handbuch: http://www.squid-handbuch.de/hb/
- http://www.proesdorf.de/linux/squid_conf.php
SquidGuard
- http://www.squidguard.org/
- http://www.shalla.de/mailman/listinfo/squidguard
- http://squidguard.shalla.de/
- http://wiki.ubuntuusers.de/squidGuard
- http://www.lugbe.ch/lostfound/contrib/router_biel/squidguard.phtml
- http://www.visolve.com/squid/squid24s1/access_controls.php
Hans-Dietrich Kirmse 2009