Ein Reverse-Proxy wird zur Bereitstellung von Lastenausgleichsdiensten und zunehmend auch zur Durchsetzung der Sicherheit von Webanwendungen an strategischen Integrationspunkten in einem Netzwerk durch Webanwendungs-Firewalls, Firewalls für Anwendungsbereitstellungen und die Überprüfung von tiefergehenden Inhalten eingesetzt.
Im Netzwerk- und Web-Verkehr ist ein Proxy ein Gerät oder Server, das bzw. der im Namen anderer Geräte handelt. Er sitzt zwischen zwei Einheiten und führt einen Dienst aus. Proxys sind Hardware- oder Softwarelösungen, die zwischen dem Client und dem Server sitzen, um Anfragen und manchmal auch Antworten zu verwalten.
Meist sitzt ein Reverse-Proxy-Server vor Webservern und leitet Client-Anfragen (z. B. von Web-Browsern) an die Webserver weiter. Die angeforderten Ressourcen werden dann an den Client zurückgegeben, sodass es so aussieht, als stammten sie vom Proxy-Server selbst. Dies bietet eine zusätzliche Abstraktions- und Kontrollebene, um den reibungslosen Fluss des Datenverkehrs im Netzwerk zwischen Clients und Servern zu gewährleisten. Ein Reverse-Proxy bietet auch die Möglichkeit, Anfragen auf der Grundlage einer Vielzahl von Parametern wie Benutzergerät, Standort, Netzwerkbedingungen, Anwendungszustand und sogar der Tageszeit weiterzuleiten.
Ein Reverse-Proxy wird zur Bereitstellung von Lastenausgleichsdiensten für eine reibungslosere Benutzererfahrung und zunehmend auch zur Durchsetzung der Sicherheit von Webanwendungen an strategischen Integrationspunkten in einem Netzwerk durch Webanwendungs-Firewalls, Firewalls für Anwendungsbereitstellungen und die Überprüfung von tiefergehenden Inhalten eingesetzt.
In Kombination mit Cloud-Implementierungen kann ein Reverse-Proxy Cloud-Bursting- und Split-Anwendungsarchitekturen ermöglichen, die die wirtschaftlichen Vorteile der Cloud bieten, ohne die Kontrolle oder Sicherheit einzuschränken.
Während die gebräuchlichste Verwendung eines Reverse-Proxys der Lastenausgleich für Webanwendungen und APIs ist, werden Reverse-Proxys auch zum Auslagern von Diensten aus Anwendungen eingesetzt, um die Leistung durch SSL-Beschleunigung, intelligente Komprimierung und Caching zu verbessern. Reverse-Proxys ermöglichen außerdem föderierte Sicherheitsdienste für mehrere Anwendungen, indem sie die Sicherheit von Webanwendungen durchsetzen.
Ein Reverse-Proxy kann entweder als einfacher Weiterleitungsdienst fungieren oder aktiv am Austausch zwischen Client und Server teilnehmen. Wenn der Proxy den Client und den Server als separate Einheiten behandelt, indem er duale Netzwerkstapel implementiert, wird er als Vollproxy bezeichnet.
Ein Vollproxy stellt eine TCP-Client-Verbindung her, zusammen mit einer separaten TCP-Server-Verbindung, wobei eine kleine Lücke in der Mitte entsteht. Der Client verbindet sich an einem Ende mit dem Proxy, und der Proxy stellt eine separate, unabhängige Verbindung zum Server her. Diese ist auf beiden Seiten bidirektional. Es kommt unter keinen Umständen zu einer Überschneidung der Verbindungen von der Client-Seite zur Server-Seite, da die Verbindungen unabhängig voneinander sind.
Die Funktion eines Reverse-Proxys kann je nach Komplexität der Umgebung und den Bedürfnissen der Organisation von einem Gerät, einer Software oder einem Dienst übernommen werden.
NGINX Plus ist ein softwarebasierter Reverse-Proxy, der den Lastenausgleich, das Schicht-7-Routing und die Optimierung der Web-Performance ähnlich wie ein Hardware-Gerät übernimmt und sich ideal für cloudnative Umgebungen eignet. NGINX Plus kann sowohl in Public Clouds als auch in privaten Rechenzentren zu geringeren Kosten als ein Vollproxy eingesetzt werden.
In komplexeren und hybriden Umgebungen fungiert das F5-BIG-IP-System als Vollproxy. Das System kann als Reverse-Vollproxy-Server eingesetzt werden und ist in der Lage, Anfragen und Antworten abzufangen, zu prüfen und mit ihnen zu interagieren. Dazu gehören die grundlegenden Funktionen des Lastenausgleichs und der Optimierung der Web-Performance sowie fortschrittlichere Dienste zur Datenverkehrsverwaltung wie die Sicherheit auf Anwendungsebene, die Web-Beschleunigung, das Seiten-Routing und ein sicherer Fernzugriff.