Medien · kein KYC
Jellyfin hosten auf einem Offshore-VPS
Betreiben Sie einen vollständig selbst gehosteten Jellyfin-Medienserver auf einem Offshore-VPS ohne KYC und streamen Sie Ihre Bibliothek von überall aus – ohne Abonnement und ohne ein an Ihre Identität gebundenes Konto.
Was es ist
Jellyfin ist ein kostenloser Open-Source-Medienserver, der Ihre Filme, Serien, Musik und Fotos organisiert und über einen Webbrowser oder native Apps auf jedes Gerät streamt. Im Gegensatz zu kommerziellen Plattformen gibt es keine Lizenzschlüssel, keine Telemetrie und keine Cloud-Abhängigkeit — Ihnen gehören der Server und die Daten.
Warum offshore hosten
Wer Jellyfin auf einem VPS ohne KYC und mit Kryptozahlung hostet, hält die eigene Mediathek und die Sehgewohnheiten aus den Identitätsdaten jedes Anbieters heraus, und Offshore-Jurisdiktionen der Privacy-Tier-Stufe schaffen rechtlichen Abstand zu Vorratsdatenspeicherungsregimen. Unbegrenzte Bandbreite bedeutet, dass große Bibliotheken und mehrere gleichzeitige Remote-Streams keine Transferkosten pro Gigabyte verursachen, wie es bei einer üblichen Cloud der Fall wäre.
Das Deployment
Ein funktionierendes Referenz-Setup
Kopieren Sie dies auf eine neue ChainVPS-Instanz. Ersetzen Sie die Platzhalter und starten Sie sie anschließend.
# 1. Datenverzeichnisse auf dem Host anlegen
# mkdir -p /srv/jellyfin/{config,cache} /srv/media
#
# 2. Als /srv/jellyfin/docker-compose.yml speichern und ausführen: docker compose up -d
# Die Weboberfläche ist danach unter http://SERVER_IP:8096 erreichbar (für den Produktivbetrieb einen Reverse-Proxy + TLS vorschalten)
services:
jellyfin:
image: jellyfin/jellyfin:latest
container_name: jellyfin
user: "1000:1000" # als unprivilegierter Host-Benutzer ausführen, dem die Volumes gehören
restart: unless-stopped
ports:
- "8096:8096" # HTTP-Weboberfläche / API
- "8920:8920" # optionales HTTPS (nur wenn TLS im Container terminiert wird)
- "7359:7359/udp" # optionale automatische Client-Erkennung im LAN
- "1900:1900/udp" # optionales DLNA
volumes:
- /srv/jellyfin/config:/config
- /srv/jellyfin/cache:/cache
- /srv/media:/media:ro # Ihre Bibliothek, aus Sicherheitsgründen read-only eingebunden
environment:
- TZ=Europe/Amsterdam
# Für Intel/AMD-Hardware-Transcoding (VAAPI) zusätzlich hinzufügen:
# devices:
# - /dev/dri:/dev/dri
Firewall
Zu öffnende Ports
| Port | Protokoll | Zweck |
|---|---|---|
| 8096 | TCP | Primäre HTTP-Weboberfläche und API — der einzige Port, den Sie normalerweise freigeben (hinter einem TLS-Reverse-Proxy) |
| 8920 | TCP | Optionales integriertes HTTPS, falls Jellyfin TLS selbst terminiert statt eines Proxys |
| 7359 | UDP | Optionale automatische Client-Erkennung im LAN — auf einem öffentlichen VPS geschlossen lassen |
| 1900 | UDP | Optionales DLNA/SSDP — auf einem öffentlichen VPS geschlossen lassen |
Richtige Dimensionierung
Welchen Plan Sie brauchen
VPS Small (2 vCPU / 4 GB)
1-2 Direct-Play-Streams, kein Transcoding — Dateien werden unverändert abgespielt. Ausreichend für eine private Bibliothek, die auf moderne Clients gestreamt wird.
VPS Pro (4+ vCPU / 8 GB)
Einige gleichzeitige 1080p-Software-Transcodes. Die CPU ist der Flaschenhals; mehr Kerne bedeuten mehr gleichzeitige Transcodes.
GPU VPS oder Dedicated (+ Storage-Plan für die Bibliothek)
4K und viele gleichzeitige Transcodes: Ergänzen Sie eine GPU für Hardware-Transcoding via NVENC/QSV/VAAPI und kombinieren Sie einen Storage-Plan, sobald die Bibliothek den lokalen NVMe-Speicher übersteigt.
Beste Standorte: Alle 15 Standorte funktionieren, doch für einen privaten Medienserver eignen sich die sechs Privacy-Tier-Jurisdiktionen (NL, CH, RO, IS, MD, LU) am besten: die Schweiz und Island für den stärksten Datenschutz sowie die Niederlande und Rumänien für europäisches Hochdurchsatz-Peering, das Remote-Streaming über unbegrenzte Leitungen reibungslos hält. Wählen Sie den Standort, der dem Ort am nächsten liegt, von dem aus Sie tatsächlich schauen, um Latenz und Transcode-Pufferung zu minimieren.
Sichern Sie es ab
Hardening-Checkliste
- Geben Sie Port 8096 niemals ungeschützt im Internet frei — schalten Sie Nginx/Caddy mit einem gültigen TLS-Zertifikat davor, damit Zugangsdaten und Streams verschlüsselt sind, und veröffentlichen Sie nur den HTTPS-Endpunkt.
- Deaktivieren Sie im Jellyfin-Dashboard unter Networking die Option 'Enable automatic port mapping (UPnP)' und schalten Sie Remote-DLNA aus; binden Sie Ihr Medien-Volume wie gezeigt read-only (:ro) ein, damit ein kompromittierter Container die Quelldateien nicht verändern kann.
- Legen Sie für den täglichen Streaming-Betrieb einen dedizierten Nicht-Admin-Benutzer an und reservieren Sie das Admin-Konto für die Konfiguration; aktivieren Sie den eingebauten Schutz gegen Brute-Force/fehlgeschlagene Logins und verwenden Sie lange, einzigartige Passwörter.
- Halten Sie den Container auf einem fixierten/aktuellen Image und führen Sie `docker compose pull && docker compose up -d` regelmäßig aus — Jellyfin liefert häufig Sicherheitsupdates; die unprivilegierte user:"1000:1000"-Zuordnung begrenzt den möglichen Schaden.
- Schützen Sie den Server mit dem enthaltenen DDoS-Schutz und erwägen Sie, den Admin-/Dashboard-Pfad per IP-Allowlist oder VPN einzuschränken, sodass nur der öffentliche Streaming-Endpunkt erreichbar ist.
Bereitstellen auf
Das richtige ChainVPS-Produkt
Fragen
Hosting Jellyfin — FAQ
Brauche ich eine GPU, um Jellyfin zu betreiben?
Nein. Wenn Ihre Clients Ihre Dateien per Direct-Play abspielen können (passender Codec/Container), streamt Jellyfin sie einfach weiter, und die CPU-Last ist minimal. Eine GPU spielt nur beim Hardware-Transcoding eine Rolle, wenn Clients ein anderes Format oder eine andere Auflösung benötigen — bei 4K oder vielen gleichzeitigen Transcodes bringt ein GPU-Plan einen großen Effizienzgewinn gegenüber Software-Transcoding.
Deckt unbegrenzte Bandbreite wirklich den Bedarf eines Medienservers?
Ja — genau dafür lohnt sich der Betrieb hier. Remote-Streaming ist bandbreitenintensiv (ein 1080p-Stream kann 8-15 Mbit/s benötigen), und bei abgerechneten Clouds führt das schnell zu unerwarteten Transferkosten. Die unbegrenzten Leitungen von ChainVPS erlauben es Ihnen, eine große Bibliothek an mehrere Geräte zu streamen, ohne dass Kosten pro Gigabyte anfallen.
Wo speichere ich eine Bibliothek, die zu groß für die VPS-Festplatte ist?
Kombinieren Sie den Compute-Plan mit einem Storage-Plan und binden Sie ihn als Ihr /media-Volume ein, oder hängen Sie Block Storage an. Belassen Sie /config und /cache von Jellyfin auf schnellem NVMe für eine reaktionsschnelle Oberfläche, und legen Sie den Großteil der Mediendaten auf der größeren, günstigeren Storage-Stufe ab.
Ist der Betrieb von Jellyfin hier privat?
Jellyfin selbst sendet keine Telemetrie und benötigt kein Konto bei irgendeinem Anbieter. In Kombination mit einer Anmeldung ohne KYC, Zahlung per Krypto und einem Offshore-Standort der Privacy-Tier-Stufe gibt es keinen Identitätsnachweis, der Sie mit dem Server oder dessen Inhalten verknüpft. Fügen Sie stets TLS hinzu, damit der Stream zwischen Ihnen und dem Server während der Übertragung verschlüsselt ist.
Wie halte ich es sicher auf dem neuesten Stand?
Da es sich um einen einzelnen Container handelt, erfolgen Updates per `docker compose pull && docker compose up -d`. Ihre Daten liegen in den eingebundenen /config- und /media-Volumes, sodass das Laden eines neuen Images weder Ihre Bibliothek noch die Einstellungen berührt. Sichern Sie das /config-Verzeichnis regelmäßig, um Metadaten und Benutzerkonten zu erhalten.
Mehr zum Selbst-Hosten
Weitere One-Click-Stacks
Bereitstellen Jellyfin
in den nächsten 60 Sekunden.
Unlimitierte Bandbreite · DDoS inklusive · 21 Kryptowährungen · Kein KYC.