Entwicklungsumgebung/Squid: Unterschied zwischen den Versionen
(Die Seite wurde neu angelegt: __NOTOC__ {{Uberarbeiten}} ---- <div align="right">zurück | Hauptseite</div>) |
|||
(9 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
__NOTOC__ | __NOTOC__ | ||
{{ | {{EditStatus|1|Kirmse}} | ||
== 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"> | |||
<div align="center"><h1>Fehlermeldung von Squidguard</h1></div> | |||
<hr noshade size="4"> | |||
<table width="100%" height="150" border="0"> | |||
<tr> | |||
<td width="100"> </td> | |||
<td width="200"> <img src="http://10.100.0.1/delixs.gif" width="103" height="60" border="0" alt="Logo von Delixs"></td> | |||
<td><h2><font color="#FF0000">Nix da</font>,</h2> | |||
<p>es wurde eine Seite aufgerufen, die durch den Administrator gesperrt wurde.</p> | |||
<p>Es wird darauf hingewiesen, dass die URL zusammen mit dem Anmeldenamen im Logfile erfasst wurde.</p> | |||
</td> | |||
<td width="100"> </td> | |||
</tr> | |||
</table> | |||
<hr noshade size="4"> | |||
<p align="right"><font color="#808080">Diese Seite wurde vom Delixs-Developer-Team erstellt.</font></p> | |||
</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 | |||
---- | ---- | ||
<div align="right">[[ | <div align="right">[[Installation:Entwicklungsumgebung|zurück]] | [[Hauptseite]]</div> | ||
Hans-Dietrich Kirmse 2009 | |||
[[Kategorie:DebianSqueeze]] |
Aktuelle Version vom 28. März 2011, 19:31 Uhr
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