exchange
Goto Top

transparenter Proxy, jeder Client eine IP

Clients hinter Proxy nicht verschleiern

Hallo,
für ein Projekt habe ich mir folgendes überlegt:

Mehrer Benutzer teilen sich eine Internetleitung mit mehreren externen IP Adressen. Jetzt hat jeder eine eigene externe Adresse und ich muss mir keine Gedanken über großartige logging Möglichkeiten machen, da ich nur die Zuordnung IP Adresse - Benutzer für rechtliche Zwecke mitloggen muss.

Mein Problem ist, dass ich geren einen http Proxy zwischen dem internen und öffentlichen Netz stellen will. Dieser dient eigentlich nur zur Bandbreitenminimierung (Cache). Jetzt ist aber ja eine der Aufgaben eines Proxys selbst als stellvertreter für einen Client auf zu treten. Wie schaffe ich es dem Proxy dies ab zu gewöhnen? Ich habe bisher noch nichts im Internet dazu gefunden, habe die Vermutung das dies auch nicht möglich ist.

Wenn nicht, gibt es eine alternative für den http Verkehr zu cachen?


Vielen Dank
Heiko

Content-Key: 104004

Url: https://administrator.de/contentid/104004

Printed on: April 18, 2024 at 19:04 o'clock

Member: datasearch
datasearch Dec 15, 2008 at 01:19:43 (UTC)
Goto Top
Hallo Heiko,

Das Problem ist, das der Proxy auch im transparentem Modus die Verbindung terminiert und neu aufbaut. Das führt dazu, das alle nachfolgenden Systeme nicht mehr sehen, von welcher Quell-IP die verbindung eigentlich kommt. Ein HTTP-Proxy (vermutlich verwendest du Squid) ist in der Lage, im HTTP-Request die Zeile "Forward For", gefolgt von der IP-Adresse des Clients hinzuzufügen. Du aber aus den Protokollen am Proxy sehr genau sehen wer wann welche Seite wie lange aufgerufen hat. Kommt es nun zu einem Streitfall, muss der Kläger entweder die "FORWARD-FOR" IP angeben oder sehr sehr genaue Informationen über die besuchten Seiten und abgerufenen Dateien inkl. Zeitstempeln liefern. Daraus lässt sich die Quelle ebenfalls bestimmen.

Alternativ könntest du mit (sehr viel) Aufwand jedem internem Client eine private Adresse geben, alle Öffentlichen am Proxy terminieren und über Zugriffsregeln die richtige Quelladresse am ausgehendem Interface für Verbindungen vom jeweiligem Client nutzen. So etwas müsste man theoretisch mit mehreren pools und acl´s hinbekommen.