Was ein Reverse Proxy überhaupt macht
Stell dir vor, auf deinem Server laufen mehrere Dienste: ein Blog auf Port 8080, eine API auf Port 3000, dazu vielleicht noch ein selbst gehostetes Git oder ein Passwort-Manager. Jeder dieser Dienste lauscht intern auf einem eigenen Port. Nach außen willst du aber nicht blog.example.de:8080 tippen, sondern einfach https://blog.example.de — sauber verschlüsselt über Port 443.
Genau das löst ein Reverse Proxy. Er sitzt als einziger Dienst auf Port 80 und 443, nimmt alle eingehenden Anfragen entgegen und leitet sie anhand des angefragten Hostnamens (oder Pfads) an den richtigen internen Dienst weiter. Der Client sieht immer nur den Proxy, die dahinterliegenden Dienste bleiben unsichtbar.
Der Unterschied zum klassischen (Forward-)Proxy: Ein Forward-Proxy steht auf der Seite des Clients und schickt dessen Anfragen nach draußen. Ein Reverse Proxy steht auf der Seite des Servers und nimmt Anfragen von draußen entgegen. Daher das "Reverse".
Mehrere Dienste hinter einer IP und Port 443
Ports lassen sich nicht doppelt belegen — nur ein Prozess kann gleichzeitig auf 443 lauschen. Wenn du drei Webdienste hast, kannst du sie also nicht alle direkt auf 443 legen. Der Reverse Proxy umgeht das, indem er das Feld Host aus dem HTTP-Request auswertet (bei HTTPS schon vorher die SNI-Information aus dem TLS-Handshake) und so entscheidet, wohin die Anfrage gehört.
Praktisch heißt das: Du legst pro Domain einen sogenannten Virtual Host oder eine Route an. app.example.de geht an Port 3000, git.example.de an Port 3001, blog.example.de an Port 8080 — alles über dieselbe öffentliche IP und denselben Port 443. Voraussetzung ist nur, dass die DNS-Einträge (A/AAAA) aller Domains auf die IP deines Servers zeigen.
Weitere typische Aufgaben, die ein Reverse Proxy nebenbei übernimmt:
- TLS-Terminierung — der Proxy entschlüsselt HTTPS und reicht intern unverschlüsselt (oder erneut verschlüsselt) weiter.
- Load Balancing — Anfragen auf mehrere identische Backends verteilen.
- Header setzen — etwa
X-Forwarded-For, damit das Backend die echte Client-IP kennt. - Komprimierung und Caching — statische Antworten schneller ausliefern.
Auto-HTTPS: Zertifikate ohne manuelle Arbeit
Früher musste man TLS-Zertifikate von Hand bei Let's Encrypt anfordern, in die Config eintragen und per Cronjob erneuern. Moderne Reverse Proxies nehmen dir das ab: Sie fordern beim ersten Aufruf automatisch ein Zertifikat über das ACME-Protokoll an, hinterlegen es und verlängern es rechtzeitig, bevor es abläuft.
Damit das funktioniert, muss die Domain per DNS auf den Server zeigen und Port 80 von außen erreichbar sein (für die HTTP-Validierung). Den Rest erledigt der Proxy. Caddy macht das komplett von allein, Traefik braucht einen kurzen Konfigurationsblock, und bei Nginx übernimmt klassisch das externe Tool certbot.
Caddy, Nginx und Traefik im Vergleich
Caddy — am einfachsten für Auto-HTTPS
Caddy ist auf Bequemlichkeit ausgelegt. HTTPS ist standardmäßig aktiv, Zertifikate werden ohne jede Zusatzkonfiguration besorgt und erneuert. Die Konfigurationsdatei (das Caddyfile) ist kurz und gut lesbar. Ein kompletter Reverse Proxy mit HTTPS sieht so aus:
app.example.de {reverse_proxy localhost:3000}
Mehr ist nicht nötig — Caddy holt das Zertifikat für app.example.de selbst. Für Einsteiger und kleine bis mittlere Setups ist das die schnellste Variante.
Nginx — der bewährte Allrounder
Nginx ist seit Jahren der De-facto-Standard und extrem performant, besonders beim Ausliefern statischer Dateien. Die Konfiguration ist mächtig, aber ausführlicher, und HTTPS-Zertifikate kommen üblicherweise über certbot dazu. Ein minimaler Server-Block sieht so aus:
server {server_name app.example.de;location / {proxy_pass http://127.0.0.1:3000;proxy_set_header Host $host;}}
Wer maximale Kontrolle, etablierte Dokumentation und beste Performance will, ist mit Nginx gut bedient. Der Preis ist etwas mehr Handarbeit.
Traefik — gemacht für Docker und Container
Traefik spielt seine Stärken in dynamischen Container-Umgebungen aus. Es liest die Konfiguration direkt aus Docker-Labels: Startest du einen neuen Container mit den passenden Labels, erkennt Traefik den Dienst automatisch und richtet die Route samt Zertifikat ein — ohne dass du eine Config-Datei anfasst. Eine Route entsteht hier zum Beispiel über Labels am Container:
traefik.http.routers.app.rule=Host(`app.example.de`)traefik.http.routers.app.tls.certresolver=le
Für statische Einzelserver ist das überdimensioniert, für ein Docker-Compose-Setup mit vielen Diensten dagegen ideal.
Kurz gegenübergestellt
- Caddy: einfachste Config, Auto-HTTPS ohne Zutun — beste Wahl zum Einstieg.
- Nginx: performant, bewährt, maximale Kontrolle — Zertifikate via
certbot. - Traefik: dynamisch, container-nativ — glänzt mit Docker.
Mit Nytrix umsetzen
Einen Reverse Proxy betreibst du am besten auf einem Server mit vollem Root-Zugriff. Die vServer von Nytrix (LXC und KVM) geben dir genau das: kompletter Root-Zugang per SSH, SSD/NVMe und 5 TB Traffic pro Monat inklusive. Docker ist mit aktiviertem Nesting und keyctl vorbereitet — ideal, wenn du Traefik vor mehreren Containern laufen lassen willst. Als Betriebssystem stehen dir per Neuinstallation Debian 12 oder Ubuntu 24.04 zur Verfügung, CPU und RAM lassen sich per Hot-Plug nachrüsten.
Praktisch: Caddy mit Auto-HTTPS ist bei Nytrix kein theoretisches Beispiel. Der No-IP-Tarif für 1,99 EUR (4 vCore, 4 GB RAM, 40 GB) nutzt genau diese Technik, um deine Dienste über Port-Domains der Form vmXXXX.noip.enjyn.de automatisch per HTTPS erreichbar zu machen — ganz ohne eigene IPv4. Brauchst du eine eigene IPv4-Adresse, greifst du zu BASIC-4 (9,99 EUR), BASIC-6 (17,00 EUR) oder BASIC-8 (25,50 EUR).
Für deine eigenen Domains samt vollständiger DNS-Verwaltung (A, AAAA, CNAME und mehr) findest du bei den Nytrix-Domains über 400 TLDs, .de ab 5,99 EUR im Jahr inklusive kostenlosem WHOIS-Schutz. Alles läuft prepaid, ohne Mindestlaufzeit und ohne Vertragsbindung — du lädst Guthaben auf und buchst, was du brauchst. DDoS-Schutz ist bei allen Tarifen dabei. Setzt du auf Container-Dienste wie ein selbst gehostetes Gitea hinter deinem Proxy, hast du in wenigen Minuten ein sauberes Setup mit mehreren Diensten hinter einer einzigen IP.