So installierst du Plex Media Server unter Debian 12

Plex Media Server ist eine DIY-Streaming-Lösung für deine lokale Umgebung. Er ermöglicht es dir, verschiedene Arten von Mediendateien an einem zentralen Ort zu speichern und dann alle deine Mediendateien von verschiedenen Orten und Geräten, wie Fernsehern, Smartphones und mehr, zu streamen.

Diese Anleitung zeigt dir, wie du den Plex Media Server auf einem Debian 12 Server installierst. Du wirst Plex mit UFW (Uncomplicated Firewall) und Nginx als Reverse Proxy installieren.

Voraussetzungen

Um mit dieser Anleitung zu beginnen, musst du Folgendes haben:

  • Einen Debian 12 Server.
  • Einen Nicht-Root-Benutzer mit Administrator-Rechten.
  • Einen Domainnamen, der auf die IP-Adresse des Servers zeigt.

Installieren der Abhängigkeiten

Bevor wir mit der Installation beginnen, müssen wir die erforderlichen Abhängigkeiten auf deinem Debian-Rechner installieren.

Führe zunächst den unten stehenden Befehl aus, um dein Debian-Repository zu aktualisieren.

sudo apt update

Repo aktualisieren

Danach installierst du die Abhängigkeiten mit dem unten stehenden Befehl auf deinem Debian-System. Gib y ein, wenn du gefragt wirst, und drücke dann ENTER, um fortzufahren.

sudo apt install curl unzip socat libexpat1 apt-transport-https wget software-properties-common

deps installieren

Installation von Plex Media Server unter Debian

Sobald die Abhängigkeiten installiert sind, kannst du das Plex Media Repository installieren. Zuvor musst du jedoch ein Plex-Repository zu deinem Debian-System hinzufügen.

Führe den folgenden Befehl aus, um das Plex-Repository zu deinem Debian-Rechner hinzuzufügen.

echo deb https://downloads.plex.tv/repo/deb public main | sudo tee /etc/apt/sources.list.d/plexmediaserver.list

Dann fügst du den GPG-Schlüssel für das Plex-Repository mit dem folgenden Befehl hinzu.

curl https://downloads.plex.tv/plex-keys/PlexSign.key | sudo apt-key add -

Sobald das Repository und der GPG-Schlüssel hinzugefügt sind, aktualisiere dein Debian-Repository mit dem folgenden Befehl.

sudo apt update

Repo hinzufügen

Jetzt, wo das Repository aktualisiert ist, kannst du das Paket plexmediaserver mit dem folgenden Befehl installieren.

sudo apt install plexmediaserver

Plex installieren

Nachdem die Installation abgeschlossen ist, führe den folgenden systemctl-Befehl aus, um den plexmediaserver-Dienst zu starten und zu aktivieren.

sudo systemctl start plexmediaserver
sudo systemctl enable plexmediaserver

Der plexmediaserver sollte nun auf deinem Debian-Rechner laufen. Überprüfe ihn nun mit dem unten stehenden Befehl.

sudo systemctl is-enabled plexmediaserver
sudo systemctl status plexmediaserver

Wenn alles gut geht, siehst du den plexmediaserver mit dem Status aktiv (läuft).

Plexus verifizieren

UFW einrichten

In dieser Anleitung wirst du UFW verwenden, um den Plex Media Server zu schützen. Du musst also zuerst UFW auf deinem Debian-Server installieren, dann das OpenSSH-Profil aktivieren und den Hauptport für Plex Media Server hinzufügen.

Installiere UFW mit folgendem Befehl auf deinem Debian-System.

sudo apt install ufw -y

Nach der Installation fügst du das OpenSSH-Profil hinzu, um SSH-Verkehr zu erlauben und den Port 32400 für Plex zu öffnen.

sudo ufw allow OpenSSH
sudo ufw allow 32400

Führe nun den folgenden Befehl aus, um UFW zu starten und zu aktivieren. Wenn du dazu aufgefordert wirst, gib y ein, um zu bestätigen.

sudo ufw enable

Überprüfe abschließend den UFW-Status und die Liste der aktivierten Regeln mit dem unten stehenden Befehl. Vergewissere dich, dass UFW mit dem Status Aktiv läuft und dass sowohl OpenSSH als auch Port 32400 aktiviert sind.

sudo ufw status

ufw-Einrichtung

Nginx als Reverse Proxy installieren und konfigurieren

Zu diesem Zeitpunkt hast du Plex installiert und UFW konfiguriert. Jetzt installieren wir Nginx und konfigurieren es als Reverse Proxy für deine Plex Media Server Installation.

Installiere den Nginx-Webserver auf deinem Debian-Rechner mit dem folgenden Befehl. Gib y ein, wenn du dazu aufgefordert wirst, und drücke dann ENTER, um fortzufahren.

sudo apt install nginx

ngionx installieren

Nachdem Nginx installiert ist, führe den folgenden Befehl aus, um den Nginx-Dienst zu überprüfen. Stelle sicher, dass der Nginx-Dienst läuft und aktiviert ist.

sudo systemctl is-enabled nginx
sudo systemctl status nginx

Wenn er aktiviert ist, solltest du eine Ausgabe wie „enabled“ erhalten. Wenn er läuft, siehst du eine Ausgabe wie active (läuft).

nginx verifizieren

Wenn Nginx läuft, führe den unten stehenden ufw-Befehl aus, um sowohl HTTP- als auch HTTPS-Ports für den Plex-Datenverkehr zu öffnen. Standardmäßig bietet UFW ein Anwendungsprofil „WWW Full“, um sowohl HTTP als auch HTTPS zu öffnen.

Führe den unten stehenden Befehl aus, um das Profil „Nginx Full“ zu aktivieren, und lade UFW neu, um es anzuwenden.

sudo ufw allow 'Nginx Full'
sudo ufw reload

ufw nginx hinzufügen

Als Nächstes erstellst du eine neue Serverblockkonfiguration /etc/nginx/sites-available/plex mit dem unten stehenden nano-Editor-Befehl. Diese wird als Reverse Proxy für die Installation von Plex Media Server verwendet.

vim /etc/nginx/sites-available/plex

Füge die unten stehende Konfiguration hinzu und achte darauf, dass du den Domänennamen durch deinen Plex-Domänennamen ersetzt. Hier kannst du auch die lokale Domain für die lokale Umgebung verwenden.

upstream plex_backend {
 server 127.0.0.1:32400;
 keepalive 32;
}
server {
listen 80;
server_name plex.hwdomain.io;

send_timeout 100m; #Some players don't reopen a socket and playback stops totally instead of resuming after an extended pause (e.g. Ch$

#Plex has A LOT of javascript, xml, and html. This helps a lot, but if it causes playback issues with devices turn it off. (Haven't enc$
gzip on;
gzip_vary on;
gzip_min_length 1000;
gzip_proxied any;
gzip_types text/plain text/css text/xml application/xml text/javascript application/x-javascript image/svg+xml;
gzip_disable "MSIE [1-6]\.";

#Nginx default client_max_body_size is 1MB, which breaks the Camera Upload feature from the phones.
#Increasing the limit fixes the issue. Anyhow, if 4K videos are expected to be uploaded, the size might need to be increased even more
client_max_body_size 100M;

#Forward real ip and host to Plex
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Sec-WebSocket-Extensions $http_sec_websocket_extensions;
proxy_set_header Sec-WebSocket-Key $http_sec_websocket_key;
proxy_set_header Sec-WebSocket-Version $http_sec_websocket_version;
#Websockets
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";

#Buffering off is sent to the client as soon as the data is received from Plex.
proxy_redirect off;
proxy_buffering off;

location / {
proxy_pass http://plex_backend;
}
}

Speichere die Datei und beende den Editor.

Als Nächstes führst du den unten stehenden Befehl aus, um den Serverblock /etc/nginx/sites-available/plex zu aktivieren und deine Nginx-Syntax zu überprüfen.

sudo ln -s /etc/nginx/sites-available/plex /etc/nginx/sites-enabled
sudo nginx -t

Vergewissere dich, dass keine Fehler auftreten und dass du die Ausgabe„Syntax ist OK – Test erfolgreich“ erhältst.

nginx Reverse Proxy einrichten

Zum Schluss führst du den unten stehenden Befehl aus, um den Nginx-Dienst neu zu starten und deine Änderungen in Nginx zu übernehmen. Damit sollte dein Plex Media Server über HTTP- und HTTPS-Ports erreichbar sein, die vom Nginx-Webserver verwaltet werden.

sudo systemctl restart nginx

Plex Media Server mit SSL/TLS-Zertifikaten absichern

In dieser Anleitung wirst du deine Plex-Installation mit SSL/TLS-Zertifikaten absichern. Für Benutzer der lokalen Domain kannst du selbst signierte Zertifikate erstellen und HTTPS auf dem Nginx-Serverblock manuell aktivieren. Wenn du die öffentliche Domain nutzt, kannst du mit Certbot und Letsencrypt SSL/TLS-Zertifikate erstellen.

Führe den folgenden Befehl aus, um das certbot und certbot Nginx Plugin zu installieren.

sudo apt install certbot python3-certbot-nginx

Sobald die Installation abgeschlossen ist, führe den certbot-Befehl unten aus, um SSL/TLS-Zertifikate für deine Plex-Domain zu erstellen. Achte außerdem darauf, dass du die E-Mail-Adresse und den Domainnamen mit deinen Daten änderst.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email admin@hwdomain.io -d plex.hwdomain.io

Sobald der Vorgang abgeschlossen ist, wird dein Nginx-Serverblock automatisch mit HTTPS konfiguriert. Und deine SSL/TLS-Zertifikate findest du im Verzeichnis /etc/letsencrypt/live/domain.com.

Plex Media Server Konfiguration

Öffne deinen Webbrowser und rufe deine Plex-Domain auf (z.B.: https://plex.hwdomain.io/). Du wirst auf die Website plex.tv weitergeleitet, um ein Plex-Konto zu registrieren. Du kannst dich über Facebook/Gmail/Apple oder über deine E-Mail-Adresse registrieren.

Plexus registrieren

Sobald du registriert bist, öffne einen neuen Tab und besuche deine Plex-Domain. Wenn deine Installation erfolgreich war, solltest du das Plex Media Server Dashboard wie das folgende sehen:

Plex Dashboard

Fazit

Herzlichen Glückwunsch! Du hast nun den Plex Media Server auf einem Debian 12 Server installiert. Du hast auch UFW auf Debian konfiguriert, um die Plex-Installation zu sichern. Außerdem hast du Nginx als Reverse Proxy für Plex Media Server konfiguriert und Plex mit SSL.TLS-Zertifikaten von Letsencrypt gesichert.

Das könnte dich auch interessieren …