next_inactive up previous


Squid FAQ
 

- noch im Aufbau -

Zusammenfassung:

Hier finden Sie häufig gestellte Fragen und Ihre Antwort sowie häufig auftretende Probleme und deren Lösung. Die FAQ ist noch im Aufbau und daher recht kurz. Die Struktur lehnt sich an die offiziellen englischen Squid FAQ an, ebenso wurde hier ein Teil der Inhalte übernommen. Auf eine vollständige Übersetzung wird jedoch verzichtet. Es werden noch weitere Beiträge zu Fragen und Problemlösungen gesucht. Ihre Mitarbeit ist sehr erwünscht!

Für weitergehende Informationen empfehle ich vorerst die englische Squid FAQ unter:

http://www.squid-cache.org/Doc/FAQ/FAQ.html


Inhalt

Einführung

Systematik dieser FAQ

*** Dokument wird noch erzänzt ***

Quellen

*** Dokument wird noch erzänzt ***

Fragen

Allgemeine Fragen, Dokumentation und Rechtliches

Wo finde ich Dokumentationen über Squid Proxyserver?

Zum Squid Proxyserver gibt es bedaurlicherweise kaum Dokumentation in Buchform und schon gar nicht auf deutsch.

Dafür finden Sie im Internet eine Menge nützlicher Seiten zu Squid. Hier eine kleine Auswahl:

Wer ist verantwortlich für Squid?

Squid ist ein freies "Open Source"-Projekt das von einer Vielzahl von Programmierern unterstützt wird. Die Entwicklung wird von Duane Wessels vom amerikanischen "National Laboratory for Applied Network Research" geleitet. Die aktiven Mitarbeiter des Squid-Projekts finden Sie in der Mitarbeiterliste auf der Squid-Homepage:

http://www.squid-cache.org/CONTRIBUTORS

Auf welchen Betriessystemen läuft Squid?

Squid läuft auf nahezu allen Unix-ähnlichen Betriebssystemen wie z.B. Linux, FreeBSD, NetBSD, OpenBSD, BSDI, OSF, IRIX, Sun Solaris, AIX, HP-UX. Z.T. sind inzwischen auch Portierungen auf andere Betriebssysteme im Internet zu finden.

Läuft Squid auch unter Windows?

Es gibt inzwischen auch einige Portierungen auf Windows NT. Ein Produktionsbetrieb unter Windows ist jedoch zz. nicht zu empfehlen.

Bekomme ich auch für Squid kommerzielle Unterstützung?

Ja, viele IT Beratungsfirmen setzt inzwischen auch erfolgreiche auf Open Source Software. Selbst namenhafte Firmen wie IBM und Siemens leisten hier kommerzielle Unterstützung. In wie weit diese Firmen auch Squid unterstützen, erfragen Sie am besten vor Ort. Eine Liste von Firmen die Kompetenz im Squid-Umfeld besitzen ist in Vorbereitung.

Wie ist der rechtliche Status für die Nutzung von Squid?

Benötige ich eine Lizenz für die Nutzung von Squid?

Ja und Nein. Squid ist unter der "GNU General Public License" veröffentlicht. Diese ermöglicht eine lizenzgebührenfreie Nutzung von Squid. Die originale Lizenz finden Sie im Squid Paket oder im Internet unter: http://www.gnu.org/licenses/gpl.html.

Eine inoffizielle deutsche Übersetzung finden Sie unter: http://www.gnu.de/gpl-ger.html.

Was kostet Squid?

Squid ist Lizenzkostenfrei unter der GPL verfügbar. D.h. für die Benutzung von Squid fallen keine Lizenzkosten an. Dies ist auch unabhängig davon, ob Sie ihn im privaten oder kommerziellen Umfeld einsetzen.

Kosten können Ihnen lediglich für die Inanspruchnahme von kommerziellem Support, das Erstellen von Datenträgern oder für kommerziell vertriebene Dokumentation entstehen. Diese Kosten sind abhängig davon, wessen Dienste Sie hierfür in Anspruch nehmen und was mit dem jeweiligen Anbieter vereinbart wird.

Fragen zu Bezugsquellen und Installation

Grundsätzliche Fragen zur Funktion von Squid

Unterstützt Squid SSL?

Squid can SSL-Anfragen weiterverbinden. Standardmässig leitet Squid diese Anfragen direkt zum Zielrechner weiter. In Firewall-Umgebungen kann Squid die SSL-Anfragen aber auch an einen weiteren Proxy weiterleiten, den man über die ssl_proxy-Direktive einstellen kann.

Allgemeine Fragen zur Konfiguration

Wie verhindere ich, dass Squid eine bestimmte Seite cached?

Normalerweise bestimmt Squid selbst anhand seiner Regelwerke ob und wie lange er Seiten im Cache behält. Dynamische oder durch Metadaten entsprechend gekennzeichnete Seiten werden grundsätzlich nicht im Cache gehalten. Häufig aktualisierte Seiten werden auch entsprechend häufig auf Ihre Aktualität geprüft.

Es gibt also in den meisten Fällen keinen Grund das Caching von Seiten abzuschalten.

Sollte es dennoch einmal nötig sein, gibt es je nach Anwendungsfall verschiedene Möglichkeiten das chaching zu unterbinden.

Der hierfür entscheidende Eintrag lautet "no_cache".

Die Syntax entspricht der von "http_access".

Beispiel:
Alle Anfragen an Server aus dem eigenen lokalen Netz (192.168.10.0/24) sollen nicht gecached werden:

acl Local dst 192.168.10.0/24 
no_cache deny Local
Beispiel:
Alle Anfragen an die Domain "nocache.com" sollen nicht gecached werden:

acl NoCache dst_domain .nocache.com 
no_cache deny NoCache

Fragen zu Zugriffslisten und -Regeln (ACLs)

Fragen zu "Transparent Proxy" und "HTTPD-Accelerator"

Fragen zu SNMP

Fragen zu Diskd

Fragen zu Multicast

Fragen zu Redirectoren

Fragen zu Cache Digests

Fragen zum Betrieb eines Squid Proxys

Fragen zur Speicherverwaltung

Fragen zum Cache Manager

Fragen zur Fehlersuche

Fragen zur Kommunikation zwischen Browser und Proxy

Wie kann ich einen User und Passwort für FTP-Server angeben?

Standardmäßig wird für ftp-Server automatisch der Benutzer "anonymous" verwendet. anonymous-ftp sollte also ohne weitere Angaben, allein mit der ftp-URL funktionieren.

Beispiel: 
ftp://ftp.foo.org/
Erfordert Ihr Zielserver jedoch eine Benutzer und Passwortangabe von Ihnen, können Sie diese Angaben auch in der URL mit senden. Die URL lautet in diesem Fall:

ftp://Benutzer:Passwort@ftp.foo.org/

Benutzer: ist durch Ihren Benutzernamen zu ersetzen,
Passwort: durch das zugehörige Passwort.
Bitte beachten Sie, dass Ihr Benutzer und Passwort hierbei im Klartext eingegeben wird und sowohl in der Verlaufliste Ihres Browsers als auch ggf. in Logfiles anderer Proxyserver sichtbar ist !

Fragen zu Protokolldateien, Auswertung und Statistik

Wie und womit kann ich meine Logfiles auswerten?

Squid Logfiles können schnell sehr umfangreich werden. Es gibt eine Menge Tools für eine Auswertung dieser Logfiles. Ein Standardtool kann hier leider nicht angeboten werden, da das "richtige" Tool sehr von der Art der gewünschten Auswertung abhängt.

I.d.R. ist jedes Tool auf bestimmte Auswertungen spezialisiert. Eine Auswahl von Tools zur Auswertung der Logfiles finden Sie auf der Homepage von Squid unter:

http://www.squid-cache.org/Scripts/

Fragen zu den Squid Versionen

Fragen zu weitere Software rund um Squid

Begriffserklärung

Problembeschreibungen

Uploads ab einer bestimmten Größe schlagen fehl.

Problemstellung: Uploads (z.B. über ein Webinterface) schlagen ab einer bestimmten Größe fehl.

Ursache: Es ist ein "request_body_max_size" > "0" angegeben. Damit wird ein Request-Body (Inhalt einer Anfrage) begrenzt. Wenn der Upload mit PUT oder POST geschieht, begrenzt diese Option die max. Größe des Uploads.

Lösung: Setzen Sie "request_body_max_size" größer oder auf "0" (deaktiviert).

Der Internetzugang über Squid ist sehr langsam.

Problemstellung: Der Internetzugang über den Squid Proxy ist sehr langsam. Das lokale Netz ist -auch über den Proxy- schnell erreichbar, Das Internet ohne Proxy ebenfalls.

Usache: Dies kann mehrere Gründe haben, einer der häufigsten Gründe ist, dass Squid zuerst versucht ein Ziel direkt zu erreichen (ohne über den Übergeordneten Proxy / die Firewall zu gehen). Dies ist zumindest für alle Ziele im Internet nicht möglich und führt zu einem Timeout.

Lösung: Prüfen Sie, ob in Ihrer Konfigurationsdatei (squid.conf) Einträge der Art

allways_direct ... 
oder
never_direct ...
existieren.

In der Regel sollte allein der Eintrag "never_direct allow all" das Problem beheben.

Weitere Einträge sind nur notwendig, wenn es Ziele gibt, die Sie nicht über den/die Parents erreichen können oder wollen. Diese Einträge müssen dann vor der Zeile "never_direct allow all" stehen.

Mein Browser zeigt nicht den aktuellen Inhalt der Seite an.

Problemstellung: Sie haben eine Seite aufgerufen die aktualisiert wurde, Ihr Browser zeigt Ihnen jedoch noch den alten Stand. Auch ein "Reload", "Aktualisieren" bzw. "Neu Laden" bringt keinen Erfolg.

Ursache: Der Proxyserver speichert statische Seiten zwischen und liefert bei erneuten Anfragen die Seiten aus diese Speicher (Cache).

Normalerweise bestimmt der Proxy selbst anhand seiner Regelwerke ob und wie lange er Seiten im Cache behält.

Dynamische oder durch Metadaten entsprechend gekennzeichnete Seiten werden grundsätzlich nicht im Cache gehalten. Häufig aktualisierte Seiten werden auch entsprechend häufig auf Ihre Aktualität geprüft.

Ein ähnliches Verhalten haben auch die meisten Browser, nur sind sie i.d.R. nicht so komplex in der Berechnung der Aktualität einer Seite.

Lösung: Der Browser kann durch einen "Reload" (auch "Aktualisieren" oder "Seite neu Laden" genannt) aufgefordert werden, die Seite erneut vom Proxyserver zu holen.

Sollte dies kein Erfolg bringen, weil die Seite auch im Proxy noch auf einem alten Stand ist, so können einige Browser dazu veranlasst werden, bei ihrer Seitenanforderung an den Proxy ein 'no-cache' mit zu senden.

Dies veranlasst wiederum den Proxy, die Seite nicht aus dem eigenen Cache sondern direkt vom Webserver zu holen.

Beim Internet Explorer bzw. Netscape wird das Senden von 'no-cache' durch gleichzeitiges drücken von "Strg" bzw. "Shift" + Reload-Button veranlasst.

Auch dies kann u.U. fehlschlagen.

Beim Internet Explorer Versionen < 5.5 arbeitet diese Funktion in Verbindung mit transparenten Proxys fehlerhaft.

Hierfür gibt es im Squid-Proxy ab Version 2.4 die Option 'ie_refresh' die diesen Browserfehler im Proxy ausgleicht (nur bei transparenten Proxys erforderlich).

Einige Webserver stehen auch hinter weiteren Proxyservern im Internet, auf die Sie keinen Einfluss haben. Hier hilft nur ,,warten''.

Bei Frameseiten, muss ggf. erst das einzelne Frame in ein eigenes Browserfenster geladen werden bevor ein Reload greift, da sonst nur die Frameset-Seite neu geladen wird, die Frameinhalte aber noch aus dem Cache kommen.

Fehlermeldung: 'FATAL: Cannot open HTTP Port'

Problemstellung: Beim Start des Squid-Proxyservers erscheint im Log die Fehlermeldung:

"FATAL: Cannot open HTTP Port"

Ursache: Hier gibt es im wesentlichen zwei Gründe:

1. Squid hat keine Berechtigung den Port zu belegen. Ports < 1024 (priveligierte Ports) können nur vom Benutzer "root" belegt werden.

2. der angegebene Port 'http_port' ist bereits belegt.

Beispiel: Sie haben in der Datei squid.conf als http_port den Port 80 angegeben. Auf dem gleichen Server läuft auch ein Webserver (Apache). Der Webserver belegt i.d.R. Port 80.

Wenn nach dem Webserver Squid startet, ist der Port bereits belegt und Squid kann diesen Port nicht mehr belegen.

Lösung:

1. Haben Sie einen Port < 1024 angegeben (http_port) muss Squid als root-Prozess starten.

2. Welche Ports bereits belegt sind, können Sie sich mit dem Befehl "netstat" anzeigen lassen.

Beispiel:

netstat -nl

Aktive Internetverbindungen (Nur Server) 
Proto Recv-Q Send-Q Local Address  Foreign Address State 
tcp        0      0 0.0.0.0:80     0.0.0.0:*       LISTEN 
tcp        0      0 0.0.0.0:21     0.0.0.0:*       LISTEN 
tcp        0      0 0.0.0.0:443    0.0.0.0:*       LISTEN 
. . .
Hier sind die lokalen Ports 80, 21 und 443 belegt (LISTEN).

FATAL: Failed to make swap directory /var/spool/cache: (13) Permission denied

Problemstellung: Beim Start des Squid-Proxyservers oder bei der Eingabe von "squid -z" zum Anlegen der Cacheverzeichnisse, erscheint die Fehlermeldung:

"FATAL: Failed to make swap directory /var/squid/cache: (13) Permission denied"

Ursache: Squid startet i.d.R. nicht unter 'root' sondern einem in der Konfigurationsdatei "squid.conf" unter "cache_effective_user" angegebenen Benutzer.

Dieser Benutzer muss die nötigen Rechte besitzen die Cacheverzeichnissstruktur (normalerweise unter /var/squid/cache/) anzulegen.

Mögliche Fehlerursachen sind:

Lösung: Prüfen Sie ob das Cacheverzeichnis (siehe "cache_dir" Eintrag in "squid.conf") existiert und legen Sie es ggf. manuell an (Bsp.: mkdir /var/squid/cache).

Geben Sie dem Verzeichnis den Benutzer und die Gruppe wie unter "cache_effective_user" und "cache_effective_group" in der Datei "squid.conf" angegeben (Bsp.: chown -R squid.nogroup/var/squid/cache).

Lassen Sie Squid die Verzeichnisstruktur neu erzeugen (squid -z).

Fehlermeldung: 'urlParse: Illegal character in hostname'

Problembeschreibung: In der Datei "cache.log" des Squid-Proxyservers finden sich häufig Fehlermeldungen von folgendem Typ:

"urlParse: Illegal character in hostname 'www.mistdomäne.de'"
"urlParse: Illegal character in hostname 'www.mist_domain.com'"

Ursache: I.d.R. sagt die Meldung, dass eine URL mit illegalen Zeichen eingegeben wurde. Im o.g. Beispiel ist der Buchstabe "ä" und der Unterstrich "_" als illegales Zeichen erkannt worden, da diese Zeichen nicht im RFC für Domainnamen vorkommen.

Durch ungeschulte Benutzer und Tippfehler sind diese Fehlermeldungen häufiger anzutreffen und stellen keine Beeinträchtigung des Betriebs dar.

Sonderfall: Eine Fehlermeldung von folgender Art:

"urlParse: Illegal character in hostname 'proxy.localdom.de:3128proxy.localdom.de'"

weist auf eine andere Ursache hin.

Es handelt sich hier um ein Zusammenspiel aus schlecht konfigurierten Internet Explorer und einer speziellen DLL von 'cydoor'.

Jede Anwendung, die dieses DLL benutzt wird entsprechende Fehlermeldungen in "cache.log" produzieren. Der Internet Explorer (IE) wird über ein automatisches Konfigurationsscript (proxy.pac) konfiguriert, enthält aber ebenfalls einen aktive oder inaktive manuellen Eintrag für Proxyserver.

Der IE benutzt nur das automatische Konfigurationsscript. Anwendungen die auf die cydoor DLL zugreifen benutzen jedoch BEIDE Einträge und produzieren den o.g. Fehler.

Lösung: Im IE muss der manuelle Proxyserver Eintrag nicht nur deaktiviert, sondern vollständig entfernt werden. D.h. die Felder für Proxyserver Adresse und Anschluss müssen leer sein. ODER die automatisch Proxykonfiguration (proxy.pac) muss entfernt werden und der IE muss vollständig manuell konfiguriert werden.

Über dieses Dokument ...

Squid FAQ
 

This document was generated using the LaTeX2HTML translator Version 99.2beta8 (1.43)

Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999, Ross Moore, Mathematics Department, Macquarie University, Sydney.

The command line arguments were:
latex2html -split 0 -t 'Squid FAQ' -dir ./faq -mkdir -white -notransparent -antialias -antialias_text -auto_link -html_version 3.2,table -no_math -iso_language DE -address mail@squid-handbuch.de faq.tex

The translation was initiated by Dirk Dithardt on 2003-09-10


next_inactive up previous
mail@squid-handbuch.de