Zum Inhalt springen
L

Wikipedia · einfach zusammengefasst · Stand

Proxy (Rechnernetz)

In einem Computernetzwerk ist der Proxy ein Vermittler zwischen Client und Server. Anstatt sich direkt mit einem Server zu verbinden, wird die Anfrage vom …

Inhalt6 Abschnitte
  1. 1. Grundprinzip und Sichtbarkeit
  2. 2. Arbeitsweise und Abgrenzung zu NAT
  3. 3. Lage und lokale Proxys
  4. 4. Schutz und weitere Funktionen
  5. 5. Spezialisierte Proxyformen und HTTP
  6. 6. Anonymisierung, Übersetzung und Risiken

Grundprinzip und Sichtbarkeit

Ein Proxy ist in einem Computernetzwerk ein Vermittler zwischen Client und Server. Der Client sendet seine Anfrage nicht unmittelbar an den Server, sondern an den Proxy. Dieser leitet sie an das tatsächliche Ziel weiter und kann sie davor oder danach filtern, verändern oder selbst beantworten. Er soll unter anderem Sicherheit und Leistung, etwa durch Lastausgleich, verbessern, kann Protokolle übersetzen und hilft, verteilte Systeme zu strukturieren und zu kapseln.

Ein herkömmlicher Proxy ist für beide Seiten ein eigener Kommunikationspartner: Der Client adressiert bewusst den Proxy, beispielsweise weil der Webbrowser entsprechend eingestellt ist. Der Proxy erscheint dem Client wie ein Server und dem Zielsystem wie ein Client. Ein transparenter Proxy ist für eine Seite dagegen nahezu unsichtbar. Diese Seite adressiert scheinbar direkt das Ziel; die Netzwerkinfrastruktur leitet die Anfrage jedoch automatisch über den Proxy. Für mindestens eine der beiden Seiten tritt ein Proxy also als vermeintlicher Kommunikationspartner auf.

Arbeitsweise und Abgrenzung zu NAT

Ein typischer, auf ein bestimmtes Protokoll wie HTTP oder FTP spezialisierter Proxy heißt Dedicated Proxy oder Proxy-Server. Er analysiert die Kommunikation als zusammenhängende Daten, kann Anfragen filtern und verändern sowie entscheiden, ob und in welcher Form Antworten weitergereicht werden. Mehrere Dedicated Proxys können auf einem Gerät parallel laufen, um verschiedene Protokolle zu bedienen.

Technisch arbeitet ein Dedicated Proxy auf der OSI-Schicht 7, der Anwendungsschicht. Die Verbindung vom Client zum Proxy und die Verbindung vom Proxy zum Ziel werden jeweils beendet und neu aufgebaut; es entstehen zwei eigenständige Verbindungen. Das unterscheidet ihn von NAT (Network Address Translation, Netzwerkadressübersetzung), das Pakete grundsätzlich lediglich per Adressumsetzung weiterreicht.

Ein Circuit Level Proxy oder generischer Proxy arbeitet dagegen protokollunabhängig auf den OSI-Schichten 3 und 4. Er filtert nach IP-Adressen und Ports, unterstützt teilweise die Authentifizierung beim Verbindungsaufbau und kann Daten einfach zwischen Netzwerkschnittstellen weiterleiten. Weil er das Anwendungsprotokoll nicht kennt, kann er Inhalte weder einsehen noch beeinflussen. Er kann für die Adressumsetzung NAT verwenden. Bei erweiterten Varianten kann etwa SOCKS auf OSI-Schicht 5 eine Anmeldung mit Kennung und Passwort ermöglichen.

Lage und lokale Proxys

Als eigene Netzwerkkomponente liegt ein Proxy physisch zwischen Quell- und Zielsystem. In einem IP-Netz kann er beim Durchgang der Datenpakete IP-Adressen übersetzen. Damit lassen sich die tatsächlichen Adressen der Kommunikationspartner verbergen und auch adressierungstechnisch inkompatible Teilnehmer oder Netzwerke verbinden. NAT kann beispielsweise ein privates Netz über nur eine offizielle IP-Adresse mit dem Internet verbinden. Da das Zielsystem den Proxy statt des Clients sieht, richten sich mögliche Angriffe von dort zunächst gegen den Proxy und nicht unmittelbar gegen den Client.

Ein lokaler Proxy läuft unmittelbar auf dem Quell- oder Zielsystem, zwischen Anwendung und Netzwerkdienst. Er dient meist als Filter oder Konverter, kann aber die wahre IP-Adresse des Systems nach außen nicht verbergen. Intern nutzt er häufig eine Portumleitung oder die Loopback-Adresse 127.0.0.1.

Auf dem Quellsystem sendet die Anwendung ihre Anfragen an den Port der lokalen Proxy-Software. Diese verbindet sich stellvertretend mit dem Ziel und leitet auch dessen Antworten zur Anwendung zurück; beide Richtungen können geprüft oder gefiltert werden. Genannte Beispiele sind Polipo für HTTP mit Cache- und Filterfunktion, Proxomitron sowie SpamPal für bestimmte Mailclients. Auf dem Zielsystem nimmt die lokale Proxy-Software Anfragen aus dem Netz entgegen, verbindet sich mit dem eigentlichen lokalen Dienst und kann dessen Antworten analysieren, verändern oder statistisch auswerten.

Schutz und weitere Funktionen

Als Forward-Proxy kann ein Proxy Clients eines privaten Netzes beim Zugriff auf öffentliche Netze schützen. Antwortpakete gehen zunächst an den Proxy, der die Verbindung kontrollieren kann. Sicherungsmaßnahmen konzentrieren sich dadurch auf wenige Proxys statt auf viele Clients. In einem vorgeschalteten Bastionsnetz (Jump Host) lassen sie sich einfacher umsetzen; weitere interne Server können auch bei einer Kompromittierung des Proxys zunächst geschützt bleiben.

Ein Reverse Proxy schützt umgekehrt Server: Er nimmt Anfragen aus dem Internet entgegen und leitet sie an Server im internen Netz weiter. Der eigentliche Server ist extern nur über den Proxy erreichbar und seine Adresse bleibt dem Client verborgen. Im Beispiel eines Online-Shops stehen Webserver und Proxy im Internet, während die Datenbank mit Kundendaten hinter einer Firewall liegt.

Weitere mögliche Aufgaben sind Lastverteilung und höhere Verfügbarkeit in einem Proxyverbund, Bandbreitenkontrolle für Benutzer und Gruppen, das Standardisieren von Datenformaten, das Analysieren und Filtern von Verbindungen und Befehlen sowie die Protokollierung. Protokolle ermöglichen Statistiken und das Erkennen unerwünschter Verbindungen. Ein Reverse Proxy kann außerdem Anfragen selbst beantworten und dadurch Dienste beispielsweise um spezielle Statistiken erweitern. Ein offener Proxy ist ohne Anmeldung für alle nutzbar; er kann versehentlich durch Fehlkonfiguration oder trojanisierte PCs entstehen oder absichtlich zur weitgehenden Anonymisierung eingerichtet werden.

Spezialisierte Proxyformen und HTTP

Dedicated Proxys können Inhalte verändern, eigene Anfragen senden und als Cache arbeiten. Sie werden unter anderem als SMTP-Virenscanner sowie als FTP-Verbindungs- und Befehlsfilter eingesetzt. Ein HTTPS-Webproxy kann eine Verbindung terminieren, um Inhalte auf Schädlinge zu prüfen. Zum Browser verschlüsselt er dann mit einem eigenen Zertifikat weiter. Der Benutzer sieht dadurch nicht mehr das Originalzertifikat des Webservers und muss darauf vertrauen, dass der Proxy dessen Gültigkeit korrekt prüft, was laut Artikel häufig nicht geschieht.

Ein Cache beantwortet wiederholte Anfragen aus seinem Speicher und verringert dadurch Netzlast; vollständige Aktualität ist dabei in der Regel nicht garantiert. Proxys können Webseiten, Downloads, Malware, Skripte oder Werbung filtern und Zugriffe protokollieren. Über Benutzerauthentisierung lassen sich Gruppen unterschiedliche Whitelists oder Blacklists zuordnen. Weitere genannte Formen sind SMTP-, IMAP-, IRC- und NNTP-Proxys sowie Exchange-Frontend-Server und Citrix Secure Gateway, die RPC beziehungsweise ICA über HTTP(S) tunneln.

Eine Proxy-Firewall verwendet Dedicated Proxys oder Circuit Level Proxys als Filtermodule und entscheidet anhand von Regeln, welche Daten weitergeleitet werden. Sie kann zusätzlich konvertieren, cachen und weitere Proxyfunktionen übernehmen. Transparente Proxys fangen Ports am Router ab und leiten sie zum Proxy weiter, sodass keine Proxy-Einstellung an jedem PC nötig ist. Browser können HTTP-Proxys über die Umgebungsvariable „http_proxy=“, per direkter Konfiguration, transparent, über Proxy Auto-Config (PAC) oder über WPAD finden. Bei WPAD liegt eine PAC-Datei unter einer erratbaren URL, etwa „http://wpad.example.com/wpad.dat“.

Anonymisierung, Übersetzung und Risiken

Ein Anonymisierungs-Proxy wie Anonymizer oder Tor leitet Daten weiter, sodass der Zielserver die IP-Adresse des Clients nicht direkt auslesen kann. Er kann die Herkunft eines Clients verschleiern und wird unter anderem genutzt, um sich staatlicher oder anderer Verfolgung beziehungsweise Kontrolle zu entziehen. Über Webseiten-Proxys lassen sich beliebige Webseiten unter der URL des Dienstes anfordern; damit können Einschränkungen von Firmen- oder Schulnetzen oder Geoblocking durch einen Proxy in einem anderen Land umgangen werden. Der Zielserver sieht dabei nur die URL des Anonymisierungsdienstes.

Ein Translating Proxy übersetzt dagegen Protokolle und wird auch Gateway, Transport oder Agent genannt. Ein Cern Proxy kann beispielsweise mit dem Client HTTP verwenden und zum Server über FTP oder Gopher verbinden. Auch XMPP-Transports beruhen auf diesem Konzept.

Schlecht konfigurierte Proxys können missbraucht werden, etwa für Angriffe oder zum Spamversand; als Quelle erscheint dann die Adresse des Proxys, was Folgen für den Betreiber haben kann. Caches und Werbefilter verändern außerdem Webserver-Zugriffsstatistiken, weil zwischengespeicherte Inhalte nicht beim Webserver erscheinen und Werbung teils nicht geladen wird. Proxy-Protokolle können nutzerbezogen ausgewertet werden, etwa nach besuchten Webseiten und Verweildauer.

Offene Proxys werden in manchen Foren und in Wikipedia für nicht angemeldete Nutzer häufig über IP-Sperren ausgeschlossen. Besonders wichtig ist: Der Betreiber eines offenen Proxys kann die Sitzung weitgehend kontrollieren, Daten aufzeichnen und Inhalte unbemerkt fälschen. Friend-to-Friend-Proxys sollen das Risiko durch geprüfte private Verbindungen verringern. SSL/TLS zum Zielsystem, beispielsweise HTTPS, kann Manipulation durch den Proxy verhindern, solange Umsetzung und Verfahren nicht fehlerhaft oder untergraben sind.

Lernvideos zu Proxy (Rechnernetz)

Weiterlesen

Rechnernetz Ein Rechnernetz, Computernetz oder Computernetzwerk ist ein Zusammenschluss verschiedener technischer, primär selbstständiger elektronischer Systeme … Client Man nennt auch ein Endgerät selbst, das Dienste von einem Server abruft, Client. Das Gegenstück zum Client ist das jeweilige Serverprogramm bzw. der Server … Server Ein Server als Software ist ein Programm, das im Client-Server-Modell mit einem anderen Programm, dem Client (englisch für Kunde), kommuniziert. · Ein Hardware- … Hypertext Transfer Protocol Das Hypertext Transfer Protocol (HTTP; englisch für Hypertext-Übertragungsprotokoll) ist ein 1991 eingeführtes zustandsloses Protokoll zur Übertragung von … Firewall Eine Firewall (von englisch firewall [ˈfaɪəwɔːl] ‚Brandwand' oder ‚Brandmauer') ist ein Sicherungssystem, das ein Rechnernetz oder einen einzelnen Computer vor … Port (Netzwerkadresse) Zusammen mit der IP-Adresse ermöglicht der Port die Adressierung eines Servers oder Clients. Durch Angabe von Quell- und Zieladresse, jeweils bestehend aus IP … OSI-Modell Das ISO/OSI-Referenzmodell (englisch Open Systems Interconnection model) ist ein Referenzmodell für Netzwerkprotokolle als Schichtenarchitektur. Server (Software) Die Kommunikation erfolgt nach dem Client-Server-Modell. Die Dienstleistung des Servers ist spezifisch für den Server, so dass für jede Dienstleistung ein … Internet Protocol Das Internet Protocol (IP; deutsch Internetprotokoll) ist ein in Rechnernetzen weit verbreitetes Netzwerkprotokoll und stellt durch seine Funktion die … Netzwerkadressübersetzung Netzwerkadressübersetzung (englisch Network Address Translation, kurz NAT) ist in Rechnernetzen der Sammelbegriff bei Änderungen von Adressen im IP-Header … Netzwerkprotokoll Ein Netzwerkprotokoll (auch Netzprotokoll) ist ein Kommunikationsprotokoll für den Austausch von Daten zwischen Computern bzw. Prozessen, die in einem … IP-Adresse Im Falle von Ethernet-Netzen dient das ARP (Address Resolution Protocol) zum Auffinden der Hardwareadresse. ARP arbeitet auf der zweiten Schicht des OSI …