Nginx Proxy Manager auf der Synology mit Container Manager einrichten: Reverse Proxy und SSL Schritt für Schritt
Mit Nginx Proxy Manager (NPM) bauen Sie auf der Synology einen Reverse Proxy mit grafischer Oberfläche und automatischen Let's-Encrypt-Zertifikaten. Die Anleitung zeigt das Setup im Container Manager: Compose-Projekt, Port-Konflikt mit DSM lösen, erster Proxy-Host mit HTTPS.
Geprüft am 29.09.2026 · für nginx-proxy-manager 2.16.0
WerbelinksMit * markierte Links sind Werbelinks: Bei einem Kauf erhalten wir eine Provision, der Preis bleibt gleich. Als Amazon-Partner verdiene ich an qualifizierten Verkäufen. Mehr dazu

Mehrere Webdienste auf der Synology oder im Heimnetz rufen Sie besser über Subdomains wie jellyfin.ihre-domain.de mit gültigem HTTPS-Zertifikat auf als über IP und Portnummer. Das leistet ein Reverse Proxy. Nginx Proxy Manager (kurz NPM) wird komplett über eine Web-Oberfläche konfiguriert und holt Let's-Encrypt-Zertifikate mit wenigen Klicks. Sie richten NPM als Docker-Projekt im Container Manager unter DSM 7.2 ein, lösen den Port-Konflikt mit dem DSM-Webinterface und veröffentlichen Ihren ersten Dienst per HTTPS.
Was ist Nginx Proxy Manager und warum lohnt er sich?
Ein Reverse Proxy nimmt Anfragen auf den Ports 80 (HTTP) und 443 (HTTPS) an und leitet sie anhand des Hostnamens an den richtigen internen Dienst weiter. Statt vieler Ports veröffentlichen Sie nur den Proxy. NPM setzt auf Nginx auf und verwaltet Proxy-Hosts, SSL-Zertifikate, Access-Listen und Weiterleitungen im Browser, ohne handgeschriebene Nginx-Konfiguration.
Dazu kommen automatisch erneuerte Let's-Encrypt-Zertifikate und eine eingebaute SQLite-Datenbank (keine externe MySQL/MariaDB nötig); das Projekt ist quelloffen und seit Jahren aktiv.
Voraussetzungen
- Synology-NAS mit DSM 7.2 oder neuer und Paket Container Manager; ob Ihr Modell ihn unterstützt, zeigt das Paketzentrum. 2 CPU-Kerne und 2 GB RAM reichen für NPM und einige kleine Dienste.
- Ein Administrator-Konto in DSM sowie Zugriff auf die File Station.
- Eine eigene Domain (z. B. über einen DDNS-Dienst oder einen Registrar), deren DNS-Einträge Sie verwalten können.
- Für Let's Encrypt per HTTP-Challenge: die Ports 80 und 443 müssen aus dem Internet auf die NAS weitergeleitet sein (Portfreigabe/Port-Forwarding im Router). Alternativ eine DNS-Challenge (z. B. über Cloudflare), wenn Sie keine offenen Ports wollen.
- Etwas Plattenplatz unter
/volume1/dockerfür die NPM-Datenordner (wenige hundert MB). - Wissen, welche Host-Ports auf Ihrer NAS noch frei sind, dazu gleich mehr.
Schritt 1: Den Port-Konflikt mit DSM verstehen und planen
NPM möchte die Ports 80 und 443 belegen, die DSM selbst für Webstation, den eingebauten Reverse Proxy und teils das DSM-Login nutzt. Zwei Wege:
- DSM-Ports verschieben (empfohlen, wenn NPM 80/443 nach außen bedienen soll): Unter Systemsteuerung → Anmeldeportal → DSM stellen Sie die HTTP-/HTTPS-Ports des DSM-Webinterface um (z. B. auf den Standard 5000/5001) und prüfen unter Anmeldeportal → Reverse-Proxy, ob Regeln 80/443 belegen.
- NPM auf alternative Host-Ports mappen (kein Eingriff in DSM): NPM läuft auf z. B. 8080/4443, der Router leitet 80→8080 und 443→4443 weiter. Von außen bleiben 80/443 erreichbar.
Diese Anleitung nutzt den zweiten Weg mit 8080 (HTTP), 4443 (HTTPS) und 81 (Admin-UI, von DSM in der Regel nicht belegt). Bei verschobenen DSM-Ports setzen Sie die Mappings auf 80 und 443.
Verifizieren: Sie haben entschieden, welchen Weg Sie gehen, und notiert, welche Host-Ports NPM bekommt (in dieser Anleitung 8080, 4443 und 81). Unter Systemsteuerung → Anmeldeportal → Erweitert → Reverse-Proxy belegt keine Regel diese Ports.
Schritt 2: Datenordner in der File Station anlegen
NPM speichert Konfiguration und Zertifikate in zwei Volumes. Erstellen Sie in der File Station unter dem freigegebenen Ordner docker einen Unterordner:
/volume1/docker/nginx-proxy-managerFehlt docker, legen Sie ihn zuerst an (Standardordner des Container Managers). data und letsencrypt erstellt NPM beim ersten Start selbst.
Verifizieren: In der File Station ist docker/nginx-proxy-manager sichtbar und noch leer.
Schritt 3: docker-compose.yml erstellen
Im Container Manager heißt ein Compose-Stack Projekt; die YAML fügen Sie beim Anlegen ein oder legen sie vorab als Datei ab:
services:
nginx-proxy-manager:
image: jc21/nginx-proxy-manager:2.16.0 # feste Version statt latest
container_name: nginx-proxy-manager
restart: unless-stopped
ports:
- "8080:80" # HTTP (oeffentlich, im Router auf 80 forwarden)
- "4443:443" # HTTPS (oeffentlich, im Router auf 443 forwarden)
- "81:81" # Admin-Weboberflaeche
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
environment:
- TZ=Europe/BerlinErläuterung der Zeilen:
image: jc21/nginx-proxy-manager:2.16.0– offizielles Image mit fester Version (Stand September 2026), damit Updates nur bewusst laufen. Aktuelle Versionen zeigt die Tag-Liste auf Docker Hub.ports– links Host-Port, rechts Container-Port; intern hört NPM immer auf 80, 443 und 81. Für NPM direkt auf 80/443 ändern Sie auf"80:80"und"443:443"(DSM-Ports vorher freigeben, Schritt 1).volumes–./dataund./letsencryptliegen unter/volume1/docker/nginx-proxy-managerund enthalten Datenbank, Konfiguration und Zertifikate; diese Ordner sichern Sie später.
Verifizieren: Der YAML-Text ist eingerückt wie oben (Leerzeichen, keine Tabs), und die drei Host-Ports links stimmen mit Ihrer Planung aus Schritt 1 überein.
Schritt 4: Projekt im Container Manager anlegen
- Öffnen Sie den Container Manager in DSM und wechseln Sie links auf Projekt.
- Klicken Sie auf Erstellen.
- Vergeben Sie als Projektnamen
nginx-proxy-manager. - Wählen Sie als Pfad den Ordner
/volume1/docker/nginx-proxy-manager. - Als Quelle wählen Sie YAML-Code erstellen und fügen den Inhalt aus Schritt 3 ein; eine bereits abgelegte
docker-compose.ymlerkennt der Container Manager automatisch. - Bestätigen Sie die folgenden Dialoge; beim Web-Portal wählen Sie Nicht festlegen.
- Der Container Manager lädt das Image und startet den Container, je nach Verbindung in ein bis zwei Minuten.
Verifizieren: Das Projekt zeigt im Container Manager den Status Wird ausgeführt, und im Protokoll des Containers nginx-proxy-manager stehen keine Fehler wie „port is already allocated“.
Schritt 5: Admin-Oberfläche öffnen und Login ändern
Rufen Sie die Verwaltungsoberfläche im Browser auf, über die IP Ihrer NAS und Port 81:
http://NAS-IP:81Ersetzen Sie NAS-IP durch die Adresse Ihrer Synology, z. B. http://192.168.1.50:81. Seit Version 2.13 gibt es keinen Standard-Login; ein Einrichtungsassistent legt das Administratorkonto an:
- Name und E-Mail-Adresse des Administrators
- ein starkes, individuelles Passwort
Wichtig: Veröffentlichen Sie den Admin-Port 81 nie im Internet; er bekommt im Router keine Portweiterleitung. Die in älteren Anleitungen genannten Zugangsdaten admin@example.com / changeme gelten nur vor 2.13.
Verifizieren: Nach dem Assistenten landen Sie im Dashboard von NPM und können sich mit der neuen E-Mail-Adresse und dem neuen Passwort ab- und wieder anmelden.
Schritt 6: Ersten Proxy-Host anlegen
Beispiel für den ersten Dienst: ein intern auf Port 8096 laufender Dienst (etwa Jellyfin).
- Wechseln Sie im Menü auf Hosts → Proxy Hosts und klicken Sie auf Add Proxy Host.
- Im Reiter Details tragen Sie unter Domain Names die Subdomain ein, z. B.
jellyfin.ihre-domain.de. Ihr DNS-Eintrag (A- oder CNAME-Record) muss auf Ihre öffentliche IP bzw. Ihren DDNS-Namen zeigen. - Scheme: meist
http(interner Dienst). Forward Hostname / IP: die interne IP Ihrer NAS bzw. des Containers (z. B.192.168.1.50). Forward Port:8096. - Aktivieren Sie bei Bedarf Block Common Exploits und (bei WebSocket-Diensten) Websockets Support.
- Mit Save speichern. Der Dienst ist nun per HTTP über die Subdomain erreichbar; HTTPS folgt im nächsten Schritt.
Verifizieren: Der Proxy-Host steht in der Liste mit Status Online, und http://jellyfin.ihre-domain.de zeigt die Oberfläche des Zieldienstes statt einer Fehlerseite.
Schritt 7: Let's-Encrypt-Zertifikat aktivieren (SSL)
Öffnen Sie den eben angelegten Proxy-Host erneut und wechseln Sie in den Reiter SSL.
- Bei SSL Certificate wählen Sie Request a new SSL Certificate.
- Aktivieren Sie Force SSL (leitet HTTP automatisch auf HTTPS um) und optional HTTP/2 Support.
- Tragen Sie Ihre E-Mail-Adresse ein und akzeptieren Sie die Let's-Encrypt-Nutzungsbedingungen.
- Klicken Sie auf Save. NPM fordert nun ein Zertifikat an.
Für die HTTP-Challenge muss Let's Encrypt Ihren Server über Port 80 erreichen, daher die Portfreigabe 80→8080. Blockt Ihr Provider Port 80 oder sitzen Sie hinter CGNAT, nutzen Sie die DNS-Challenge: Use a DNS Challenge wählen, DNS-Anbieter (z. B. Cloudflare) auswählen, API-Token hinterlegen. Das braucht keine offenen Ports und erlaubt Wildcard-Zertifikate (*.ihre-domain.de).
Verifizieren: Unter SSL Certificates steht ein Let's-Encrypt-Zertifikat für Ihre Subdomain mit Ablaufdatum in rund 90 Tagen. Schlägt die Anforderung fehl, zeigt NPM eine Fehlermeldung, siehe Troubleshooting.
Schritt 8: Verifikation – erster Test im Browser
Rufen Sie Ihre Subdomain jetzt mit https:// auf:
https://jellyfin.ihre-domain.deDer Dienst erscheint, das Schloss-Symbol zeigt ein gültiges Zertifikat (Aussteller: Let's Encrypt). Zusätzlich prüfen:
- Ein Aufruf über
http://wird dank Force SSL automatisch aufhttps://umgeleitet. - Im NPM-Dashboard erscheint der Proxy-Host mit grünem SSL-Status.
- Unter SSL Certificates sehen Sie das Zertifikat samt Ablaufdatum, NPM erneuert es automatisch rechtzeitig.
Verifizieren: Alle drei Punkte treffen zu. Zusätzlich liefert http://NAS-IP:81 von außerhalb Ihres Heimnetzes (z. B. über das Mobilfunknetz) keine Antwort.
Updates und Wartung
Für ein Update tragen Sie die neue Version im image:-Tag ein: Projekt im Container Manager öffnen, stoppen, YAML anpassen, Erstellen bzw. Build neu wählen, damit das Image geladen wird, und wieder starten. Alternativ per SSH im Projektordner:
sudo docker compose pull
sudo docker compose up -dLesen Sie vorher die Release Notes auf GitHub und sichern Sie die beiden Datenordner. Der feste Versions-Tag verhindert ungeplante Versionswechsel beim Neustart.
Backup
Das Setup steckt in /volume1/docker/nginx-proxy-manager/data (Datenbank, Hosts, Konfiguration) und /volume1/docker/nginx-proxy-manager/letsencrypt (Zertifikate). Nehmen Sie /volume1/docker/nginx-proxy-manager in Ihre Hyper-Backup-Aufgabe auf; damit stellen Sie NPM auf jeder NAS in Minuten wieder her. Stoppen Sie das Projekt vor größeren Änderungen kurz, damit die SQLite-Datenbank konsistent gesichert wird.
Troubleshooting
- Admin-UI (Port 81) nicht erreichbar: Prüfen Sie im Container Manager, ob das Projekt läuft, und die Container-Logs; beim ersten Start initialisiert NPM die Datenbank, das dauert bis zu einer Minute.
- Zertifikat-Anforderung schlägt fehl: Fast immer ein Erreichbarkeitsproblem auf Port 80. Prüfen Sie die Portfreigabe im Router (80→8080), den DNS-Eintrag der Subdomain und ob Ihr Provider Port 80 blockt. Im Zweifel die DNS-Challenge nutzen.
- Port-Konflikt beim Start (Bind-Fehler): Ein anderer Dienst (DSM-Webstation, DSM-Reverse-Proxy) belegt den Host-Port. Verschieben Sie die DSM-Ports oder wählen Sie andere Host-Ports im Compose.
- 502 Bad Gateway: Forward Hostname/IP oder Forward Port des Proxy-Hosts stimmen nicht, oder der Zieldienst läuft nicht. Prüfen Sie, ob Sie den internen Dienst direkt über IP:Port erreichen.
- DSM selbst nicht mehr erreichbar: Haben Sie DSM-Ports verschoben, erreichen Sie das Interface jetzt unter dem neuen Port (z. B.
https://NAS-IP:5001).
NPM braucht Port 53 nicht. Pi-hole oder AdGuard Home können dagegen mit DSM-eigenen Diensten auf Port 53 kollidieren; das ist ein separates Thema.
Fazit
Nginx Proxy Manager liefert auf der Synology in etwa einer halben Stunde einen Reverse Proxy mit grafischer Verwaltung und automatischem HTTPS. Der einzige echte Stolperstein ist der Port-Konflikt mit DSM (Schritt 1). Sichern Sie regelmäßig die beiden Datenordner und lassen Sie Port 81 nur im Heimnetz erreichbar.
Passende Anleitungen: Jellyfin auf der Synology mit Hardware-Transcoding als typischer Dienst hinter dem Proxy und Caddy als Reverse Proxy als Alternative ohne grafische Oberfläche.
Weitere Anleitungen in den Kategorien Synology / NAS und Docker.
Quellen: Nginx Proxy Manager Dokumentation, NginxProxyManager auf GitHub


