Kako instalirati Jellyfin Media Server na Debian 11

Jellyfin je besplatna multimedijska aplikacija otvorenog koda dizajnirana za organiziranje, upravljanje i dijeljenje digitalnih medijskih datoteka na umreženim uređajima na internoj mreži i kojoj se može pristupiti po želji. To je cross-platforma i alternativa takvim drugim značajnim igračima, Plexu i Embyju. Možete mu pristupiti s niza uređaja kao što su mobilni uređaji, tableti, TV i računala ili popularni medijski uređaji kao što su Roku ili Nvidia shield. Jellyfin također poslužuje medije na DLNA i Chromecast uređajima i može dohvaćati metapodatke baš kao Plex i Emby kako biste svoje medije mogli organizirati u kategorije u bogatom multimedijskom iskustvu.

Ako želite testirati, Jellyfin je stvorio a demo poslužitelj da se prijavite i sami provjerite.

Kako instalirati Jellyfin Media Server na Debian 11

U sljedećem tutorialu naučit ćete kako instalirati Jellyfin na Debian 11 Bullseye, zajedno s kako postaviti svoje medijske pogone da imaju ispravan pristup za čitanje i pisanje, plus ako želite streamati apaš or Nginx opciju obrnutog proxyja na daljinu s načinom na koji je osigurati Šifrirajmo besplatni SSL certifikat za obje web aplikacije.

Oglas

Preduvjeti

  • Preporučeni OS: Debian 11 Bullseye.
  • Korisnički račun: Korisnički račun sa sudo ili root pristupom.

Ažurirajte operativni sustav

Ažurirajte svoj Debian operativni sustav kako biste bili sigurni da su svi postojeći paketi ažurirani:

sudo apt update && sudo apt upgrade -y

Tutorial će koristiti sudo naredba i pod pretpostavkom da imate sudo status.

Za provjeru sudo statusa na svom računu:

sudo whoami

Primjer izlaza koji prikazuje sudo status:

[joshua@debian~]$ sudo whoami
root

Da biste postavili postojeći ili novi sudo račun, posjetite naš vodič na Dodavanje korisnika u Sudoers na Debianu.

Za korištenje root račun, upotrijebite sljedeću naredbu s root lozinkom za prijavu.

su

Vodič će koristiti terminal za instalaciju koji se nalazi u Aktivnosti > Prikaži aplikacije > Terminal.

Primjer:

Kako koristiti Cinnamon Desktop okruženje na Debianu 11 Bullseye

Instalirajte ovisnosti:

Prije nego što nastavite dalje s vodičem, morat ćete biti sigurni da imate instalirane sljedeće pakete:

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

Ako niste sigurni, samo pokrenite naredbu; neće ti naškoditi.

Instalirajte Jellyfin Media Server

Jellyfin ne dolazi s Debianovim zadanim spremištem, tako da morate uvesti Jellyfin GPG ključ i spremište.

Uvezite GPG ključ

Prvo, morat ćete uvesti GPG ključ kako biste provjerili autentičnost paketa; bez toga instalacija neće uspjeti:

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

Uvezite spremište

Sljedeći korak je uvoz spremišta:

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

Da biste završili, ažurirajte svoj popis spremišta kako biste prepoznali nove dodatke na sljedeći način:

sudo apt update

Instalirajte Jellyfin

Sada kada ste sortirali apt spremište, sada možete nastaviti s instalacijom medijskog poslužitelja sa sljedećom naredbom:

sudo apt install jellyfin

Primjer izlaza s dodatnim ovisnostima koje će se instalirati:

Kako instalirati Jellyfin Media Server na Debian 11

tip Y, tada pritisnite tipku enter za dovršetak instalacije.

Nakon instalacije, Jellyfin usluga će se automatski pokrenuti. Da biste to potvrdili, koristite sljedeće systemctl naredba:

systemctl status jellyfin

Primjer rezultata:

Kako instalirati Jellyfin Media Server na Debian 11

Ako vaš medijski poslužitelj iz nekog razloga nije pokrenut, upotrijebite sljedeće naredbe:

Početi:

sudo systemctl start jellyfin

Da biste omogućili pri pokretanju sustava:

sudo systemctl enable jellyfin
Oglas

Početno postavljanje Jellyfin Media Servera

Da biste pristupili Jellyfin web korisničkom sučelju, morate otvoriti svoj internetski preglednik i unijeti 127.0.0.1 na Jellyfin zadani port 8096.

Primjer u nastavku:

http://127.0.0.1:8096

Naići ćete na zaslon dobrodošlice za početno postavljanje poslužitelja.

Kako instalirati Jellyfin Media Server na Debian 11

Odaberite svoje Željeni jezik prikaza i kliknite na Dalje -> gumb nastaviti.

Zatim ćete naići na stvaranje korisničkog imena i lozinke.

Kako instalirati Jellyfin Media Server na Debian 11

Stvorite korisničko ime i lozinku; kao što je navedeno na gornjoj slici, više korisnika može se unijeti nakon dovršetka početnog podešavanja. Kada završite, kliknite na Dalje -> gumb nastaviti.

Sada možete postaviti svoje medijske knjižnice.

Kako instalirati Jellyfin Media Server na Debian 11

Kliknite na veliku + (znak plus) or Dodajte Medijsku knjižnicu dugme. Odavde možete dodati svoju medijsku mapu, postavljanje je vrlo jednostavno, a korisnici Plexa posebno bi osjetili vrlo blisku sličnost. Kada završite, kliknite na Sljedeće -> gumb za nastavak.

Sljedeći zaslon je zaslon Metadata Langauge:

Kako instalirati Jellyfin Media Server na Debian 11

Odaberite Jezik, a zatim kliknite na Dalje -> gumb.

Kako instalirati Jellyfin Media Server na Debian 11

Ako ćete koristiti ili, bolje rečeno, pristupiti poslužitelju izvana ili iza proxyja, svakako postavite Dopusti udaljene veze s ovim poslužiteljem kao što je zadana postavka u ovom slučaju. Ako pristupate samo lokalnoj mreži, onemogućite ovo.

Sada ćete vidjeti zaslon koji kaže da ste završili instalaciju.

Kako instalirati Jellyfin Media Server na Debian 11

Jednostavan korak, kliknite na Gumb za završetak Završiti.

Bit ćete preusmjereni na zaslon za prijavu kako biste se prijavili s korisničkim računom i lozinkom koje ste stvorili u početnom postavljanju.

Kako instalirati Jellyfin Media Server na Debian 11

Sada ćete biti na svojoj kontrolnoj ploči.

Kako instalirati Jellyfin Media Server na Debian 11

Ako postavite medij tijekom instalacije, automatski će se pojaviti.

Poništi početno postavljanje

Ako ste napravili pogrešku tijekom početnog postavljanja, možete se vratiti sljedećim koracima:

Otvorite datoteku system.xml:

sudo nano /etc/jellyfin/system.xml

Promijenite sljedeće, koje se nalazi u retku 4:

<IsStartupWizardCompleted>true</IsStartupWizardCompleted>

Na ovo:

<IsStartupWizardCompleted>false</IsStartupWizardCompleted>

Ponovno pokrenite Jellyfin poslužitelj:

sudo systemctl restart jellyfin

Nakon što resetujete početne postavke, ponovno posjetite HTTP://127.0.0.1:8096 i ponovno pokrenite proces.

Dopuštenja za postavljanje medijskih pogona

Jellyfin će zahtijevati dopuštenje za čitanje i izvršavanje vaših medijskih imenika. Možeš koristiti chown ili chgrp naredbe; međutim, naučit ćete koristiti setfacl naredba za tutorijal. Ovo je pokriveno jer kasnije može biti sigurnije i možete kontrolirati pristup na vrlo detaljnoj razini u usporedbi sa zadanim načinom chown i chgrp.

Za instalaciju pokrenite sljedeću naredbu:

sudo apt install acl -y

Debian bi ovo trebao imati instaliran prema zadanim postavkama, ali pokrenite naredbu kako biste bili sigurni ako niste sigurni.

Sada imate nekoliko opcija s setfalc naredba, ali realno, nećete proći kroz davanje dopuštenja svakom filmu i TV emisiji; umjesto toga, lakši način je korištenje rekurzivna zastava (-R) koji će omogućiti Jellyfin pristup za sve što se nalazi u direktoriju i poddirektorijima.

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

Ako trebate dodijeliti dopuštenje pojedinačnim medijskim direktorijima ili datotekama, upotrijebite sljedeće:

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

Postavite Apache kao obrnuti proxy

Možete postaviti obrnuti proxy za pristup Jellyfinu s udaljenog računala ili mreže. U ovom primjeru, vodič će postaviti Apache proxy poslužitelj. Ako želite koristiti Nginx, preskočite ovaj dio i prijeđite na Postavite Nginx kao obrnuti proxy.

Prvo instalirajte Apache:

sudo apt install apache2 -y

Prema zadanim postavkama, Apache bi trebao biti omogućen ako nije aktiviran. koristiti:

sudo systemctl start apache2

Da biste omogućili pokretanje Apachea pri pokretanju, koristite sljedeću naredbu:

sudo systemctl enable apache2

Primjer izlaza ako je uspješan:

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

Provjerite status Apachea:

sudo systemctl status apache2

Primjer rezultata:

Kako instalirati Jellyfin Media Server na Debian 11

Da biste koristili Apache kao obrnuti proxy, morate omogućiti modul sljedećom naredbom:

sudo a2enmod proxy proxy_http headers proxy_wstunnel

Zatim stvorite virtualni host za svoju poddomenu:

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

Trebat će vam aktivni naziv domene koji se može kupiti za samo 1 do 2 dolara ako ga nemate. NameCheap ima najbolje jeftine domene i ako više volite .com, koristite CloudFlare.

Nakon što ste stvorili svoju poddomenu, dodajte sljedeće u datoteku bloka poslužitelja:

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

    # Comment to prevent HTTP to HTTPS redirect
    Redirect permanent / https://DOMAIN_NAME

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

# If you are not using a SSL certificate, replace the 'redirect'
# line above with all lines below starting with 'Proxy'
<IfModule mod_ssl.c>
<VirtualHost *:443>
    ServerName DOMAIN_NAME
    # This folder exists just for certbot(You may have to create it, chown and chmod it to give apache permission to read it)
    DocumentRoot /var/www/html/jellyfin/public_html

    ProxyPreserveHost On

    # Letsencrypt's certbot will place a file in this folder when updating/verifying certs
    # This line will tell apache to not to use the proxy for this folder.
    ProxyPass "/.well-known/" "!"

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

    ProxyPass "/" "http://SERVER_IP_ADDRESS:8096/"
    ProxyPassReverse "/" "http://SERVER_IP_ADDRESS:8096/"

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

    # Enable only strong encryption ciphers and prefer versions with Forward Secrecy
    SSLCipherSuite HIGH:RC4-SHA:AES128-SHA:!aNULL:!MD5
    SSLHonorCipherOrder on

    # Disable insecure SSL and TLS versions
    SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1

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

Spremite datoteku (CTRL+O), zatim izađi (CTRL+X).

Sada izvršite suho testiranje kako biste bili sigurni da nema pogrešaka u konfiguraciji Apachea ili vašem virtualnom hostu:

sudo apache2ctl configtest

Ako sve radi ispravno, primjer bi trebao biti:

Syntax OK

Omogućite virtualni host na Apacheu na sljedeći način:

sudo a2ensite jellyfin.conf

Zatim ponovno pokrenite Apache:

sudo systemctl restart apache2

Postavite Nginx kao obrnuti proxy

Možete postaviti obrnuti proxy za pristup Jellyfinu s udaljenog računala ili mreže. U ovom primjeru, vodič će postaviti Nginx proxy poslužitelj.

Prvo instalirajte Nginx:

sudo apt install nginx -y

Prema zadanim postavkama, Nginx bi trebao biti omogućen ako nije aktiviran. koristiti:

sudo systemctl start nginx

Da biste omogućili pokretanje Nginxa pri pokretanju, koristite sljedeću naredbu:

sudo systemctl enable nginx

Primjer izlaza ako je uspješan:

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

Provjerite status Nginxa:

sudo systemctl status nginx

Primjer rezultata:

Kako instalirati Jellyfin Media Server na Debian 11

Ako želite instalirati najnoviju verziju Nginxa, pogledajte naš vodič Kako instalirati najnoviji Nginx Mainline ili Stable na Debian 11.

Sada stvorite novi blok poslužitelja na sljedeći način:

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

Trebat će vam aktivni naziv domene koji se može kupiti za samo 1 do 2 dolara ako ga nemate. NameCheap ima najbolje jeftine domene i ako više volite .com, koristite CloudFlare.

Nakon što ste stvorili svoju poddomenu, dodajte sljedeće u datoteku bloka poslužitelja:

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

Spremite datoteku (CTRL+O), zatim izađi (CTRL+X).

Sada izvršite suho testiranje kako biste bili sigurni da nema pogrešaka u konfiguraciji Nginxa ili bloku vašeg poslužitelja:

sudo nginx -t

Ako sve radi ispravno, primjer bi trebao biti:

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

Ponovno učitajte Nginx kako bi promjena stupila na snagu:

sudo systemctl reload nginx

Ako ste postavili svoju domenu i DNS zapise da upućuju na IP vašeg poslužitelja, sada možete pristupiti svom Jellyfin Media Serveru na meduzina.primjer.com.

Osigurajte Nginx ili Apache s Let's Encrypt SSL Free certifikatom

U idealnom slučaju, željeli biste pokrenuti svoj Apache ili Nginx HTTPS pomoću SSL certifikata. Najbolji način da to učinite je korištenje Hajdemo šifrirati, besplatno, automatizirano i otvoreno certifikacijsko tijelo koje vodi neprofitna grupa za istraživanje internetske sigurnosti (ISRG).

Prvo, instalirajte certbot paket kako slijedi:

Apache:

sudo apt install python3-certbot-apache -y

Nginx:

sudo apt install python3-certbot-nginx -y

Nakon instalacije, pokrenite sljedeću naredbu da započnete kreiranje certifikata:

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

Ova idealna postavka uključuje prisilno HTTPS 301 preusmjeravanje, zaglavlje Strict-Transport-Security i OCSP spajanje. Samo pazite da prilagodite e-poštu i naziv domene svojim zahtjevima.

Sada će vaš URL biti https://jellyfin.example.com umjesto HTTP://jellyfin.example.com.

Ako koristite stari HTTP URL, automatski će se preusmjeriti na HTTPS.

Kako ažurirati Jellyfin Media Server

Jellyfin se može ažurirati uobičajeno apt naredba ažuriranja da biste većinu svog vremena koristili za nadogradnju paketa na vašem sustavu.

Da biste provjerili ima li ažuriranja:

sudo apt update

Ako je dostupna, upotrijebite naredbu za nadogradnju:

sudo apt upgrade

Kako ukloniti (deinstalirati) Jellyfin Media Server

Za uklanjanje Jellyfina iz vašeg Debian sustava. Najprije uklonite softver pomoću sljedeće naredbe.

sudo autoremove install jellyfin --purge -y

Zatim uklonite dodano spremište ako ne planirate ponovno koristiti Jellyfin.

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

I to je to; uspješno ste izbrisali Jellyfin sa svog sustava.

Komentari i zaključak

Vodič je pokrio dosta instaliranja Jellyfina na Debian 11 Bullseye i postavljanja dozvola i udaljenog pristupa putem Apachea ili Nginxa.

Općenito, medijski poslužitelj je prilično uzbudljiv projekt, besprijekoran je i ugodan za oči te dobro funkcionira izvan kutije. Ako ste dugogodišnji korisnik Plexa ili Embyja, dobro je pripaziti na ovo kao alternativu ako niste voljni zamijeniti sada jer bi to mogao biti vrijedan spas.

Pretplati me
Obavijesti o
5 Komentari
Umetne povratne informacije
Pogledajte sve komentare
Alvaro
Nalog Gosta,
Četvrtak, 6. siječnja 2022. u 8:44 sati

Hello. The first thing to congratulate you on the great manual you have made. I have not had problems at any point and everything is very well explained. But I have a problem with the syncplay function since it does not work through https but it does work if I access with my local ip. Could you give me a hand?

Alvaro
Nalog Gosta,
Odgovarati na  Joshua James
Petak, 7. siječnja 2022. u 6 sati

Thank you very much for the quick response.
I am using nginx
hvala

Alvaro
Nalog Gosta,
Subota, 8. siječnja 2022. 9:41

Zdravo.
I can now create the groups in syncplay. Just add this line: proxy_set_header Upgrade $ http_upgrade.
hvala

adplus-oglašavanje
5
0
Volio bih vaše misli, molim vas komentirajte.x