logoOL.gif
user_gelb_schwarz_or.gif
logoUL.gif
logoUR.gif claim.gif
LinuxUser LinuxCommunity EasyLinux Linux-Magazin International
      Anzeige
      Anzeige

Erschienen in LinuxUser 05/2000

WWWOFFLE - World Wide Web Offline Explorer

Die Proxy-Alternative

von Sebastian Eschweiler


Wer unter Linux "Proxy" sagt, der muss auch "Squid" sagen - oder etwa nicht? Von vielen unbeachtet, gibt es nämlich noch ein kleines Programm als Alternative: WWWOFFLE. Wer sich jetzt schon von dem etwas merkwürdigen Namen abschrecken lässt, tut dem Programm Unrecht. WWWOFFLE bietet nicht nur als Proxy seine Dienste an, sondern ist auch wunderbar als Cacher zu gebrauchen. Wie man für sein Heimnetzwerk WWWOFFLE als Proxy einrichtet, beschreibt der nachfolgende Artikel.

Sicher ist Squid nicht immer die erste Wahl, wenn man vor hat, seinen Server mit Proxy-Fähigkeiten auszustatten. Insbesondere bei kleinen Netzwerken ist WWWOFFLE oft die bessere Alternative. Kombiniert mit der Fähigkeit, Webseiten aus dem Cache auch offline zur Verfügung zu stellen, hilft das Programm sogar, Kosten zu sparen.

Was ist ein Proxy?

Zunächst eine kurze Erklärung: Um in einem lokalen Netzwerk (LAN) von allen Rechnern Zugriff auf das Internet zu haben, scheint es wenig sinnvoll, in jeden PC ein Modem bzw. eine ISDN-Karte einzubauen. Hier greift der Proxy ein: Es wird lediglich ein einziger Rechner mit dem Internet verbunden und alle anderen PCs richten ihre Internet-Anfragen an diesen Rechner, der online ist. Das Programm, das auf dem Einwahlrechner läuft und diesen Dienst bereitstellt, wird Proxy genannt.

Sobald ein Client Daten aus dem Internet anfordert, übernimmt der Proxy die Vermittlung der Datenpakete. Es kann also je nach Netzwerkgröße bedeutend weniger Geld kosten, einen Proxy einzusetzen, als für jeden PC einzeln Hardware zur Verfügung zu stellen.


Abb. 1: WWWOFFLE-Cache-Informationen

Alles kostenlos

WWWOFFLE steht zum kostenlosen Download [1] im Internet bereit. Dort findet man sowohl den Sourcecode zum Kompilieren als auch zwei Binaries für Red Hat und Debian. Das manuelle Erzeugen des Programms stellt keine große Schwierigkeit dar und ist im nachfolgenden Abschnitt kurz beschrieben. Oft findet man das Paket WWWOFFLE aber schon in Linux-Distributionen wie SuSE Linux. Hier ist die Installation mit YaST natürlich noch ein wenig einfacher. (Zu finden ist das WWWOFFLE-Paket bei SuSE unter der Serie n.)

Fertig zur Installation

Ist die ca. 500 KB große Datei erst einmal auf der Festplatte, dann ist die Installation in wenigen Minuten erledigt. Hier die einzelnen Schritte:

Tabelle 1: Anpassung des Makefiles
LOCALHOST= Geben Sie hier einfach den Namen und den Port des Servers an, auf dem WWWOFFLE zum Laufen gebracht werden soll. Die Standardeinstellung (localhost:8080) kann meistens einfach übernommen werden.
INSTDIR= Diese Variable bezeichnet das Verzeichnis, in das WWWOFFLE später installiert wird. Der Default-Wert ist hier /usr/local.
SPOOLDIR= Wie der Name schon sagt, wird hier das Spool-Verzeichnis von WWWOFFLE angegeben. Die Standardeinstellung ist /var/spool/wwwoffle und kann ohne Bedenken ebenfalls beibehalten werden. (In einem Spool-Verzeichnis werden Daten zwischengespeichert; so finden Sie auch laufende Druckjobs oder noch nicht abgeholte E-Mails in Unterverzeichnissen von /var/spool.)
CONFDIR= Bezeichnet das Verzeichnis, in dem die Konfigurationsdatei wwwoffle.conf abgelegt wird. Viele Distributionen benutzen anstelle der Standardeinstellung /var/spool/wwwoffle das Verzeichnis /etc/wwwoffle.
LANG= Mit dieser Option können Sie zwischen den Sprachen Deutsch (de), Französisch (fr), Spanisch (es) und natürlich Englisch wählen. Englisch ist der Standardwert für diese Variable. Falls sie eine andere Sprache bevorzugen, entfernen sie einfach die Kommentarzeichen (#) vor der entsprechenden Auswahl im Makefile. Die hier vorgenommenen Spracheinstellungen machen sich in den Webseiten, die WWWOFFLE zur Konfiguration bereit hält, bemerkbar. Weitere Informationen hierzu finden Sie weiter unten.
CC=/CFLAGS= Hier werden der Compiler und die Compiler-Parameter angegeben. Im Normalfall sollte es nicht nötig sein, hier Veränderungen vorzunehmen.

Das Herz von WWWOFFLE: wwwoffle.conf

Die Datei wwwoffle.conf bildet wirklich das Herz des ganzen Programms, da hier alle Optionen und Einstellungen an zentraler Stelle hinterlegt werden. Lassen Sie sich nicht vom Umfang dieser Datei abschrecken - in der Regel lässt sich WWWOFFLE sofort mit den Standard-Einstellungen verwenden. Nur wenn Sie auch die "abstruseren" Fähigkeiten des Programmes nutzen wollen, müssen Sie größere Änderungen an der Datei wwwoffle.conf vornehmen.

Die Konfigurationsdatei ist in 19 Abschnitte unterteilt; jeder dieser Abschnitte widmet sich einem Oberthema (z. B.: welche Rechner im Netz dürfen den Proxy-Service verwenden?) und sieht folgendermaßen aus:

Abschnitt
{ 
Option1 = Wert1
Option2 = Wert2
#Dies ist ein Kommentar
....
}

Der Aufbau dieser Einträge ist recht einfach:

Kommen wir nun zu den Details der einzelnen Abschnitte. Beachten Sie dabei vor allem die Abschnitte LocalHost, LocalNet und AllowedConnectHosts; alle übrigen können weitestgehend bei den Standard-Einstellungen belassen werden.

1. StartUp

Unter dieser Überschrift wird das Verhalten des Programms beim Start eingestellt. Sobald das Programm einmal mit der Konfigurationsdatei gestartet wurde, bleiben diese Einstellungen wirksam. Ein Verändern der wwwoffle.conf mit anschließendem erneuten Einlesen bewirkt keine Änderung. (Der Daemon muss also beendet und neu gestartet werden, damit Änderungen in diesem Abschnitt wirksam werden.) Die einzelnen Parameter finden Sie in Tabelle 2.

Tabelle 2: Abschnitt Nr. 1 - StartUp
http-port Hier wird der reguläre Port des Proxies eingetragen. Alle Daten werden dann über diesen Port ausgegeben.
wwwoffle-port Mit WWWOFFLE ist es möglich, Kontrollverbindungen herzustellen. Dieser Port wird dazu benutzt.
spool-dir Das Spool-Verzeichnis des Proxies wird über diese Variable festgelegt. Standardeinstellung ist /var/spool/wwwoffle.
run-uid Teilt dem Proxy die Rechte des angegebenen Benutzers zu. Einstellung: daemon.
run-gid Und dasselbe noch einmal für die Gruppe, in der der Proxy seine Dienste verrichten soll. Einstellung: daemon
use-syslog Hier darf der Benutzer auswählen, ob die syslog-Funktion für Meldungen benutzt werden soll. Diese Option ist auf yes voreingestellt und sollte auch beibehalten werden.
password Wenn Sie Ihren Proxy (genauer den Daemon wwwoffled) mit einem Passwort schützen wollen, ist hier die richtige Gelegenheit. Als Passwort kann eine beliebige Zeichenkette vergeben werden.
max-servers Tragen Sie hier ein, wie viele Serverprozesse maximal gleichzeitig in Betrieb genommen werden können. Der Standard ist hier mit acht Prozessen gut gewählt.
max-fetch-servers Wie viele Serverprozesse dürfen gleichzeitig Anfragen stellen? Geben Sie hier eine Zahl kleiner als max-servers ein, da WWWOFFLE ansonsten während der Bearbeitung der Anfragen blockiert ist.
dir-perm Geben Sie hier die Benutzerrechte in Unix-Notation an, die verwendet werden sollen, wenn das Spool-Verzeichnis erstellt wird.
file-perm Dieselbe Einstellung wie dir-perm, jedoch auf Dateien im Spool-Verzeichnis bezogen.
run-online Hier können Sie ein Programm angeben, das gestartet werden soll, wenn WWWOFFLE in den Online-Modus wechselt. Mehr zu den verschieden Betriebsarten von WWWOFFLE weiter unten.
run-offline Wie Sie sicher schon vermuten, passiert hier das gleiche für den Wechsel in den Offline-Modus.
run-autodial Und noch einmal für den Autodial-Modus.

2. Options

Dieser Abschnitt nimmt allgemeine Einstellungen des Proxies auf. Hinweise zu den Einstellungsoptionen entnehmen sie bitte Tabelle 3.

Tabelle 3: Abschnitt Nr. 2 - Options
log-level Hier wird angegeben, ab welcher Priorität Nachrichten protokolliert werden sollen. Mögliche Werte sind hier: debug, info, important, warning, fatal. Vorgegeben ist die Einstellung important. Die Option debug bietet die meisten Informationen, fatal protokolliert hingegen nur wirlich schlimme (fatale) Fehler.
index-latest-days Teilen Sie dem Proxy mit, wieviel Tage er als 'latest' bezeichnen soll. Diese Variable wird für verschiedene Dienste gebraucht. Standard ist hierbei der Wert 7, was genau sieben Tagen entspricht.
request-changed Option für den Online-Modus. Spezifiziert das "Alter" (im Cache), das eine Seite überschritten haben muss, um erneut aus dem Internet geladen zu werden. Der Standardwert ist hier mit 600 Sekunden (10 Minuten) angegeben. Bei Seiten, die selten erneuert werden, kann dieser Wert aber durchaus noch erhöht werden. Bei negativen Werten wird der Cache-Inhalt in jedem Fall gegenüber dem Internet vorgezogen. Das Alter der Cache-Seite spielt dann keine Rolle mehr.
request-changed-once Diese Option hat Vorrang vor request-changed. Mögliche Werte: yes/no. Gibt an, ob eine Seite nur einmal pro Sitzung heruntergeladen werden soll.
pragma-no-cache Mögliche Angaben: yes/no. Verhalten für Web-Seiten mit dem Attribut pragma: no-cache. Bei der Standardeinstellung yes wird diese Seite trotzdem erneut heruntergeladen. Bei Browsern, die das Attribut ignorieren, sollte die Einstellung no heißen.
confirm-requests Ist hier ein yes angegeben, folgt auf eine Bestellung im Offline-Modus zunächst eine Bestätigung. Danach wird dann die Bestellung aufgegeben.
socket-timeout Die Angabe erfolgt in Sekunden. Wartet WWWOFFLE länger als diese Angabe auf eine Antwort, wird die Verbindung aufgegeben.
connect-retry Mögliche Werte: yes/no. Weisen Sie den Proxy an, nach einem gescheiterten Verbindungsaufbau einen erneuten Versuch zu starten.
ssl-allow-port Geben Sie die Portnummer für Secure Socket Layer an. Bei https:// sollten Sie hier 443 als Einstellung wählen.
intr-download-keep (yes/no) Beendet der Browser die Verbindung während einer Übertragung im Online-Modus, wird der aktuelle Status der Übertragung gespeichert.
intr-download-size Beendet der Browser die Verbindung während einer Übertragung im Online-Modus, wird der Download nur fortgesetzt, wenn die Größe der Datei/Seite unter dem hier (in KB) angegebenen Wert liegt.
intr-download-percent Beendet der Browser die Verbindung während einer Übertragung im Online-Modus, wird der Download nur fortgesetzt, wenn bereits mehr Prozent als hier angegeben von der Seite übertragen wurden.
timeout-download-keep (yes/no) Wenn ein Download durch ein Server-Timeout beendet wird, kann hier angegeben werden, ob der Status der Übertragung gespeichert werden soll.

3. FetchOptions

Dieser Abschnitt steuert das Verhalten des Proxies beim Herunterladen von Seiten. Werden Variablen dieser Gruppe nicht eingetragen, wird als Standardwert no gewählt. Tabelle 4 gibt über die Optionen dieses Abschnitts Auskunft.

Tabelle 4: Abschnitt Nr. 3 - FetchOptions
stylesheets (yes/no) Sollen Stylesheets mit übertragen werden?
images (yes/no) Sollen Bilder mit übertragen werden?
frames (yes/no) Sollen Frames der HTML-Seite mit übertragen werden?
scripts (yes/no) Sollen Scripts mit übertragen werden? (Javascript)
objects (yes/no) Sollen Objekte mit übertragen werden? Als Objekte werden z. B. Java-Klassendateien angesehen.

4. ModifyHTML

In diesem Abschnitt können Sie angeben, ob WWWOFFLE die Web-Seiten um Zusatzinformationen ergänzen soll: Die Veränderungen erlauben es dem Anwender, leicht zu erkennen, ob Seiten aus dem Proxy oder direkt aus dem Internet kommen; im Offline-Modus lässt sich auch prüfen, ob das Ziel eines Links bereits gecached (und damit lesbar) ist. Informationen zu den möglichen Einstellungen finden Sie in Tabelle 5.

Tabelle 5: Abschnitt Nr. 4 - ModifyHTML
enable-modify-html (yes/no) Geben Sie hier an, ob die Veränderung der HTML-Seiten ermöglicht werden soll. Wenn die Option no gewählt wird, wird dieser Abschnitt nicht weiter ausgewertet, was eine kleine Geschwindigkeitssteigerung bedeutet.
add-cache-info (yes/no) Wählen Sie, ob am Ende jeder Seite eine von WWWOFFLE generierte Informationszeile erscheinen soll.
anchor-cached-begin Verweise (Links), die im Cache vorliegen, werden mit dem hier eingegebenen HTML-Code am Anfang ergänzt. Bei dem Code kann es sich z. B. um die Wahl einer anderen Farbe (<font color=...>)handeln.
anchor-not-cached-begin Verweise (Links), die nicht im Cache vorliegen, werden mit dem hier eingegebenen HTML-Code am Anfang ergänzt. Auf diese Weise kann auf Systemen mit automatischem Verbindungsaufbau ein Wählvorgang vermieden werden.
anchor-cached-end Wie anchor-cached-begin, jedoch auf das Ende bezogen.
anchor-not-cached-end Wie anchor-not-cached-begin, jedoch auf das Ende bezogen.
disable-script (yes/no) Wählen Sie, ob alle Scripts im Cache entfernt werden sollen.
disable-blink (yes/no) Wählen Sie, ob bei allen HTML-Dokumenten im Cache das blink-tag entfernt werden soll.
disable-animated-gif (yes/no) Soll die Animation bei gif-Dateien ausgeschaltet werden?

5. LocalHost

Dieser Abschnitt enthält eine Liste von Rechnernamen bzw. IP-Adressen, unter denen der WWWOFFLE-Server anderen Rechnern bekannt ist. Hiermit vermeiden wir, dass der Proxy zu sich selbst eine Verbindung aufbauen muss, um an seine eigenen Seiten zu gelangen. Die Namen oder Adressen werden einfach untereinander eingegeben. Beispiele für mögliche Angaben sind:

LocalHost
{
proxy
192.168.1.119
borg.linux-magazin.de
}
Der erste Eintrag sollte dabei der netzwerk-weit gültige Rechnername sein. Diese Angaben sollten Sie unbedingt an Ihren Rechner anpassen!

6. LocalNet

Liste von Rechnernamen bzw. IP-Adressen, die im lokalen Netz liegen und deshalb nicht in den Cache gelangen sollen. Da alle hier angegebenen Rechner lokal zur Verfügung stehen, sind diese Rechner auch im Offline-Modus zu erreichen. Beispiel:

LocalNet
{
192.168.1.*
}

Auch diese Angaben sollten Sie unbedingt an Ihren Rechner anpassen!

7. AllowedConnectHosts

Geben Sie hier eine Liste mit Rechnern (Name oder IP) an, mit denen WWWOFFLE kommunizieren darf. Um die Eingabe allgemeiner zu halten, dürfen hier Wildcards (* , ? , ..) verwendet werden. Beispiel:

AllowedConnectHosts
{
*.linux-magazin.de
192.168.1.*
} 
Wenn Sie hier die Standardvorgabe nicht anpassen, können Sie nur von Ihrem eigenen Rechner aus auf den Proxy zugreifen!

8. AllowedConnectUsers

Dieser Abschnitt gibt Ihnen die Möglichkeit, eine Liste mit Benutzern und zugehörigen Passwörtern zu erstellen, die den Proxy verwenden dürfen. Bei der Angabe wird der Benutzername durch einen Doppelpunkt vom Passwort getrennt. Beispiel:

mmusterf:top-secret

Hierbei ist besonders zu beachten, dass der Name und auch das Kennwort im Klartext abgespeichert werden. Die Datei wwwoffle.conf muss also durch entsprechende Rechtevergabe vor unerwünschten Zugriffen geschützt werden. (Die Benutzung dieser Funktion benötigt einen Browser, der mindestens die HTTP-1.1-Spezifikation unterstützt.)

9. DontCache

Legen Sie unter DontCache eine Liste von URLs und Adressen an, die nicht in den Cache-Speicher gelangen sollen. Beispiel:

DontCache
{
http://www.beispiel.de/
# (Diese Seite wird nicht gecached.)
ftp://ftp.*.de/
# (Alle deutschen ftp-Seiten werden nicht gecached.)
*://*/*.tar
# (Es werden keine tar-Dateien in den Cache aufgenommen.)
}
Wie Sie sehen, ist auch hier die Verwendung von Wildcards erlaubt.

10. DontGet

Dieser Abschnitt enthält eine Liste von Adressen/URLs, die nicht heruntergeladen werden sollen. Auf diese Weise ist es möglich, lästige Bannerwerbung zu umgehen. Mit der Variable replacement können Sie eine Ersatz-URL angeben.

11. DontGetRecursive

Liste aller Adressen/URLs, deren Inhalte WWWOFFLE nicht rekursiv holen soll.

12. DontRequestOffline

Liste aller Adressen/URLs, deren Bestellung im Offline-Modus nicht möglich ist. (WWWOFFLE merkt sich ansonsten alle im Offline-Modus angeforderten Seiten und holt deren Inhalte automatisch, sobald die Verbindung zum Internet das nächste mal steht.)

13. CensorHeader

Hier finden Sie eine Liste von HTTP-Headern, die entweder verändert oder herausgefiltert werden sollen. Mit der Option HEADER = TEXT kann ein Header (z. B. From, Cookie oder User-Agent) durch einen Text ausgetauscht werden. Da diese Optionen im Normalfall nicht gebraucht werden, gehen wir hier nicht weiter darauf ein.

14. FTPOptions

Hier werden Einstellungen in Verbindung mit der Übertragung per FTP (File Transfer Protocol) hinterlegt. Bei FTP-Servern wird grundsätzlich zwischen zwei Zugangsarten unterschieden. In den meisten Fällen handelt es sich um einen "anonymen" FTP-Zugang; daneben gibt es noch den persönlichen Zugang mit Benutzername und Passwort. Beim anonymen Zugang wird als Benutzername in der Regel anonymous verwendet; es ist bei der Benutzung dieser Server "guter Ton", seine richtige E-Mail-Adresse als Passwort zu verwenden, damit der Server-Betreiber eine Statistik über die Besucher seines Servers erstellen kann.

Bei nicht-anonymen Zugängen müssen Sie sich gegenüber dem jeweiligen FTP-Server mit einem individuellen Benutzernamen und Passwort identifizieren; entsprechend können Sie hier Dreier-Kombinationen aus Server/Name/Passwort eingeben. Hierzu noch einmal eine kleine Tabelle. (Tabelle 6)

Tabelle 6: Abschnitt Nr. 14 - FTPOptions
anon-username Zugangsname für anonymous FTP
anon-password Passwort für anonymous FTP
auth-hostname Hier können Sie FTP-Server mit nicht-anonymem Zugang konfigurieren. Zunächst ist der Name des Rechners in der Form: RECHNER[:PORT] anzugeben, z. B.: 196.58.2.2:8800
auth-username Für den unter auth-hostname angegebenen Rechner wird dieser Benutzername verwendet.
auth-password Für den unter auth-hostname angegebenen Rechner wird dieses Passwort verwendet.

Es können mehrere nicht-anonyme Rechner konfiguriert werden, so dass der komplette FTPOptions-Abschnitt wie folgt aussehen könnte:

FTPOptions
{
 anon-username = anonymous
#anon-password = 

 auth-hostname = ftp.eins.de
 auth-username = eins-user
 auth-password = PaSsWoRt

 auth-hostname = ftp.zweizwei.de
 auth-username = zwei2
 auth-password = 222-222
}  

15. MimeTypes

Mime-Typen teilen dem Browser anhand von Dateiendungen mit, welches Programm für die Anzeige bzw. Ausgabe einer Datei gestartet werden soll. Bei einem Blick in die Konfigurationsdatei werden Sie feststellen, dass bereits eine Reihe von Mime-Typendefiniert sind. Im Normalfall brauchen sie hier keine weiteren Ergänzungen vorzunehmen.

16. Proxy

Viele Internet-Provider stellen für Ihre Kunden ebenfalls einen Proxy bereit, über den alle WWW-Zugriffe laufen müssen, da ein richtiger Zugriff auf die jeweiligen Server verwehrt wird (es handelt sich dann um einen eingeschränkten Internet-Zugang). Damit WWWOFFLE die externen Proxies verwendet, müssen hier einige Angaben gemacht werden. Die benötigten Variablen sind in Tabelle 7 aufgeführt.

Tabelle 7: Abschnitt Nr. 16 - Proxy
default Geben Sie hier den Rechner an, der standardmäßig als Proxy benutzt werden soll. Die Syntax ist wieder RECHNER[:PORT]. Wenn kein Proxy benutzt werden soll, tragen Sie hier none ein.
URL-ANGABE Die Adresse eines Proxies, der zum Übermitteln bestimmter Seiten benutzt werden soll - so können Sie (etwa in Abhängigkeit vom Domain-Namen) verschiedene Proxies verwenden.
auth-hostname Falls der Proxy eine Authentifizierung benötigt, können Sie hier die notwendigen Angaben eintragen.
auth-username Der zugehörige Benutzername.
auth-password Das zugehörige Passwort.
ssl Wenn für SSL (Secure Socket Layer) ein spezieller Proxy benutzt werden soll, muss dieser hier angegeben werden.

17.DontIndex

WWWOFFLE protokolliert die URLs/Adressen, auf die zugegriffen worden ist, in einem Index-Verzeichnis. Unter DontIndex können bestimmte Adressen von dieser Protokollfunktion ausgeschlossen werden. Die Anzeige im Index gliedert sich in verschiedene Bereiche, die jeweils getrennt gesteuert werden können. Es können also für jeden Bereich verschiedene URLs ausgeschlossen werden. Die Variablen für die verschiedenen Index-Bereiche sind:

Die URL-Zuweisung erfolgt mit einem Gleichheitszeichen hinter der entsprechenden Variable. Wenn URLs ohne Zuweisung an eine dieser Variablen angegeben werden, ist die Protokollfunktion für alle Bereiche ausgeschaltet.

18. Alias

Hier kann für bestimmte URLs eine Umleitung aktiviert werden. Die Angabe erfolgt in folgender Syntax: URL-1 = URL-2. Beim Aufrufen von URL-1 wird automatisch auf die Seite unter URL-2 umgeleitet. Beispiel:

http://www.url1.de/ = http://www.url2.de/ 

19. Purge

Im Abschnitt Purge steuern Sie, wann WWWOFFLE Seiten aus dem Cache löschen soll - die Idee ist dabei, dass Internet-Seiten in der Regel nicht statisch sind sondern gelegentlich aktualisiert werden. Daher wäre es keine gute Idee, Seiten über Monate im Cache zu halten. Die einzelnen Parameter sind in Tabelle 8 beschrieben.

Tabelle 8: Abschnitt Nr. 19 - Purge
use-mtime (yes/no) Zunächst muss festgelegt werden, an welcher Angabe das Alter einer Datei festgestellt werden soll. Es gibt hier zwei Möglichkeiten: mtime (engl.: modification time; letzte Änderung) oder atime (engl.: access time; letzter Zugriff). Die Standardeinstellung ist bei dieser Option no: das Alter wird also anhand des letzten Zugriffs ermittelt.
max-size Geben Sie hier die Maximalgröße an, die der Cache erreichen darf. Die Angabe erfolgt in Megabyte.
use-url (yes/no) Sollen URL-Einstellungen geprüft werden? Wenn no angegeben ist, werden nur Host-Einstellungen geprüft.
del-dontget (yes/no) Befinden sich Inhalte im Cache, die von Rechnern aus DontGet kommen, werden diese bei der Auswahl yes sofort gelöscht.
del-dontcache Wie Option dontget, jedoch auf Rechner aus DontCache bezogen.
default Das Alter in Tagen, das Seiten im Cache maximal erreichen dürfen.
URLs Es können zusätzlich spezielle URLs eingetragen werden, für die ein eigenes Maximalalter definiert werden soll.

Nach diesem Konfigurationsmarathon durch die Datei wwwoffle.conf haben Sie vielleicht eine Vorstellung davon bekommen, was WWWOFFLE neben seiner Tätigkeit als einfacher Proxy noch leisten kann. Natürlich müssen Sie bei weitem nicht jede Option einstellen - die mitgelieferte Konfigurationsdatei kann als Ausgangspunkt für Anpassungen benutzt werden. Zum Testen des Proxies kann diese Datei (je nach System) sogar ohne Änderungen benutzt werden. Der folgende Abschnitt beschreibt nun endlich die Benutzung der Dienstprogramme wwwoffle und wwwoffled.

Der Daemon

Der Daemon wwwoffled läuft im Hintergrund und nimmt HTTP- und FTP-Anfragen an den Proxy entgegen. Außerdem ist wwwoffled für das Auswerten der Konfiguration in wwwoffle.conf verantwortlich. Sobald Anfragen an den Proxy-Port gestellt werden, wertet wwwoffled die erhaltenen Informationen aus und startet Serverprozesse - der eigentliche Server im WWWOFFLE-Paket ist dabei wwwoffles. Da sich der normale Anwender nicht um die Steuerung des Servers kümmern muss, soll hier auch nicht auf die Benutzung eingegangen werden.

Der Daemon bietet verschiedene Kommandozeilenoptionen, um das Verhalten beim Start und zur Laufzeit zu steuern. Um dem Daemon eine Konfigurationsdatei zur Auswertung mit auf den Weg zu geben, ist die Option -c vorhanden. Liegt Ihre wwwoffle.conf zum Beispiel im Verzeichnis /etc/wwwoffle/, dann geben Sie folgenden Befehl ein:

wwwoffled -c /etc/wwwoffle/wwwoffle.conf
Der Daemon läuft nun mit den Einstellungen in /etc/wwwoffle/wwwoffle.conf.

Wie Sie vielleicht noch wissen, haben Sie beim Konfigurieren der Variablen log-level einen Debugging-Level zugewiesen. Je nach Einstellung werden jetzt mit der Funktion syslog mehr oder weniger Debugging-Informationen ausgegeben. Möchten Sie wwwoffled trotzdem in einem anderen Debugging-Level starten, geben sie nach der Kommandozeilenoption -d einen Wert von 0 bis 5 an. Diese Zahlenwerte entsprechen den Angaben debug bis fatal bei der Variable log-level in wwwoffle.conf.

Wenn Sie wwwoffled mit der Option -h aufrufen, erhalten Sie eine kurze Erklärung aller möglichen Kommandozeilen-Argumente.

Über die Variablen run-uid und run-gid haben Sie in der Konfigurationsdatei bereits festgelegt, mit welchen Beutzerrechten wwwoffled gestartet werden soll. Damit diese Einstellung ihre entsprechende Wirkung zeigt, ist es nötig, dass wwwoffled vom Administrator root gestartet wird. Beachten Sie bitte, dass der Daemon laufen muss, damit die Proxy-Funktionen verwendet werden können.

wwwoffle selbst

Wenn Sie sich bis hier durchgearbeitet haben, wissen Sie schon sehr viel über die Konfiguration und den Daemon von WWWOFFLE. Auf die Anwendung des Proxies (und seines Kontrollprogrammes wwwoffle) sind wir bis jetzt aber noch nicht eingegagen. Es wird also höchste Zeit, endlich auch den Hauptbestandteil des Programmpaketes zu betrachten.

Die Tatsache, dass das Programm den Namen wwwoffle trägt, dürfte wohl niemanden mehr überraschen. Kommen wir also gleich zur Steuerung des Proxy-Programms. Wie bereits erwähnt, kennt wwwoffle mehrerer Betriebsarten:

Wechselt der Benutzer in den Online-Modus, signalisiert dieser Vorgang dem Proxy eine bestehende Datenverbindung (z. B. die Verbindung zu Ihrem Internet-Provider). Analog informiert der Wechsel in den Offline-Modus den Proxy darüber, dass die Verbindung nun nicht mehr besteht. Werden im Offline-Modus HTTP-Anfragen an den Proxy gerichtet, können nur Seiten, die sich im Cache befinden, zurückgeliefert werden - alle anderen Anfragen haben eine WWWOFFLE-Fehlermeldung zur Folge. Weiterhin ist es möglich, Seiten im Offline-Modus zu "bestellen": Sobald der Rechner wieder online ist, können alle Seiten mit einem Wechsel in den Fetch-Modus übertragen werden. Um einen Überblick über alle Kommandozeilenoptionen des Programms wwwoffle zu erhalten, geben Sie

wwwoffle -h

ein. Die wichtigsten Varianten sind wwwoffle -online und wwwoffle -offline. Auf eine Darstellung aller Möglichkeiten soll hier verzichtet werden, da die Steuerung in der Regel einfacher über den Browser erledigt werden kann. Wer jedoch lieber die Kommandozeile verwendet, kann alle Einstellungen auch dort wiederfinden.

Zur Browser-Steuerung hält das Paket WWWOFFLE einige spezielle Seiten bereit. Falls Ihr Browser noch nicht auf den Proxy-Zugriff eingestellt ist, lesen Sie bitte zuerst im letzten Abschnitt dieses Artikels Browser-Konfiguration nach, wie Sie die benötigten Anpassungen vornehmen.

Zunächst sollten Sie einen Blick auf die Willkommensseite des Proxies werfen. Geben Sie hierzu die URL http://localhost:8080/ ein. (Falls Sie den Standard-Port 8080 verändert haben, müssen Sie 8080 durch den neuen Port ersetzen.) Es erscheint eine Seite mit allgemeinen Informationen und einer kurzen Einführung in WWWOFFLE. Auf dieser Startseite finden Sie außerdem Links zu den verschiedenen Index-Seiten, die angeboten werden, um den Cache-Inhalt zu überblicken.

Wechseln Sie nun zur Seite http://localhost:8080/control/: hier haben Sie die Möglichkeit, in die verschiedenen Modi zu wechseln und die Konfigurationsdatei im Browser zu bearbeiten. Mit der URL-Angabe http://localhost:8080/index/ gelangen Sie auf die Seiten, die Ihnen den Inhalt des Proxy-Cache anzeigen.

Browser-Konfiguration

Um mit Ihrem Browser Zugriff auf einen Proxy-Server zu haben, sind einige Anpassungen nötig. Hierzu müssen Sie die Adresse und den Port des Proxy-Rechners wissen. Laufen Browser und Server auf dem gleichen Rechner, ist die Adresse natürlich localhost (bzw. 127.0.0.1 als IP-Adresse). Den Port haben Sie in der Konfigurationsdatei selbst vorgegeben; wir gehen für die folgenden Beispiele davon aus, dass Sie die Standardeinstellung (8080) übernommen haben. Ansonsten ersetzen Sie die Port-Angabe einfach durch die von Ihnen gewählte Port-Einstellung.

kfm

Wir beginnen mit dem KDE-Browser kfm. Unter dem Menüpunkt Einstellungen/Browser einstellen... finden Sie auf der Registerkarte Proxy alles, was Sie brauchen, um den Proxy bekannt zu machen. (Abbildung 2)


Abb. 2: Proxy-Einstellung unter kfm

Aktivieren Sie zunächst das Feld Benutze Proxy und geben Sie dann unter HTTP Proxy und FTP Proxy den Namen (oder die IP-Adresse) des Rechners an, auf dem der Daemon wwwoffled läuft (im Beispiel ist das localhost). Unter Port geben Sie (wie bereits oben besprochen) den WWWOFFLE-Port an. Schließlich können Sie unter Kein Proxy für noch Rechner angegeben, für die der Proxy nicht benutzt werden soll. Wie Sie bereits wissen, verwaltet WWWOFFLE seinen eigenen Cache - es wäre also Unsinn, auch noch eine Cache-Funktion des Browsers zu verwenden. Für den kfm schalten Sie das Zwischenspeichern über folgenden Menüeintrag aus: Einstellungen/Zwischenspeicher/Nicht in Zwischenspeicher schreiben.

Netscape

Damit dürften die Einstellungen für den kfm geklärt sein, und wir können uns mit der Konfiguration von Netscape beschäftigen.


Abb. 3: Proxy-Einstellung unter Netscape

Der in Abbildung 3 dargestellte Dialog ist unter dem Menüpunkt Edit/Preferences... zu finden. Wählen Sie zunächst die Option Manual proxy configuration aus und klicken Sie dann auf den Button View. Dann erscheint der Dialog aus Abbildung 4.


Abb. 4: Adress-Einstellungen für den Proxy unter Netscape

Hier geben Sie jetzt analog zur kfm-Konfiguration die Server-Adressen mit den Ports für die verschiedenen Proxy-Typen (FTP und HTTP) an. Unter No Proxy for: haben Sie wieder die Möglichkeit, den Zugriff auf spezielle Rechner nicht über den Proxy laufen zu lassen. Jetzt fehlt nur noch die Einstellung für den Browser-Cache. Zu finden ist dieser Dialog ebenfalls unter dem Menüpunkt Edit/Preferences... (Abbildung 5).


Abb. 5: Cache-Einstellungen unter Netscape

Stellen Sie die beiden Optionen Disk cache und Memory cache auf 0 KB und wählen Sie unten die Einstellung Never aus.

Das war's

Auch wenn der Funktionsumfang auf den ersten Blick erdrückend wirkt, sollten Sie sich nicht abschrecken lassen. Für den Anfang reicht es oft aus, den Proxy mit nur wenigen Veränderungen an der Konfiguration in Betrieb zu nehmen. WWWOFFLE bietet aber trotzdem genug Möglichkeiten um einen Proxy zusammen mit seinen Funktionen als Cacher professional zu nutzen. Wir wünschen Ihnen viel Spaß beim Ausprobieren und Testen. (hge)

Infos

[1] wwwoffle, Projekt-Homepage: http://www.gedanken.demon.co.uk/wwwoffle
[2] koffle, ein KDE-Frontend für die Verwaltung des wwwoffle-Cache: http://www.swin.de/~wjeinwag/

Der Autor

Sebastian Eschweiler ist Schüler und besucht derzeit die Klasse 10 eines Gymnasiums. In seiner Freizeit beschäftigt er sich mit Themen rund um Linux und KDE-Programmierung.

Copyright © 2000 Linux New Media AG

Dieser Online-Artikel kann Links enthalten, die auf nicht mehr vorhandene Seiten verweisen. Wir ändern solche "broken links" nur in wenigen Ausnahmefällen. Der Online-Artikel soll möglichst unverändert der gedruckten Fassung entsprechen.

Seite drucken | Feedback zu dieser Seite | Datenschutz | © 2018 COMPUTEC MEDIA GmbH

Nutzungsbasierte Onlinewerbung

[Linux-Magazin] [EasyLinux] [Linux-Community]