Starten von Squid

Installieren Sie das squid-Paket, falls es nicht bereits installiert ist. squid gehört nicht zum Standard-Installationsumfang von SUSE Linux Enterprise Server.

Squid ist in SUSE® Linux Enterprise Server bereits vorkonfiguriert. Sie können das Programm unmittelbar nach der Installation starten. Um einen reibungslosen Start zu gewährleisten, sollte das Netzwerk so konfiguriert werden, dass mindestens ein Namenserver und das Internet erreicht werden können. Es können Probleme auftreten, wenn eine Einwahlverbindung zusammen mit einer dynamischen DNS-Konfiguration verwendet wird. In diesem Fall sollte zumindest der Namenserver eingegeben werden, da Squid nicht startet, wenn kein DNS-Server in /etc/resolv.conf gefunden wird.

Befehle zum Starten und Stoppen von Squid

Geben Sie zum Starten von Squid als root in der Kommandozeile den Befehl rcsquid start ein. Beim ersten Start muss zunächst die Verzeichnisstruktur des Cache in /var/cache/squid definiert werden. Dies geschieht automatisch über das Startskript /etc/init.d/squid und kann einige Sekunden oder sogar Minuten in Anspruch nehmen. Wenn rechts in grüner Schrift done angezeigt wird, wurde Squid erfolgreich geladen. Um die Funktionsfähigkeit von Squid im lokalen System zu testen, geben Sie localhost als Proxy und 3128 als Port im Browser an.

Definieren Sie anschließend in der Konfigurationsdatei /etc/squid/squid.conf ACLs, die den Zugriff auf den Proxy steuern. Weitere Informationen zu ACLs finden Sie unter Abschnitt 29.4.2, „Optionen für die Zugriffssteuerung“ und im Kommentar in der Datei squid.conf unter http_access.

Nach der Bearbeitung der Konfigurationsdatei /etc/squid/squid.conf muss Squid die Konfigurationsdatei erneut laden. Verwenden Sie hierfür rcsquid reload. Alternativ können Sie mit rcsquid restart einen vollständigen Neustart von Squid durchführen.

Mit dem Kommando rcsquid status kann überprüft werden, ob der Proxy ausgeführt wird. Mit dem Befehl rcsquid stop wird Squid heruntergefahren. Dieser Vorgang kann einige Zeit in Anspruch nehmen, da Squid bis zu einer halben Minute (Option shutdown_lifetime in /etc/squid/squid.conf) wartet, bevor es die Verbindungen zu den Clients trennt und seine Daten auf die Festplatte schreibt.

[Warning]Beenden von Squid

Das Beenden von Squid mit kill oder killall kann den Cache beschädigen. Damit Squid neu gestartet werden kann, muss ein beschädigter Cache gelöscht werden.

Wenn Squid nach kurzer Zeit nicht mehr funktioniert, obwohl das Programm erfolgreich gestartet wurde, überprüfen Sie, ob ein fehlerhafter Namenservereintrag vorliegt oder ob die Datei /etc/resolv.conf fehlt. Squid protokolliert die Ursache eines Startfehlers in der Datei /var/log/squid/cache.log. Wenn Squid beim Booten des Systems automatisch geladen werden soll, müssen Sie Squid mithilfe des YaST-Runlevel-Editors für die gewünschten Runlevels aktivieren. Weitere Informationen hierzu finden Sie unter Abschnitt 7.2.3, „Konfigurieren von Systemdiensten (Runlevel) mit YaST“.

Durch eine Deinstallation von Squid werden weder die Cache-Hierarchie noch die Protokolldateien entfernt. Um diese zu entfernen, müssen Sie das Verzeichnis /var/cache/squid manuell löschen.

Lokaler DNS-Server

Die Einrichtung eines lokalen DNS-Servers ist sinnvoll, selbst wenn er nicht seine eigene Domäne verwaltet. Er fungiert dann einfach als Nur-Cache-Namenserver und kann außerdem DNS-Anforderungen über die Root-Namenserver auflösen, ohne dass irgendeine spezielle Konfiguration erforderlich ist (siehe Abschnitt 21.4, „Starten des Namenservers BIND“). Wie dies durchgeführt werden kann, hängt davon ab, ob Sie bei der Konfiguration der Internetverbindung dynamisches DNS auswählen.

Dynamisches DNS

Normalerweise wird bei dynamischem DNS der DNS-Server während des Aufbaus der Internetverbindung vom Anbieter festgelegt und die lokale Datei /etc/resolv.conf wird automatisch angepasst. Dieses Verhalten wird in der Datei /etc/sysconfig/network/config mit der sysconfig-Variablen NETCONFIG_DNS_POLICY gesteuert. Legen Sie NETCONFIG_DNS_POLICY auf "" fest und verwenden Sie hierzu den YaST sysconfig-Editor (weitere Informationen hierzu finden Sie unter Abschnitt 7.3.1, „Ändern der Systemkonfiguration mithilfe des YaST-Editors "sysconfig"“). Geben Sie anschließend den lokalen DNS-Server in der Datei /etc/resolv.conf ein. Verwenden Sie die IP-Adresse 127.0.0.1 für localhost. Auf diese Weise kann Squid immer den lokalen Namenserver finden, wenn er gestartet wird.

Um den Zugriff auf den Namenserver des Anbieters zu ermöglichen, geben Sie ihn zusammen mit seiner IP-Adresse in die Konfigurationsdatei /etc/named.conf unter forwarders ein. Mit dynamischem DNS kann dies automatisch während des Verbindungsaufbaus erreicht werden, indem die sysconfig-Variable NETCONFIG_DNS_POLICY auf auto festgelegt wird.

Statisches DNS

Beim statischen DNS finden beim Verbindunsgsaufbau keine automatischen DNS-Anpassungen statt, sodass auch keine sysconfig-Variablen geändert werden müssen. Sie müssen jedoch den lokalen DNS-Server in die Datei /etc/resolv.conf eingeben, wie oben beschrieben. Außerdem muss der statische Namenserver des Anbieters zusammen mit seiner IP-Adresse manuell in die Datei /etc/named.conf unter Forwarders eingegeben werden.

[Tip]DNS und Firewall

Wenn eine Firewall ausgeführt wird, müssen Sie sicherstellen, dass DNS-Anforderungen durchgelassen werden.