Búsqueda de sitios web

Cómo instalar Plex Media Server en Debian 12


Este tutorial existe para estas versiones del sistema operativo.

  • Debian 12 (ratón de biblioteca)
  • Debian 11 (Diana)

En esta página

  1. Requisitos previos
  2. Instalación de dependencias
  3. Instalación del servidor multimedia Plex en Debian
  4. Configurar UFW
  5. Instalación y configuración de Nginx como proxy inverso
  6. Proteger Plex Media Server con certificados SSL/TLS
  7. Configuración del servidor multimedia Plex
  8. Conclusión

Plex Media Server es una solución de transmisión DIY para su entorno local. Le permite almacenar diferentes tipos de archivos multimedia en una ubicación centralizada y luego puede transmitir todos sus archivos multimedia desde múltiples ubicaciones y dispositivos, como televisores, teléfonos inteligentes y más.

Esta guía le mostrará cómo instalar Plex Media Server en el servidor Debian 12. Instalará Plex con UFW (Firewall sin complicaciones) y Nginx como proxy inverso.

Requisitos previos

Para comenzar con esta guía, asegúrese de tener lo siguiente:

  • Un servidor Debian 12.
  • Un usuario no root con privilegios de administrador.
  • Un nombre de dominio apunta a la dirección IP del servidor.

Instalación de dependencias

Antes de instalar, instalemos las dependencias necesarias en su máquina Debian.

En primer lugar, ejecute el siguiente comando para actualizar su repositorio de Debian.

sudo apt update

Después de eso, instale las dependencias en su sistema Debian usando el siguiente comando. Escriba y cuando se le solicite, luego presione ENTRAR para continuar.

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

Instalación del servidor multimedia Plex en Debian

Una vez instaladas las dependencias, estará listo para instalar Plex Media Repository. Pero antes, debes agregar un repositorio Plex a tu sistema Debian.

Ejecute el siguiente comando para agregar el repositorio Plex a su máquina Debian.

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

Luego, agregue la clave GPG para el repositorio Plex usando el siguiente comando.

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

Una vez que se agreguen el repositorio y la clave GPG, actualice y actualice su repositorio de Debian usando el siguiente comando.

sudo apt update

Ahora que el repositorio está actualizado, puede instalar el paquete plexmediaserver usando el siguiente comando.

sudo apt install plexmediaserver

Una vez finalizada la instalación, ejecute el siguiente comando systemctl para iniciar y habilitar el servicio plexmediaserver.

sudo systemctl start plexmediaserver
sudo systemctl enable plexmediaserver

El servidor plexmedia debería estar ejecutándose en su máquina Debian. Ahora verifíquelo usando el siguiente comando.

sudo systemctl is-enabled plexmediaserver
sudo systemctl status plexmediaserver

Si todo va bien, verá el servidor plexmedia con el estado activo (en ejecución).

Configurar UFW

En esta guía, utilizará UFW para proteger Plex Media Server. Por lo tanto, primero debe instalar UFW en su servidor Debian, luego habilitar el perfil OpenSSH y agregar el puerto principal para Plex Media Server.

Instale UFW en su sistema Debian usando el siguiente comando.

sudo apt install ufw -y

Una vez instalado, agregue el perfil OpenSSH para permitir el tráfico SSH y abra el puerto 32400 para Plex.

sudo ufw allow OpenSSH
sudo ufw allow 32400

Ahora ejecute el siguiente comando para iniciar y habilitar UFW. Cuando se le solicite, ingrese y para confirmar.

sudo ufw enable

Por último, verifique el estado de UFW y la lista de reglas habilitadas usando el siguiente comando. Asegúrese de que UFW se esté ejecutando con el estado Activo y que tanto OpenSSH como el puerto 32400 estén habilitados.

sudo ufw status

Instalación y configuración de Nginx como proxy inverso

En este punto, ha instalado Plex y configurado UFW. Por ahora, instalemos Nginx y configúrelo como un proxy inverso para su instalación de Plex Media Server.

Instale el servidor web Nginx en su máquina Debian usando el siguiente comando. Ingrese y cuando se le solicite, luego presione ENTER para continuar.

sudo apt install nginx

Una vez instalado Nginx, ejecute el siguiente comando para verificar el servicio Nginx. Asegúrese de que el servicio Nginx esté ejecutándose y habilitado.

sudo systemctl is-enabled nginx
sudo systemctl status nginx

Si está habilitado, debería obtener un resultado como habilitado. Al ejecutar, verá una salida activa (en ejecución).

Con Nginx en ejecución, ejecute el siguiente comando ufw para abrir los puertos HTTP y HTTPS para el tráfico Plex. De forma predeterminada, UFW proporciona un perfil de aplicación 'WWW Full' para abrir HTTP y HTTPS.

Ejecute el siguiente comando para habilitar el perfil 'Nginx Full', luego vuelva a cargar UFW para aplicar.

sudo ufw allow 'Nginx Full'
sudo ufw reload

A continuación, cree una nueva configuración de bloque de servidor /etc/nginx/sites-available/plex usando el siguiente comando del editor nano. Esto se utilizará como proxy inverso para la instalación de Plex Media Server.

vim /etc/nginx/sites-available/plex

Agregue la configuración a continuación y asegúrese de cambiar el nombre de dominio con su nombre de dominio Plex. Aquí también puede utilizar el dominio local para el entorno local.

upstream plex_backend {
 server 127.0.0.1:32400;
 keepalive 32;
}
server {
 listen 80;
 server_name plex.howtoforge.local;
 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;
 }
}

Guarde el archivo y salga del editor.

A continuación, ejecute el siguiente comando para habilitar el bloque del servidor /etc/nginx/sites-available/plex y verifique su sintaxis de Nginx.

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

Asegúrese de que no haya ningún error y de obtener el resultado 'la sintaxis es correcta: la prueba se realizó correctamente'.

Por último, ejecute el siguiente comando para reiniciar el servicio Nginx y aplicar sus cambios a Nginx. Con esto, se debería poder acceder a su Plex Media Server a través de los puertos HTTP y HTTPS, que son manejados por el servidor web Nginx.

sudo systemctl restart nginx

Proteger Plex Media Server con certificados SSL/TLS

En esta guía, protegerá su instalación de Plex mediante certificados SSL/TLS. Para los usuarios de dominio local, puede generar certificados autofirmados y habilitar HTTPS manualmente en el bloque del servidor Nginx. Si está utilizando el dominio público, utilice Certbot y Letsencrypt para generar certificados SSL/TLS.

Ejecute el siguiente comando para instalar el complemento certbot y certbot Nginx.

sudo apt install certbot python3-certbot-nginx

Una vez finalizada la instalación, ejecute el siguiente comando certbot para generar certificados SSL/TLS para su nombre de dominio Plex. Además, asegúrese de cambiar la dirección de correo electrónico y el nombre de dominio con su información.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email  -d plex.howtoforge.local

Una vez finalizado el proceso, el bloque de su servidor Nginx se configurará automáticamente con HTTPS. Y sus certificados SSL/TLS se pueden encontrar en el directorio /etc/letsencrypt/live/domain.com.

Configuración del servidor multimedia Plex

Abra su navegador web y visite su nombre de dominio Plex (es decir: https://plex.howtoforge.local/). Serás redirigido al sitio web plex.tv para registrar una cuenta Plex. Puede registrarse a través de Facebook/Gmail/Apple, o puede registrarse a través de la dirección de correo electrónico.

Una vez registrado, abra una nueva pestaña y visite su nombre de dominio Plex. Si su instalación es exitosa, debería obtener el panel de Plex Media Server como el siguiente:

Conclusión

¡Felicidades! Ahora ha instalado Plex Media Server en el servidor Debian 12. También configuró UFW en Debian para asegurar la instalación de Plex. Además de eso, también configuró Nginx como proxy inverso para Plex Media Server y aseguró Plex mediante certificados SSL.TLS de Letsencrypt.

Artículos relacionados: