Nach der Installation ist der Squid nicht ohne Anpassungen lauffähig, er muss zunächst über die Datei /etc/squid.conf an die vorhandene Netzwerk-Situation angepasst werden. Diese Datei ist sehr gut kommentiert, aber aufgrund der vielen Einstelloptionen auch sehr umfangreich. Zum Glück können fast alle Optionen unverändert übernommen werden.
Um den Proxy erst einmal zum Laufen zu bringen, müssen die hier vorgestellten Parameter angepasst werden. Ergänzend kann auch in die QUICKSTART-Datei der Squid-Doku geschaut werden (meist unter /usr/share/doc/squid).
Die Voreinstellung des Squid ist aus Sicherheitsgründen so, dass keiner surfen darf. Die Rechtevergabe ist sehr flexibel und damit leider auch kompliziert. Es soll der Einfachheit halber zunächst allen Nutzern im eigenen lokalen Netz Vollzugriff auf das Internet gewährt werden.
Für die Rechtevergabe muss zunächst die Zugriffs-Kontroll-Liste (Access Control List, ACL) definiert werden. Anschließend wird über den Namen dieser ACL das Recht mit dem Schlüsselwort http_access zugewiesen. Weitere Details sind zu finden unter: Rechtevergabe unter Squid im Detail
Die Syntax der ACL:
acl <frei_definierbarer_Name> <acl_Typ> <Werte>
|
Angenommen, die PCs des eigenen Netzes verwenden alle IPs aus dem Bereich 192.168.10.*, könnte die Konfiguration für Vollzugriff des eigenen lokalen Netzes wie folgt aussehen:
acl allowed_hosts src 192.168.10.0/255.255.255.0
http_access allow allowed_hosts
http_access deny all
|
Die letzte Zeile ist schon vorhanden, die beiden darüber liegenden müssen neu angelegt werden. Die Reihenfolge der http_access-Zeilen ist wichtig! Für die eigene Nutzung muss natürlich die IP-Netz-Adresse 192.168.10.0/255.255.255.0 angepasst werden.
|
Dieser Parameter ist nicht zwingend zu verändern, damit Squid lauffähig wird, aber so wichtig, dass er hier aufgeführt wird.
Soll der Zwischenspeicher (Cache) viele Objekte enthalten können, muss die knappe Voreinstellung von 100 MB vergrößert werden.
Doch Vorsicht: Es kann leider nicht der gesamte verfügbare Platz einer Partition genutzt werden, da zusätzlich noch Verwaltungsdaten Platz benötigen. Steht dem Squid nicht genügend Platz zur Verfügung, kann er nicht arbeiten. Die Angabe der Zwischenspeicher-Größe sollte deshalb immer mindestens 10% unter dem Wert des freien Platzes liegen.
Die Syntax ist:
cache_dir <Pfad zum Zwischenspeicher> <Größe> <nicht zu verändernde Parameter>
|
Soll die Größe z.B. auf 10000MB eingestellt werden, kann folgendes eingetragen werden:
cache_dir /usr/local/squid/var/cache 10000 16 256
|
|
Kann der Squid direkt auf das Internet zugreifen, sollten die beiden genannten Einstellungen genügen, um erst mal loslegen zu können. Direkt zugreifen bedeutet hier, dass der Proxy über das Default Gateway auf die Ports 80, 443 und 21 im Internet zugreifen kann.
Wenn das nicht möglich ist, wird die vorgelagerte Firewall einen Web-Proxy haben, von dem sich der Squid die Daten holen kann. In diesem Fall ist zunächst folgendes einzutragen:
cache_peer <firewall> parent <Proxy-Port> <Optionen>
|
Zum Beispiel:
cache_peer 192.168.10.1 parent 8080 no-query
|
Um sicherzustellen, dass Squid für alle unbekannten, nicht im eigenen Netz vorkommenden Web-Server auf das Internet zugreift, die eigenen Web-Server jedoch direkt anspricht, sollte folgendes ergänzt werden:
acl localnet srcdom .selflinux.org
always_direct allow localnet
always_direct allow allowed_hosts
never_direct allow all
|
Die eigene Domain, hier selflinux.org, muss natürlich angepasst werden. Die ACL für die allowed_hosts ist schon weiter oben definiert.
|
|