Speziell dann, wenn es um Performance-Steigerung und Absicherung von Servern geht, fällt schnell der Begriff “Reverse-Proxy”. Doch was ist damit eigentlich gemeint? Hinter einem Reverse-Proxy steckt meistens ein Webserver. 

Soviel lässt sich zumindest über die reine Netzwerk-Topologie sagen. Welche Aufgabe der Proxy in dieser Konstellation genau erfüllt und wie er den Webserver dahinter abschirmt, das erläutern wir in unserem Text.

Was bedeutet „Reverse-Proxy Server“?

Bevor es um die Besonderheiten eines Reverse-Proxy Servers geht, möchten wir den Begriff Proxy erläutern. Ein Proxy ist eine Netzwerkkomponente, die als Vermittler auftritt. Er nimmt Anfragen entgegen und leitet sie von seiner eigenen Adresse an ein anderes System weiter. Antwortet das Zielsystem, wird auch diese Antwort wiederum entgegengenommen und an das Anfragesystem zurückgegeben.

Vermittlung mit Revision – ein Reverse Proxy Server kann viel mehr als Daten weiterleiten

Entscheidend dabei ist, dass ein Proxy eine vermittelnde Funktion hat. Dem anfragenden Client gegenüber verhält er sich wie ein Server, während er dem Zielsystem gegenüber wie ein Client auftritt. Im Gegensatz zu einem einfachen NAT-System kann ein Proxy die Daten nicht nur durchreichen, sondern auch lesen, verändern, cachen, filtern und vieles mehr. Somit sind die Möglichkeiten, die ein Proxy bietet, sehr vielfältig.

Ein wichtiger Anwendungsfall ist zudem die Abschottung von Systemen. Welche Vorteile das hat, wird vor allem dann klar, wenn man den Proxy als Zusatzkomponente und Puffer sieht. Je nach Konstellation kommt sie dann entweder der einen oder der anderen Kommunikationsseite zugute. Diese beiden Fälle unterscheiden wir in “Forward-Proxy” oder eben als “Reverse-Proxy” – beides erläutern wir in den folgenden Absätzen.

Forward Proxy als Schutzschirm konfigurieren

Ein Forward-Proxy wird typischerweise zur Abschirmung eines lokalen Netzwerkes verwendet. Stellt man sich beispielsweise ein Firmennetzwerk vor, könnten Anfragen an externe Netzwerke oder ins Internet nicht direkt an den Zielrechner gehen, sondern von einem Proxy im Firmennetzwerk vermittelt werden. Dieser nimmt die Anfrage netzintern entgegen und reicht sie dann an den externen Zielserver weiter. Somit bleibt dem Zielsystem die tatsächliche Netzwerkadresse des anfragenden Clients verborgen – kommuniziert wird lediglich die Adresse des Proxys.

Abbildung - Reverse-Proxy Server

Der Proxy könnte in diesem Zusammenhang auch noch weitere sinnvolle Aufgaben übernehmen. Einerseits lassen sich sowohl Anfragen als auch die entsprechenden Antworten vom Zielsystem filtern und somit eingrenzen. Darüber hinaus kann der Proxy den gesamten Datentransfer durch ein sinnvolles Caching reduzieren. Wurden zuvor gleiche Anfragen an den Proxy geleitet, kann dieser entscheiden, die zugehörige gecachte Antwort unmittelbar an den Client zurückzugeben. Die eigentliche Anfrage an das externe Zielsystem wird somit überflüssig, was für eine sehr schnelle Reaktionszeit und reduzierten Traffic sorgt.

Reverse-Proxy schützt die Zielsysteme vor Client-Zugriffen

Beim Reverse-Proxy wird die zuvor beschriebene Topologie invertiert. Unser Proxy befindet sich nun nicht mehr im Umfeld des anfragenden Systems sondern dient zur Abschirmung des Zielsystems. Typischerweise ist unser Zielsystem ein Webserver. Ein Client, der eine Anfrage schickt, adressiert in diesem Fall also den Proxy und nicht den Webserver. Die Adresse des Webservers bleibt somit verborgen. Das sorgt für eine Abschirmung und erschwert Attacken von Hackern oder durch Malware.

Hauptaufgaben eines Reverse-Proxy Servers

  • Caching von Inhalten zur Entlastung eines Webservers und Performancesteigerung
  • Abschirmung der Server die hinter dem Proxy liegen (Adressen sind nur dem Proxy bekannt)
  • Lastenverteilung auf mehrere Server, die nach außen alle unter einer einzigen IP-Adresse erreichbar gemacht werden können
  • Verschlüsselung von Webseiten

Abbildung 2 - Reverse-Proxy Server

 Reverse-Proxy Servers können noch mehr

Für zusätzliche Sicherheit kann ein Reverse-Proxy auch durch Virenscanner, Paketfilter oder Firewalls sorgen. Da nicht nur Anfragen, sondern auch übertragene Daten zunächst den Proxy passieren, kann dieser alles abschirmen, was den Webserver potenziell gefährdet. Auf diese Weise fungiert er als zusätzliche Sicherheitsebene, die schädliche Zugriffe erkennt und von gegebenenfalls sensiblen Daten fernhält.

Caching und Lastverteilung: Proxy assistiert dem Webserver

Auch die zuvor beschriebenen Vorteile im Bereich des Cachings sind nicht zu unterschätzen. Wird beispielsweise eine Webseite aufgerufen, so entscheidet der Proxy, ob die Anfrage überhaupt an das Zielsystem weitergeleitet werden muss. Im besten Fall kennt der Proxy bereits die Antwort aus vorherigen Zugriffen und kann diese zurückliefern. ohne den Webserver dafür zu beanspruchen. Dadurch ergibt sich automatisch eine Lastverteilung (Load-Balancing), weil der Proxy einen großen Teil der Anfragen eigenständig bedienen kann.

Zur Optimierung des Load-Balancings lässt sich ein Reverse-Proxy zudem so konfigurieren, dass er Anfragen an unterschiedliche Webserver weiterleitet. Für den Client wirkt es, als würde er sämtliche Anfragen an ein einziges System stellen. Alle Requests sind an die gleiche Netzwerkadresse gerichtet. Der Proxy ist jedoch in der Lage, diese Anfragen zu splitten und an verschiedene Systeme zu delegieren, deren Existenz für den Client verborgen bleiben. Die Systeme hinter dem Proxy können unterschiedliche IP-Adressen haben – für den Client richtet sich die Anfrage dennoch an eine einzige Adresse, was eine wichtige Voraussetzung für die Auflösung einer Domain ist.

Reverse-Proxy zur Verschlüsselung

Auch die Verschlüsselung von Webseiten kann von einem Reverse-Proxy geleistet werden. Das sorgt dafür, dass der Datenaustausch zwischen dem Proxy und dem Webserver völlig unverschlüsselt erfolgen kann. Auch das führt zu einer Entlastung des Webservers. Erst wenn der Proxy die unverschlüsselten Daten des Webservers empfängt, führt er seinerseits und autonom die TLS-Verschlüsselung durch, bevor er schließlich die Daten in verschlüsselter Form an den Client zurückgibt.

Photo by 愚木混株 cdd20 on Unsplash

Host Europe

Große Auswahl an günstigen Domain-Endungen – schon ab 0,08 € /Monat
Jetzt Domain-Check starten