Comment installer Jellyfin Media Server sur Linux Mint 22, 21 ou 20

Jellyfin est un puissant serveur multimédia open source qui vous permet de gérer et de diffuser vos collections multimédias de manière transparente. Il prend en charge un large éventail de formats multimédias et offre des fonctionnalités telles que la prise en charge de la télévision en direct, la fonctionnalité DVR et une gestion étendue des métadonnées. Jellyfin fournit une interface Web intuitive et des applications pour divers appareils, vous permettant d'accéder à vos médias de n'importe où.

Pour installer Jellyfin sur Linux Mint 22, 21 ou 20, vous pouvez utiliser le référentiel APT officiel de Jellyfin, qui contient les dernières versions stables et de développement. Ce guide vous guidera tout au long du processus d'installation à l'aide du terminal de ligne de commande.

Mettre à jour Linux Mint avant l'installation de Jellyfin Media Server

Avant d'installer le serveur Jellyfin Media sur votre système d'exploitation Linux Mint, il est essentiel de s'assurer que tous les packages sont à jour. La mise à jour de votre système d'exploitation garantira que tous les packages actuels sont à jour et peut aider à éviter tout problème de compatibilité avec Jellyfin.

Pour mettre à jour votre système d'exploitation Linux Mint, ouvrez le terminal et exécutez la commande suivante :

sudo apt update && sudo apt upgrade

Cette commande mettra à jour tous les packages de votre système vers leurs dernières versions, garantissant ainsi que votre système est à jour.

Installer les packages requis pour Jellyfin Media Server

Après avoir mis à jour votre système d'exploitation Linux Mint, vous devez installer les packages nécessaires pour installer le serveur Jellyfin Media. Les packages requis peuvent varier en fonction de votre distribution et de votre version de Linux Mint.

Pour installer les packages requis, ouvrez le terminal et exécutez la commande suivante :

sudo apt install software-properties-common apt-transport-https ca-certificates curl

Cette commande installera les packages nécessaires, notamment apt-transport-https, ca-certificates, gnupg2 et curl.

Importer la clé GPG du serveur multimédia Jellyfin

Pour installer Jellyfin Media Server sur Linux Mint, importez la clé et le référentiel Jellyfin GPG, car le logiciel ne se trouve pas dans le référentiel par défaut. Cette action vérifie l'authenticité et l'intégrité du colis.

Pour commencer, importez la clé GPG en exécutant la commande suivante dans le terminal :

curl -fsSL https://repo.jellyfin.org/ubuntu/jellyfin_team.gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/jellyfin.gpg > /dev/null

Cette commande télécharge la clé GPG depuis le site Web Jellyfin et l'ajoute au trousseau de clés de votre système, vous permettant de vérifier l'authenticité du package lors de l'installation.

Importer le référentiel APT de Jellyfin Media Server

Ensuite, importez le référentiel Jellyfin stable ou instable. Nous recommandons le référentiel stable à la plupart des utilisateurs en raison de ses tests approfondis et de sa stabilité éprouvée. Importez le dépôt stable à l'aide de l'une des commandes suivantes :

Importez le référentiel stable JellyFin :

Ajoutez JellyFin Media Server stable pour la série de distribution Linux Mint 22 :

echo "deb [arch=$( dpkg --print-architecture ) signed-by=/usr/share/keyrings/jellyfin.gpg] https://repo.jellyfin.org/ubuntu noble main" | sudo tee /etc/apt/sources.list.d/jellyfin.list

Ajoutez JellyFin Media Server stable pour la série de distribution Linux Mint 21 :

echo "deb [arch=$( dpkg --print-architecture ) signed-by=/usr/share/keyrings/jellyfin.gpg] https://repo.jellyfin.org/ubuntu jammy main" | sudo tee /etc/apt/sources.list.d/jellyfin.list

Ajoutez JellyFin Media Server stable pour la série de distribution Linux Mint 20 :

echo "deb [arch=$( dpkg --print-architecture ) signed-by=/usr/share/keyrings/jellyfin.gpg] https://repo.jellyfin.org/ubuntu focal main" | sudo tee /etc/apt/sources.list.d/jellyfin.list

Remarque : Il est crucial d'importer le référentiel approprié pour votre version spécifique de Linux Mint. L'importation du mauvais référentiel pourrait empêcher Jellyfin de s'installer correctement ou de ne pas fonctionner comme prévu.

Importez le référentiel instable JellyFin Linux Mint :

Vous pouvez également importer le référentiel instable à l'aide des commandes suivantes ci-dessous.

Importez JellyFin Media Server instable pour la série de distribution Linux Mint 22 :

echo "deb [arch=$( dpkg --print-architecture ) signed-by=/usr/share/keyrings/jellyfin.gpg] https://repo.jellyfin.org/ubuntu noble unstable" | sudo tee /etc/apt/sources.list.d/jellyfin.list

Importez JellyFin Media Server instable pour la série de distribution Linux Mint 21 :

echo "deb [arch=$( dpkg --print-architecture ) signed-by=/usr/share/keyrings/jellyfin.gpg] https://repo.jellyfin.org/ubuntu jammy unstable" | sudo tee /etc/apt/sources.list.d/jellyfin.list

Importez JellyFin Media Server instable pour la série de distribution Linux Mint 20 :

echo "deb [arch=$( dpkg --print-architecture ) signed-by=/usr/share/keyrings/jellyfin.gpg] https://repo.jellyfin.org/ubuntu focal unstable" | sudo tee /etc/apt/sources.list.d/jellyfin.list

Une fois que vous avez ajouté un nouveau référentiel de logiciels, vous devez mettre à jour la liste des référentiels de votre système pour reconnaître les nouveaux ajouts. Pour ce faire, exécutez la commande suivante dans le terminal :

sudo apt update

L'exécution de la commande sudo apt update met à jour la liste des référentiels de votre système pour inclure le référentiel nouvellement ajouté. Cette mise à jour permet à Linux Mint de reconnaître le nouveau référentiel et son contenu, permettant ainsi l'installation de Jellyfin Media Server sur votre système.

Finaliser l'installation de Jellyfin Media Server via la commande APT

Après avoir importé le référentiel Jellyfin et la clé GPG, il est temps d'installer le serveur multimédia sur votre système Linux Mint. Terminez l'installation efficacement avec la commande ci-dessous :

sudo apt install jellyfin

Une fois l'installation terminée, le service Jellyfin démarre automatiquement. Vérifiez l'état du service Jellyfin à l'aide de la commande suivante :

systemctl status jellyfin

Si, pour une raison quelconque, le service Jellyfin ne démarre pas, vous pouvez le démarrer manuellement à l'aide de la commande suivante :

sudo systemctl start jellyfin

Pour vous assurer que le service Jellyfin démarre automatiquement lors du démarrage du système, exécutez la commande suivante :

sudo systemctl enable jellyfin

Ces commandes démarrent le service Jellyfin, lui permettant de se lancer automatiquement lors du démarrage du système.

Configuration initiale du serveur multimédia Jellyfin

Pour accéder à l'interface utilisateur Web de Jellyfin, vous devez ouvrir votre navigateur Internet et saisir l'adresse IP de votre serveur, suivie du port par défaut 8096. Si vous accédez au serveur Jellyfin sur la même machine installée, utilisez 127.0.0.1 comme Adresse IP.

Par exemple, vous pouvez saisir l'adresse suivante dans la barre d'adresse de votre navigateur pour accéder à l'interface utilisateur Web de Jellyfin :

http://127.0.0.1:8096

Lorsque vous entrez l'adresse ci-dessus, l'écran de bienvenue pour la configuration initiale du serveur vous dirige. L'écran de configuration fournit les étapes nécessaires à la configuration de Jellyfin pour la première fois.

Langue d'affichage préférée

Lors de la configuration initiale de votre serveur Jellyfin, l'interface vous demandera de sélectionner votre langue d'affichage préférée.

Une fois que vous avez sélectionné, cliquez sur le "Suivant ->" bouton pour passer à l’étape suivante.

Créer un nom d'utilisateur et un mot de passe pour un compte Jellyfin

Après avoir sélectionné votre langue d'affichage préférée, le système vous demandera de créer un nom d'utilisateur et un mot de passe pour votre compte Jellyfin. Votre compte accorde un accès administratif au serveur Jellyfin, où vous pouvez gérer les bibliothèques multimédias, les comptes d'utilisateurs et les paramètres du serveur.

Remarque : Pour sécuriser efficacement votre serveur Jellyfin, créez un mot de passe fort et unique combinant des lettres majuscules et minuscules, des chiffres et des symboles.

Une fois que vous avez créé votre nom d'utilisateur et votre mot de passe, cliquez sur l'icône "Suivant ->" pour passer à l'étape suivante de la configuration initiale du serveur.

Médiathèques

Après avoir créé votre compte Jellyfin, la prochaine étape de la configuration de votre serveur consiste à configurer vos médiathèques. Les médiathèques vous permettent d'ajouter votre contenu multimédia à Jellyfin et de l'organiser de manière structurée. Vous pouvez créer plusieurs bibliothèques pour différents types de médias, tels que des films, des émissions de télévision et de la musique.

Pour organiser et afficher du contenu multimédia dans Jellyfin, ajoutez votre contenu aux bibliothèques multimédias. Cliquez sur le grand "+" ou "Ajouter une bibliothèque multimédia" sur le tableau de bord Jellyfin. Ce clic vous redirigera vers l'écran de configuration de la bibliothèque multimédia pour saisir votre dossier multimédia.

L'ajout de contenu multimédia à Jellyfin est simple :

  • Si vous avez utilisé Plex, le processus vous sera familier.
  • Sélectionnez le bouton « Ajouter une bibliothèque multimédia ».
  • Choisissez le type de média à ajouter : films, émissions de télévision ou musique.
  • Suivez les invites pour saisir votre dossier multimédia.
  • Définissez la langue des métadonnées, qui fournit des descriptions d'épisodes, des biographies d'acteurs et des pochettes d'album.

Après avoir rempli vos bibliothèques multimédias, vous pouvez organiser et parcourir efficacement le contenu via Jellyfin. Cliquez sur "Suivant ->" après avoir ajouté des bibliothèques multimédias, passez à l'écran Langue des métadonnées. Ici, sélectionnez une langue pour les métadonnées de votre contenu. Cette sélection enrichit votre contenu avec des informations précieuses telles que les détails des acteurs et de l'équipe, les résumés de l'intrigue et les critiques.

Langage de métadonnées préféré

Après avoir configuré vos bibliothèques multimédias et sélectionné votre langue de métadonnées préférée, configurez l'accès à distance pour votre serveur multimédia Jellyfin. Cela vous permet d'afficher du contenu multimédia à partir de différents emplacements ou appareils, pas seulement de votre réseau local.

Une fois que vous avez sélectionné votre langue de métadonnées préférée, cliquez sur le bouton "Suivant ->" bouton pour continuer.

Activer les connexions à distance Jellyfin

Activez l'accès à distance en autorisant les connexions à votre serveur multimédia Jellyfin et en activant le mappage automatique des ports. Autoriser les connexions à distance vous permet d'accéder au contenu multimédia depuis n'importe où avec une connexion Internet. Pendant ce temps, le mappage automatique des ports ouvre les ports nécessaires, garantissant que le trafic entrant peut atteindre votre serveur Jellyfin.

Une fois que vous avez configuré l'accès à distance à votre Jellyfin Media Server, cliquez sur le bouton "Suivant ->" bouton pour continuer.

Passer au tableau de bord Jellyfin

Une fois que vous avez terminé la configuration initiale de votre serveur multimédia Jellyfin, l'écran suivant confirme que le processus d'installation est terminé et que votre serveur est prêt à être utilisé.

Après avoir accédé à l'interface utilisateur Web de Jellyfin, entrez le nom d'utilisateur et le mot de passe créés lors du processus de configuration initiale et cliquez sur le bouton « Se connecter ». Cette action vous mènera au tableau de bord Jellyfin, où vous pourrez accéder à vos bibliothèques multimédias et gérer le contenu.

Conseils pour la première fois pour Jellyfin une fois connecté sur Linux Mint

Une fois connecté à votre serveur multimédia Jellyfin, vous pouvez accéder au tableau de bord pour gérer vos bibliothèques multimédias, vos utilisateurs et les paramètres du serveur. Voici quelques actions que vous pouvez effectuer à partir du tableau de bord :

  • Ajoutez plus de contenu multimédia : Vous pouvez en ajouter davantage à votre serveur Jellyfin en cliquant sur le bouton « Ajouter une bibliothèque multimédia » et en sélectionnant le type de média que vous souhaitez ajouter, comme des films, des émissions de télévision ou de la musique. Vous devrez fournir les informations nécessaires, telles que le nom de la bibliothèque, l'emplacement des fichiers multimédias et tout paramètre spécifique au type de média.
  • Configurez les personnalisations : Vous pouvez personnaliser l'apparence de votre serveur Jellyfin en configurant des personnalisations telles que le thème, la langue et les métadonnées. Cliquez sur le bouton « Tableau de bord », puis sélectionnez les paramètres « Général » ou « Affichage » pour apporter des modifications.
  • Gérer les utilisateurs: Pour gérer l'accès à votre contenu multimédia, vous pouvez ajouter, supprimer et modifier des comptes d'utilisateurs. Cliquez sur le bouton « Utilisateurs » sur le tableau de bord, puis sélectionnez « Ajouter un utilisateur » ou « Modifier l'utilisateur » pour apporter des modifications.

Voici quelques conseils généraux pour gérer votre serveur multimédia Jellyfin :

  • Gardez-le à jour : Vérifiez régulièrement les mises à jour et installez-les dès qu'elles sont disponibles pour vous assurer que votre serveur est à jour.
  • Utilisez des plugins et des extensions : Les plugins et extensions peuvent ajouter des fonctionnalités à votre serveur Jellyfin, telles que la prise en charge des sous-titres ou du contrôle à distance.
Tableau de bord sur l'interface utilisateur Web de Jellyfin Media Server sur Linux Mint
Linux Mint avec le tableau de bord Jellyfin Media Server sur l'interface utilisateur Web

Dépannage : réinitialiser la configuration initiale de Jellyfin

Si vous rencontrez des problèmes lors de la configuration initiale de votre serveur multimédia Jellyfin ou si vous devez recommencer pour une raison quelconque, la réinitialisation du processus de configuration est un processus simple. En modifiant la valeur « IsStartupWizardCompleted » dans le fichier system.xml et en redémarrant le serveur Jellyfin, vous pouvez réinitialiser le processus de configuration initiale et recommencer. Voici les étapes à suivre :

Ouvrez le fichier system.xml : vous pouvez le faire en exécutant la commande suivante :

sudo nano /etc/jellyfin/system.xml

Cette commande ouvrira le fichier system.xml dans l'éditeur de texte nano, vous permettant de modifier le fichier.

Modifiez la valeur « IsStartupWizardCompleted » :

<IsStartupWizardCompleted>true</IsStartupWizardCompleted>

Et changez-le en :

<IsStartupWizardCompleted>false</IsStartupWizardCompleted>

Cette modification réinitialise le processus de configuration initial, vous permettant de recommencer depuis le début.

Pour redémarrer le serveur Jellyfin, exécutez la commande suivante :

sudo systemctl restart jellyfin

Redémarrez le processus d'installation : Une fois que vous avez redémarré le serveur Jellyfin, vous pouvez revisiter le HTTP://127.0.0.1:8096 et redémarrer le processus d'installation.

Configurer l'autorisation pour les lecteurs multimédias pour Jellyfin Media Server

Après avoir installé Jellyfin sur votre système Linux Mint, il est essentiel de configurer les autorisations permettant au serveur multimédia d'accéder et de lire vos répertoires multimédias. Utilisez la commande setfacl, qui offre un contrôle d'accès plus détaillé que les commandes chown et chgrp.

Assurez-vous que le package ACL est installé avant de configurer les autorisations. Exécutez la commande suivante pour continuer :

sudo apt install acl

Pour donner à Jellyfin l'accès à votre répertoire multimédia et à tous ses sous-répertoires, utilisez la commande suivante avec l'indicateur -R (récursif) :

sudo setfacl -R -m u:jellyfin:rx /media/mymediadrive

Si vous devez attribuer des autorisations à des répertoires ou fichiers multimédias individuels, utilisez la commande suivante :

sudo setfacl -m u:jellyfin:rx /media/mymediadrive/example-name-of-file-or-directory

Commandes et astuces supplémentaires avec Jellyfin

Configurer SSH pour Jellyfin et Linux Mint

Si vous envisagez d'accéder à distance à votre serveur multimédia Linux Mint Jellyfin, la configuration d'un tunnel Secure Shell (SSH) est essentielle. SSH est un protocole de connexion à distance sécurisée et d'autres services réseau sécurisés sur un réseau non sécurisé.

Pour configurer SSH sur votre serveur Linux Mint, procédez comme suit :

Installez le serveur SSH sur votre machine Linux Mint à l'aide de la commande suivante :

sudo apt install openssh-server

Après avoir installé le serveur SSH, connectez-vous à votre Jellyfin Media Server à distance via un tunnel SSH. Remplacez {server-ip-address} par l'adresse IP de votre serveur et saisissez la commande suivante dans votre terminal :

ssh {server-ip-address} -L 8096:localhost:8096

Cette commande crée un tunnel SSH pour le Jellyfin Media Server.

Après avoir créé le tunnel SSH, vous pouvez accéder au Jellyfin Media Server via le lien suivant dans votre navigateur Web :

http://localhost:8096/web/index.html#/wizardstart.html

Un tunnel SSH redirigera la requête HTTP vers http://localhost:8096/web sur le serveur distant. Après la configuration initiale, accédez à votre Jellyfin Media Server en utilisant l'adresse IP de votre serveur distant à l'adresse https://{server-ip-address}:8096.

Configurer le pare-feu UFW pour Jellyfin

La configuration du pare-feu UFW s'avère cruciale lors de la gestion du trafic réseau entrant et sortant sur votre serveur Linux Mint. Contrairement à Ubuntu, Linux Mint n'active pas le pare-feu UFW par défaut ; vous devez l'activer manuellement. L'activation du pare-feu UFW permet aux utilisateurs d'autoriser uniquement le trafic nécessaire à atteindre leur serveur.

Utilisez la commande de terminal suivante pour activer le pare-feu UFW :

sudo ufw enable

Une fois activé, assurez-vous d'autoriser le trafic entrant sur le port 8096, ce qui est crucial pour le bon fonctionnement du Jellyfin Media Server. Utilisez la commande suivante pour autoriser le trafic sur le port 8096 :

sudo ufw allow 8096

Cette commande autorisera le trafic entrant sur le port 8096 vers votre serveur, garantissant ainsi que Jellyfin Media Server peut fonctionner correctement.

Si UFW n'est pas installé, utilisez la commande suivante pour l'installer :

sudo apt install ufw

Configurer Apache ou Nginx en tant que proxy inverse pour Jellyfin Media Server

La configuration d'un proxy inverse pour Jellyfin peut vous aider à accéder au serveur multimédia à partir d'un ordinateur ou d'un réseau distant.

Configuration d'Apache en tant que proxy inverse pour Jellyfin

Si vous souhaitez accéder à votre serveur multimédia Jellyfin depuis un ordinateur ou un réseau distant, vous pouvez configurer un proxy inverse à l'aide d'Apache ou de Nginx. Le guide couvrira la configuration d'Apache en tant que proxy inverse sur Linux Mint.

Tout d'abord, installez le serveur Web Apache à l'aide de la commande suivante :

sudo apt install apache2

Par défaut, Apache devrait être actif. Sinon, utilisez la commande suivante pour l'activer :

sudo systemctl start apache2

Ensuite, utilisez un éditeur de texte pour créer un nouveau fichier de configuration d'hôte virtuel pour Jellyfin. Par exemple, vous pouvez utiliser l'éditeur nano comme suit :

sudo systemctl enable apache2

Ensuite, activez les modules nécessaires avec la commande suivante :

sudo a2enmod proxy proxy_http headers proxy_wstunnel

Créez un nouveau fichier de configuration d'hôte virtuel pour Jellyfin à l'aide de la commande suivante :

sudo nano /etc/apache2/sites-available/jellyfin.conf

Pour créer un sous-domaine, vous devez disposer d'un nom de domaine actif. Une option pour acheter un nom de domaine consiste à utiliser NameCheap, où les domaines sont disponibles pour aussi peu que 1 $ à 2 $. Alternativement, si vous préférez un domaine .com, vous pouvez utiliser Cloudflare.

Une fois que vous avez créé votre sous-domaine, vous pouvez configurer un hôte virtuel avec Apache en suivant ces étapes :

<VirtualHost *:80>
    ServerName jellyfin.example.com

    # Redirect HTTP to HTTPS
    Redirect permanent / https://jellyfin.example.com

    ErrorLog /var/log/apache2/jellyfin-error.log
    CustomLog /var/log/apache2/jellyfin-access.log combined
</VirtualHost>

<IfModule mod_ssl.c>
<VirtualHost *:443>
    ServerName jellyfin.example.com

    DocumentRoot /var/www/html/jellyfin/public_html

    ProxyPreserveHost On

    ProxyPass "/socket" "ws://localhost:8096/socket"
    ProxyPassReverse "/socket" "ws://localhost:8096/socket"

    ProxyPass "/" "http://localhost:8096/"
    ProxyPassReverse "/" "http://localhost:8096/"

    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/jellyfin.example.com/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/jellyfin.example.com/privkey.pem
    Protocols h2 http/1.1

    SSLCipherSuite HIGH:RC4-SHA:AES128-SHA:!aNULL:!MD5
    SSLHonorCipherOrder on

    SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1

    ErrorLog /var/log/apache2/jellyfin-error.log
    CustomLog /var/log/apache2/jellyfin-access.log combined
</VirtualHost>
</IfModule>

Enregistrez le fichier (CTRL+O), puis quittez (CTRL+X).

Pour vous assurer qu'il n'y a pas d'erreurs dans la configuration Apache ou dans le fichier d'hôte virtuel avant d'activer l'hôte virtuel, vous pouvez effectuer un « essai à blanc » à l'aide de la commande suivante :

sudo apache2ctl configtest

Après avoir vérifié la syntaxe de configuration Apache pour détecter d'éventuelles erreurs de syntaxe à l'aide de la commande précédente, vous pouvez procéder à l'activation de l'hôte virtuel à l'aide de la commande suivante :

sudo a2ensite jellyfin.conf

La création d'un lien symbolique du répertoire sites-available vers le répertoire sites-enabled permet à Apache de servir l'hôte virtuel via la commande précédente. Une fois que vous avez activé l'hôte virtuel, redémarrez Apache pour appliquer les modifications.

Exécutez la commande suivante pour ce faire :

sudo systemctl restart apache2

La commande arrête et démarre le service Apache, applique les nouveaux paramètres de l'hôte virtuel et recharge la configuration avec les modifications mises à jour.

Configuration de Nginx en tant que proxy inverse pour Jellyfin et Linux Mint

Nginx peut être un proxy inverse pour permettre l'accès à distance à votre serveur multimédia Jellyfin. Nginx est un serveur Web léger et performant couramment utilisé à cette fin.

Pour installer Nginx, utilisez la commande suivante :

sudo apt install nginx

Ensuite, démarrez le service Nginx à l'aide de la commande suivante :

sudo systemctl start nginx

Exécutez la commande suivante pour vous assurer que Nginx est activé :

sudo systemctl enable nginx

Cette commande démarre le service Nginx et garantit qu'il démarre automatiquement au démarrage.

Exemple de résultat en cas de succès :

Synchronizing state of nginx.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable nginx

Pour vérifier l'état de Nginx, utilisez la commande suivante :

systemctl status nginx

Une fois que vous avez confirmé que Nginx fonctionne correctement, vous pouvez créer un nouveau fichier de blocage de serveur dans /etc/nginx/conf.d/jellyfin.conf. Dans cet exemple, nous utiliserons le sous-domaine jellyfin.example.com.

sudo nano /etc/nginx/conf.d/jellyfin.conf

Pour configurer Nginx en tant que proxy inverse, vous devez configurer un fichier de blocage de serveur dans /etc/nginx/conf.d/jellyfin.conf avec les directives suivantes :

  • La directive Listen définit le port et l'adresse sur lesquels Nginx doit écouter. Pour cet exemple, le port 80 est utilisé.
  • La directive server_name définit le nom d'hôte ou le nom de domaine que Nginx doit écouter. Remplacez jellyfin.example.com par votre nom de domaine.
  • Les directives access_log et error_log : celles-ci définissent les emplacements des journaux d'accès et d'erreurs.
  • Les directives de localisation : elles définissent la manière dont Nginx doit gérer les requêtes entrantes.

Les directives d'emplacement configurent proxy_pass pour transférer les requêtes de Nginx vers Jellyfin. Le proxy_pass établit le protocole et l'adresse du serveur en amont (le serveur Jellyfin) et écoute sur le port 8096. La directive location définit comment Nginx doit gérer les requêtes entrantes, en traitant les requêtes pour l'URL racine (/), le répertoire /web/ et le /répertoire socket.

Voici un exemple de fichier de bloc de serveur :

server {
    listen 80;
    server_name jellyfin.example.com;

    access_log /var/log/nginx/jellyfin.access;
    error_log /var/log/nginx/jellyfin.error;

    set $jellyfin jellyfin;
    resolver 127.0.0.1 valid=30;

    # Security / XSS Mitigation Headers
    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-XSS-Protection "1; mode=block";
    add_header X-Content-Type-Options "nosniff";

    location = / {
        return 302 https://$host/web/;
    }

    location / {
        # Proxy main Jellyfin traffic
        proxy_pass http://$jellyfin:8096;
        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 X-Forwarded-Protocol $scheme;
        proxy_set_header X-Forwarded-Host $http_host;

        # Disable buffering when the nginx proxy gets very resource heavy upon streaming
        proxy_buffering off;
    }

    # location block for /web - This is purely for aesthetics so /web/#!/ works instead of having to go to /web/index.html/#!/
    location = /web/ {
        # Proxy main Jellyfin traffic
        proxy_pass http://$jellyfin:8096/web/index.html;
        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 X-Forwarded-Protocol $scheme;
        proxy_set_header X-Forwarded-Host $http_host;
    }

    location /socket {
        # Proxy Jellyfin Websockets traffic
        proxy_pass http://$jellyfin:8096/socket;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        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 X-Forwarded-Protocol $scheme;
        proxy_set_header X-Forwarded-Host $http_host;
    }
}

Enregistrez le fichier (CTRL+O), puis quittez (CTRL+X).

Avant de continuer, assurez-vous que la configuration de Nginx en tant que proxy inverse pour Jellyfin est sans erreur. Exécutez un essai à sec à l’aide de la commande suivante pour vérifier ceci :

sudo nginx -t

Cette commande testera le fichier de configuration pour les erreurs de syntaxe et d'autres problèmes. Si tout fonctionne correctement, le résultat doit indiquer que le fichier de configuration est correct et que le test est réussi, comme suit :

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Pour appliquer les modifications à Nginx, vous devez recharger le service. Vous pouvez le faire en exécutant la commande suivante :

sudo systemctl reload nginx

Après avoir correctement configuré Nginx en tant que proxy inverse pour Jellyfin et configuré votre domaine et vos enregistrements DNS pour qu'ils pointent vers l'adresse IP de votre serveur, vous pouvez désormais accéder à votre serveur multimédia Jellyfin sur jellyfin.example.com. Avec Nginx agissant comme intermédiaire, les utilisateurs distants peuvent désormais accéder à Jellyfin en visitant le sous-domaine, et Nginx dirigera leurs demandes vers l'interface Web de Jellyfin.

Créer un certificat SSL gratuit Let's Encrypt pour Jellyfin

Cette section vous guidera dans la sécurisation de votre serveur Apache ou Nginx à l'aide d'un certificat SSL Let's Encrypt gratuit. Un certificat SSL garantit que la communication entre le navigateur de l'utilisateur et le serveur est sécurisée, ce qui le rend idéal pour exécuter votre serveur sur HTTPS.

Pour installer le package certbot, vous devez correspondre au proxy inverse que vous avez installé. Si vous utilisez Apache, vous devez installer python3-certbot-apache ; si vous utilisez Nginx, vous devez installer python3-certbot-nginx.

Installez Certbot pour Apache :

sudo apt install python3-certbot-apache

Installez Certbot pour Nginx :

sudo apt install python3-certbot-nginx

Pour sécuriser Apache ou Nginx avec un certificat SSL gratuit Let's Encrypt, vous devez installer le package certbot qui correspond au proxy inverse que vous avez installé. Si vous utilisez Apache, installez python3-certbot-apache ; pour Nginx, installez python3-certbot-nginx.

Une fois installé, exécutez la commande certbot pour créer un certificat. La commande propose des options telles que –Apache ou –nginx, en fonction de votre proxy inverse, ainsi que –agree-tos, –redirect, –hsts et –staple-ocsp. Ces options permettent de configurer des redirections 301, un en-tête Strict-Transport-Security et OCSP Stapling, ce qui en fait une configuration sécurisée. N'oubliez pas de remplacer l'e-mail et le nom de domaine par vos besoins.

Exécutez Certbot pour Apache pour Jellyfin :

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email you@example.com -d jellyfin.example.com

Exécutez Certbot pour Nginx pour Jellyfin :

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email you@example.com -d jellyfin.example.com

L'URL passe de HTTP à HTTPS lors de la création du certificat SSL. Les utilisateurs doivent établir une tâche cron qui effectue des vérifications quotidiennes pour garantir le renouvellement automatique des certificats. Certbot propose un script pour le renouvellement automatique des certificats. Les utilisateurs doivent tester le script avec une exécution à sec avant de configurer la tâche cron, à l'aide de la commande suivante :

sudo certbot renew --dry-run

Après avoir confirmé le succès de l'essai à sec, l'utilisateur peut configurer une tâche cron pour automatiser le processus de renouvellement du certificat. Pour ce faire, l'utilisateur peut utiliser la commande suivante :

sudo crontab -e

Cette commande ouvre la table cron de l'utilisateur en mode édition. Ensuite, l'utilisateur peut ajouter la ligne suivante à la fin du fichier pour programmer un contrôle de renouvellement quotidien à 2h30 :

30 2 * * * /usr/bin/certbot renew --quiet

Une fois que l'utilisateur enregistre et quitte le fichier, cron vérifiera automatiquement les certificats quotidiennement et les renouvellera si nécessaire.

Mettre à jour le serveur multimédia Jellyfin

Pour mettre à jour votre Jellyfin Media Server, vous pouvez utiliser les commandes apt standard, comme vous le feriez pour n'importe quel autre package sur votre système. Cela simplifie la mise à jour de Jellyfin.

Pour rechercher des mises à jour, exécutez la commande suivante :

sudo apt update

Si des mises à jour sont disponibles, exécutez la commande de mise à niveau :

sudo apt upgrade

Supprimer le serveur multimédia Jellyfin

Pour désinstaller Jellyfin de votre système, vous pouvez utiliser la commande suivante :

sudo remove install jellyfin

Enfin, pour éviter de futures réinstallations accidentelles de Jellyfin, il est recommandé de supprimer le référentiel Jellyfin de votre système.

Exécutez la commande suivante pour la suppression :

sudo rm /etc/apt/sources.list.d/jellyfin.list

Cette commande supprimera le fichier de référentiel pour Jellyfin du répertoire sources.list.d, empêchant ainsi les futures mises à jour ou installations de Jellyfin.

Conclusion

Avec Jellyfin installé avec succès sur votre système Linux Mint, vous pouvez gérer et diffuser efficacement vos collections multimédias. L'utilisation du référentiel APT officiel de Jellyfin vous garantit de rester à jour avec les dernières versions stables et de développement, vous donnant accès aux dernières fonctionnalités et améliorations. Profitez de la flexibilité et des fonctionnalités robustes offertes par Jellyfin en tant que solution de serveur multimédia.

Joshua James
Suis-moi
Les derniers articles par Joshua James (tout voir)

1 réflexion au sujet de « How to Install Jellyfin Media Server on Linux Mint 22, 21 or 20 »

Laissez un commentaire