/ Sécurité

Let's Encrypt sur Plex

On va voir comment générer un certificat au format PFX pour Plex à partir d'une clé privée et d'un certificat Let's Encrypt.

Prérequis :

  • Let's Encrypt avec un certificat

Génération du certificat PFX

sudo vi PlexSSL.sh

#! /bin/bash

echo -e "Nom de domaine ou de sous-domaine de votre Plex ? \c "
read SD

DST=/etc/plex

sudo mkdir $DST
sudo chmod -R 777 $DST

sudo openssl pkcs12 -export -out $DST/plexssl.pfx -inkey /etc/letsencrypt/live/$SD/privkey.pem -in /etc/letsencrypt/live/$SD/cert.pem -certfile /etc/letsencrypt/live/$SD/chain.pem

sudo chmod +x PlexSSL.sh && sudo ./PlexSSL.sh

Lors de l'exécution du script il faudra saisir deux fois un mot de passe que vous aurez choisi.

Enter Export Password:
Verifying - Enter Export Password:

Ensuite dans Réglages/Serveur/Réseau cliquer sur Afficher avancé.

plexssl

Dans le premier champ saisir le répertoire où se trouve le certificat PFX, dans le second champ le mot de passe et le dernier le nom de domaine de votre serveur Plex.
plexchrome

On peut également mettre en place un reverse proxy sur Nginx pour "masquer le port 32400/TCP" avec les lignes suivantes à mettre dans le fichier de configuration du VirtualHost correspondant.

location /web {                                         
proxy_pass https://127.0.0.1:32400;               
proxy_set_header Host $host;                            
proxy_set_header X-Real-IP $remote_addr;                
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;                                                    
}                                                       
                                                        
location / {                                            
return 301 https://plex.exemple.com/web;                  
}