Come installare Jellyfin Media Server su Ubuntu 20.04

Jellyfin è un'applicazione multimediale gratuita e open source progettata per organizzare, gestire e condividere file multimediali digitali su dispositivi in ​​rete su una rete interna ed è possibile accedervi in ​​remoto desiderato. È una piattaforma multipiattaforma e un'alternativa ad altri giocatori importanti, Plex ed Emby. Puoi accedervi da una vasta gamma di dispositivi come cellulari, tablet, TV e PC o dispositivi multimediali popolari come Roku o Nvidia shield. Jellyfin fornisce anche contenuti multimediali a dispositivi abilitati per DLNA e Chromecast e può recuperare i metadati proprio come fanno Plex ed Emby in modo da poter organizzare i tuoi media in categorie in una ricca esperienza multimediale.

Se vuoi provare, Jellyfin ha creato un server demo per accedere e verificarlo di persona.

Come installare Jellyfin Media Server su Ubuntu 20.04

Nel seguente tutorial imparerai come installare Jellyfin su Ubuntu 20.04 Focal Fossa, insieme a come impostare le unità multimediali in modo che dispongano dell'accesso in lettura e scrittura corretto, inoltre se si desidera eseguire lo streaming e Apache or Nginx opzione proxy inverso in remoto con come proteggerlo con Criptiamo SSL gratuito certificato per entrambe le applicazioni web.

Prerequisiti

  • Sistema operativo consigliato: Ubuntu 20.04 - facoltativo (Ubuntu 21.04)
  • Account utente: Un account utente con accesso sudo o root.

Aggiornamento del sistema operativo

Aggiorna il tuo Ubuntu 20.04 sistema operativo per assicurarsi che tutti i pacchetti esistenti siano aggiornati:

sudo apt update && sudo apt upgrade

Dipendenze di installazione:

Dovrai assicurarti di avere i seguenti pacchetti installati per installare correttamente il server Jellyfin Media:

sudo apt install apt-transport-https ca-certificates gnupg2 curl git -y

Se non sei sicuro, esegui semplicemente il comando; non ti farà del male.


pubblicità


Installa Jellyfin Media Server

Jellyfin non è disponibile nel repository predefinito di Ubuntu 20.04, quindi devi importare la chiave e il repository Jellyfin GPG.

Importa chiave GPG

Innanzitutto, dovrai importare la chiave GPG per verificare l'autenticità del pacchetto; senza di essa, l'installazione avrà esito negativo:

wget -O - https://repo.jellyfin.org/jellyfin_team.gpg.key | sudo apt-key add -

Se importato correttamente, otterrai il seguente output nel tuo terminale:

OK

Importa il repository

Il prossimo passo è importare il repository:

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

Per finire, aggiorna il tuo elenco di repository per riconoscere le nuove aggiunte come segue:

sudo apt update

Installa Jellyfin

Ora che hai ordinato il repository apt, puoi procedere con l'installazione del server multimediale con il seguente comando:

sudo apt install jellyfin

Esempio di output con dipendenze extra che verranno installate:

Come installare Jellyfin Media Server su Ubuntu 20.04

Tipo Y, poi premere il tasto invio per completare l'installazione.

Una volta installato, il servizio Jellyfin verrà avviato automaticamente. Per confermare ciò, utilizzare quanto segue comando systemctl:

systemctl status jellyfin

Esempio di output:

Come installare Jellyfin Media Server su Ubuntu 20.04

Se il tuo server multimediale non è stato avviato per qualche motivo, usa i seguenti comandi:

Iniziare:

sudo systemctl start jellyfin

Per abilitare all'avvio del sistema:

sudo systemctl enable jellyfin

Configurazione iniziale del server multimediale Jellyfin

Per accedere all'interfaccia utente Web di Jellyfin, è necessario aprire il browser Internet e immettere 127.0.0.1 sulla porta predefinita 8096 di Jellyfin.

Esempio di seguito:

http://127.0.0.1:8096

Ti imbatterai nella schermata di benvenuto per la configurazione iniziale del server.

Come installare Jellyfin Media Server su Ubuntu 20.04

Seleziona la tua Lingua di visualizzazione preferita e fare clic sul Avanti -> pulsante procedere.

Successivamente, ti imbatterai nella creazione di un nome utente e di una password.

Come installare Jellyfin Media Server su Ubuntu 20.04

Crea un nome utente e una password; come indicato nell'immagine sopra, è possibile inserire più utenti una volta completata la configurazione iniziale. Una volta fatto, clicca su Avanti -> pulsante procedere.

Ora puoi configurare le tue librerie multimediali.

Come installare Jellyfin Media Server su Ubuntu 20.04

Fare clic sul grande + (segno più) or Aggiungi libreria multimediale pulsante. Da qui, puoi aggiungere la tua cartella multimediale, l'installazione è molto semplice e gli utenti di Plex sentirebbero in particolare una somiglianza molto stretta. Una volta fatto, fai clic su Avanti -> pulsante per procedere.

La schermata successiva è la schermata Linguaggio metadati:

Come installare Jellyfin Media Server su Ubuntu 20.04

Scegli il tuo Lingua, quindi fare clic su Avanti -> pulsante.

Come installare Jellyfin Media Server su Ubuntu 20.04

Se utilizzerai o, in parole povere, accederai al server dall'esterno e/o dietro un proxy, assicurati di impostare Consenti connessioni remote a questo server come è l'impostazione predefinita in questo caso. Se stai accedendo solo a una rete locale, disabilita questa opzione.

Ora vedrai la schermata che ti dice che hai terminato l'installazione.

Come installare Jellyfin Media Server su Ubuntu 20.04

Passaggio semplice, fai clic su Pulsante Fine per finire davvero.

Verrai indirizzato alla schermata di accesso per accedere con l'account utente e la password che hai creato durante la configurazione iniziale.

Come installare Jellyfin Media Server su Ubuntu 20.04

Ora sarai nella tua dashboard.

Come installare Jellyfin Media Server su Ubuntu 20.04

Se configuri il supporto durante l'installazione, inizierà automaticamente ad apparire.

Ripristina configurazione iniziale

Se hai commesso un errore durante la configurazione iniziale, puoi tornare indietro con i seguenti passaggi:

Apri il file system.xml:

sudo nano /etc/jellyfin/system.xml

Modifica quanto segue, che si trova sulla riga 4:

<IsStartupWizardCompleted>true</IsStartupWizardCompleted>

A questa:

<IsStartupWizardCompleted>false</IsStartupWizardCompleted>

Riavvia il server Jellyfin:

sudo systemctl restart jellyfin

Ora che hai ripristinato la configurazione iniziale, rivisita il HTTP://127.0.0.1:8096 e riavviare il processo.


pubblicità


Permessi di installazione per unità multimediali

Jellyfin richiederà di avere il permesso di lettura ed esecuzione sulle tue directory multimediali. Puoi usare chown o chgrp comandi; tuttavia, imparerai a usare il comando setfacl per il tutorial. Questo è coperto poiché ha il potenziale, in seguito, di essere più sicuro e puoi controllare l'accesso a un livello molto dettagliato rispetto al modo predefinito di chown che collaborano con noi, attingono direttamente dalla storia e dalla tradizione veneziana chgrp.

Per installare, eseguire il seguente comando:

sudo apt install acl -y

Ora hai alcune opzioni con il comando setfalc, ma realisticamente non dovrai concedere i permessi a ogni film e programma televisivo; invece, il modo più semplice è usare il flag ricorsivo (-R) che darà a Jellyfin l'accesso di cui ha bisogno per tutto ciò che si trova nella directory e nelle sottodirectory.

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

Se è necessario assegnare l'autorizzazione a singole directory o file multimediali, utilizzare quanto segue:

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

Imposta Apache come proxy inverso

Puoi configurare un proxy inverso per accedere a Jellyfin da un computer o una rete remoti. In questo esempio, il tutorial configurerà un server proxy Apache. Se vuoi usare Nginx, salta questa parte e vai a Imposta Nginx come proxy inverso.

Innanzitutto, installa Apache:

sudo apt install apache2 -y

Per impostazione predefinita, Apache dovrebbe essere abilitato se non è attivato. utilizzo:

sudo systemctl start apache2

Per abilitare l'avvio di Apache all'avvio, utilizzare il seguente comando:

sudo systemctl enable apache2

Output di esempio in caso di successo:

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

Verifica lo stato di Apache:

sudo systemctl status apache2

Esempio di output:

Come installare Jellyfin Media Server su Ubuntu 20.04

Per utilizzare Apache come proxy inverso, è necessario abilitare il modulo con il seguente comando:

sudo a2enmod proxy proxy_http headers proxy_wstunnel

Quindi, crea un host virtuale per il tuo sottodominio:

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

Avrai bisogno di un nome di dominio attivo che può essere acquistato per un minimo di 1 o 2 dollari se non ne hai uno. NameCheap ha i migliori domini economici in circolazione e se preferisci un .com, usa Cloudflare.

Dopo aver creato il tuo sottodominio, aggiungi quanto segue al file di blocco del server:

<VirtualHost *:80>
   ServerName jellyfin.example.com
   ErrorDocument 404 /404.html

   #HTTP proxy
   ProxyPass / http://localhost:8096/
   ProxyPassReverse / http://localhost:8096/

   #Websocket proxy
   SSLProxyEngine on
   <Location /:/websockets/notifications>
        ProxyPass wss://localhost:8096/:/websockets/notifications
        ProxyPassReverse wss://localhost:8096/:/websockets/notifications
   </Location>

   Header always unset X-Frame-Options
</VirtualHost>

Salva il file (CTRL+O), poi esci (CTRL+X).

Ora fai un test per assicurarti che non ci siano errori nella configurazione di Apache o nel tuo host virtuale:

sudo apache2ctl configtest

Se tutto funziona correttamente, l'output di esempio dovrebbe essere:

Syntax OK

Abilita l'host virtuale su Apache come segue:

sudo a2ensite jellyfin.conf

Quindi riavvia Apache:

sudo systemctl restart apache2

pubblicità


Imposta Nginx come proxy inverso

Puoi configurare un proxy inverso per accedere a Jellyfin da un computer o una rete remoti. In questo esempio, il tutorial configurerà un server proxy Nginx.

Innanzitutto, installa Nginx:

sudo apt install nginx -y

Per impostazione predefinita, Nginx dovrebbe essere abilitato se non è attivato. utilizzo:

sudo systemctl start nginx

Per consentire l'avvio di Nginx all'avvio, utilizzare il seguente comando:

sudo systemctl enable nginx

Output di esempio in caso di successo:

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

Verifica lo stato di Nginx:

sudo systemctl status nginx

Esempio di output:

Come installare Jellyfin Media Server su Ubuntu 20.04

Ora, crea un nuovo blocco server come segue:

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

Avrai bisogno di un nome di dominio attivo che può essere acquistato per un minimo di 1 o 2 dollari se non ne hai uno. NameCheap ha i migliori domini economici in circolazione e se preferisci un .com, usa Cloudflare.

Dopo aver creato il tuo sottodominio, aggiungi quanto segue al file di blocco del server:

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

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

      set $jellyfin 127.0.0.1;

      location / {
          proxy_pass http://127.0.0.1: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://$127.0.0.1:8096;
          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;
      }

        # 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";
}

Salva il file (CTRL+O), poi esci (CTRL+X).

Ora esegui un test per assicurarti che non ci siano errori nella configurazione di Nginx o nel blocco del tuo server:

sudo nginx -t

Se tutto funziona correttamente, l'output di esempio dovrebbe essere:

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

Ricarica Nginx per rendere effettive le modifiche:

sudo systemctl reload nginx

Se hai impostato il tuo dominio e i record DNS in modo che puntino all'IP del tuo server, ora puoi accedere al tuo Jellyfin Media Server all'indirizzo gelatina.esempio.com.

Proteggi Nginx o Apache con Let's Encrypt SSL Free Certificate

Idealmente, dovresti eseguire il tuo Apache o Nginx su HTTPS utilizzando un certificato SSL. Il modo migliore per farlo è usare Criptiamo, un'autorità di certificazione gratuita, automatizzata e aperta gestita dal Internet Security Research Group (ISRG) senza scopo di lucro.

Innanzitutto, installa il pacchetto certbot come segue:

Apache:

sudo apt install python3-certbot-apache -y

nginx:

sudo apt install python3-certbot-nginx -y

Una volta installato, esegui il seguente comando per avviare la creazione del tuo certificato:

Apache:

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

nginx:

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

Questa è la configurazione ideale che include reindirizzamenti forzati HTTPS 301, intestazione Strict-Transport-Security e Stapling OCSP. Assicurati solo di adattare l'e-mail e il nome di dominio alle tue esigenze.

Ora il tuo URL sarà https://jellyfin.example.com invece di HTTP://jellyfin.example.com.

Nota, se usi il vecchio URL HTTP, reindirizzerà automaticamente a HTTPS.


pubblicità


Aggiornamento di Jellyfin Media Server

Jellyfin può essere aggiornato normalmente comando di aggiornamento apt che impiegheresti la maggior parte del tempo per aggiornare i pacchetti sul tuo sistema.

Per controllare gli aggiornamenti:

sudo apt update

Se disponibile, usa il comando di aggiornamento:

sudo apt upgrade

Commenti e Conclusione

Il tutorial ha coperto parecchio l'installazione di Jellyfin su Ubuntu 20.04 e la configurazione delle autorizzazioni e dell'accesso remoto tramite Apache o Nginx. Nel complesso, il server multimediale è un progetto piuttosto interessante. È immacolato e piacevole per gli occhi e funziona bene fuori dalla scatola. Se sei un utente Plex o Emby a lungo termine, è una buona idea tenere d'occhio questo come alternativa se non sei disposto a scambiare ora poiché potrebbe essere un prezioso salvatore.

Sottoscrivi
Notifica
2 Commenti
Feedback in linea
Visualizza tutti i commenti

Ciao,

Invece di Ubuntu, possiamo provarlo su Debian 11?

2
0
Amerei i tuoi pensieri, per favore commenta.x