Reverse Proxy

Alltags-Analogie

ein Empfangstresen in einem großen Bürogebäude, an dem sich jeder Besucher zuerst melden muss, bevor er ins eigentliche Büro weitergeleitet wird

Was steckt dahinter?

Ein Reverse Proxy funktioniert wie ein Empfangstresen in einem großen Bürogebäude, an dem sich jeder Besucher zuerst melden muss, bevor er ins eigentliche Büro weitergeleitet wird. Technisch ist ein Reverse Proxy ein Server, der zwischen dem anfragenden Client und dem eigentlichen Anwendungsserver geschaltet ist und sämtliche eingehenden Anfragen zunächst selbst entgegennimmt, um sie dann passend weiterzuleiten. Dieser vorgeschaltete Server erfüllt dabei mehrere wichtige Aufgaben gleichzeitig: Er kann als Load Balancer fungieren und Anfragen auf mehrere dahinterliegende Server verteilen, er übernimmt häufig die Verschlüsselung über SSL/TLS, bevor die Anfrage unverschlüsselt im internen, geschützten Netzwerk weitergereicht wird, und er kann zusätzliche Sicherheitsregeln durchsetzen, etwa um bestimmte verdächtige Anfragen direkt abzublocken, bevor sie überhaupt den eigentlichen Anwendungsserver erreichen. Die bekanntesten Reverse-Proxy-Lösungen sind Nginx und Traefik. Gerade bei Containerisierung mit Docker oder Kubernetes übernimmt ein Reverse Proxy häufig zusätzlich die Aufgabe, eingehenden Traffic basierend auf der angefragten Domain oder URL an den jeweils richtigen Container weiterzuleiten, was den Betrieb mehrerer Anwendungen auf derselben Infrastruktur erheblich vereinfacht.