Caddy und Traefik sind fantastische Reverse Proxys. Aber sie machen nur eine einzige Sache: HTTP-Verkehr von A nach B leiten, optional mit TLS. Pangolin ist eine ganz andere Kategorie – und genau deshalb solltet ihr es auf dem Radar haben.
Disclaimer vorweg: Ich setze im Alltag selbst Caddy ein. Pangolin habe ich frisch in meinem Homelab installiert und bin nach den ersten Tagen schwer beeindruckt.
Was ist Pangolin überhaupt?
Pangolin (github.com/fosrl/pangolin, 21k+ Sterne) ist ein Identity-basierte Remote-Access-Plattform – kein reiner Reverse Proxy. Es kombiniert:
- einen tunnelbasierten Reverse Proxy (wie Cloudflare Tunnel)
- ein Zero-Trust-VPN auf Basis von WireGuard
- eine Identity- & Access-Management-Ebene (SSO, RBAC, Geo-Blocking)
- Browser-basierten Zugriff auf SSH, RDP und VNC
Alles gesteuert über ein Web-Dashboard – keine Config-Files, keine Labels, keine Caddyfiles.
Die Architektur
Internet → Pangolin-Server → WireGuard-Tunnel → Newt (Site Connector) → Dein Dienst
Statt Ports zu öffnen, läuft auf deinem Server ein Site Connector namens newt. Der baut eine ausgehende WireGuard-Verbindung zum Pangolin-Server auf. Von außen ist kein einziger Port sichtbar – nicht mal Port 443.
Pangolin vs. Caddy vs. Traefik
| Kriterium | Caddy / Traefik | Pangolin |
|---|---|---|
| Reverse Proxy | ja | ja |
| Auto-TLS | ja | ja |
| Tunnel (keine offenen Ports) | nein | ja |
| Identity / SSO | extern (Authelia, Authentik) | integriert |
| Config | Datei / Labels | Web-Dashboard |
| SSH/RDP/VNC im Browser | nein | ja |
| Zero-Trust (dienst-spezifisch) | nein | ja |
| Client-VPN | nein | ja (WireGuard) |
| Ressourcen | ~10–50 MB RAM | ~150–300 MB RAM |
| Lernkurve | flach (Caddy) / mittel (Traefik) | mittel |
Warum ihr Pangolin haben wollt
1. Keine offenen Ports mehr
Der Killer-Feature: Dein Server öffnet keinen einzigen Port nach außen. Der newt-Connector baut eine ausgehende Verbindung auf. Ein Angreifer kann nicht mal den Handshake deines Webservers sehen. Das ist Cloudflare-Tunnel-Niveau – aber vollständig selbst gehostet.
2. SSH/RDP/VNC im Browser
Pangolin kann seit Version 1.19 SSH-, RDP- und VNC-Sitzungen direkt im Browser rendern. Kein separater SSH-Client, kein Remote-Desktop, kein VPN nötig. Du öffnest ssh.meinedomain.de im Browser, authentifizierst dich via Pangolin, und bekommst ein Terminal – inklusive Copy & Paste und Datei-Transfer.
3. Identity-first
Bei Caddy/Traefik muss man sich selbst um Authentifizierung kümmern: Authelia, Authentik, OAuth2-Proxy – noch eine zusätzliche Komponente. Pangolin hat SSO, RBAC und Sitzungsmanagement eingebaut. Ein Identity Provider (Google, GitHub, Entra ID) reicht, und du steuerst pro Nutzer, welche Dienste er sehen darf.
4. Dienste unsichtbar machen
Mit Pangolin können Dienste als private Resources definiert werden: Sie haben einen Domain-Namen und gültiges TLS, sind aber nur mit aktiver Pangolin-Client-Verbindung erreichbar. Ohne laufenden Client: 404. Perfekt für Admin-Dashboards, Datenbank-Interfaces oder Monitoring-Tools.
5. Multi-Site High Availability
Du kannst denselben Dienst über mehrere Standorte absichern. Fällt ein Site-Connector aus, routet Pangolin automatisch über den nächsten. Latenz-basiertes Routing inklusive.
Praxis: Pangolin installieren
Zunächst einmal braucht Pangolin einen Server mit direktem Internetzugriff. Er sitzt also typischerweise ausserhalb des Homelabs. Ich habe zum Test einen 1€ Server von Strato benutzt, der reicht für private Zwecke locker aus.
Pangolin lässt sich dann über einen Quick-Installer aufsetzen – inklusive Traefik als Reverse Proxy für die Pangolin-API, Let's Encrypt, und Postgres.
curl -sSL https://get.pangolin.net | bash
Oder als Docker-Compose-Setup:
services:
pangolin:
image: fosrl/pangolin:latest
ports:
- "3000:3000"
volumes:
- ./config:/app/config
environment:
PANGOLIN_DB_HOST: postgres
PANGOLIN_DB_PASSWORD: sicheres_passwort
PANGOLIN_URL: https://pangolin.meinedomain.de
newt:
image: fosrl/newt:latest
volumes:
- /var/run/docker.sock:/var/run/docker.sock
network_mode: host
Nach der Installation legst du im Web-Dashboard einen Site-Connector an, installierst newt auf deinem Server (im privaten Netz im im Homelab), und kannst dann per Klick Dienste als Public oder Private Resources freigeben.
Wann Caddy / Traefik die bessere Wahl bleiben
Pangolin ist kein Replacement für jeden Fall:
- Ein einzelner Blog oder eine statische Seite – Caddy reicht, Pangolin ist overkill
- Ressourcenarme Umgebungen (Pi Zero, 512 MB RAM) – Caddy braucht ~10 MB, Pangolin eher ~200 MB
- Du liebst Config-as-Code – Caddyfile und Traefik-Labels sind in Git versionierbar; Pangolin setzt aufs Dashboard
- Reiner HTTP-Proxy ohne Identitätsmanagement – Traefik ist spezialisierter
Fazit
Pangolin ist kein "besserer Caddy" – es ist ein Remote-Access-Platform mit integriertem Reverse Proxy. Für jemanden, der von Cloudflare Tunnel weg will, SSH im Browser braucht, oder Dienste ohne offene Ports betreiben möchte, ist Pangolin das Werkzeug der Wahl.
Caddy und Traefik bleiben erste Wahl, wenn es um puren Reverse Proxy geht. Aber sobald Identität, Tunnel und Zero-Trust ins Spiel kommen, ist Pangolin eine Klasse für sich.
Ich werde meinen Homeserver in den nächsten Wochen umstellen und hier berichten, wie es läuft.
