Plex è un server multimediale gratuito, open source e completo che ti consente di trasmettere in streaming foto, video e file audio sul tuo PC, tablet, telefono da qualsiasi parte del mondo. Plex supporta la maggior parte dei sistemi operativi inclusi Linux, Windows, Mac e FreeBSD. Plex supporta anche diversi plugin che ti consentono di guardare i contenuti da Comedy Central e MTV.
Plex è un sistema di media player client-server. Devi semplicemente installare il server Plex sul server in cui conservi i tuoi file multimediali e quindi installare un'applicazione Plex sul tuo telefono, tablet o altri dispositivi per accedere ai tuoi file multimediali su Internet.
Caratteristiche Supporta più utenti. Mostra consigli su film/programma TV. Crea una playlist per la tua musica e i tuoi film preferiti. Sincronizza e accedi ai file multimediali per l'utilizzo offline. Il controllo genitori ti consente di installare l'applicazione Plex sul dispositivo di un bambino e limitarli a guardare solo contenuti specifici. Possibilità di trasmettere in streaming i tuoi canali televisivi locali sul tuo dispositivo e guardare la televisione in diretta.
In questo tutorial, ti mostreremo come installare Plex Media Server su un sistema CentOS 8 con Nginx come proxy inverso.
Prerequisiti
- Un server che esegue CentOS 8 con un minimo di 2 GB di RAM.
- Un nome di dominio valido è puntato all'IP del tuo server.
- Sul tuo server è configurata una password di root.
Aggiorna il sistema
Innanzitutto, si consiglia di aggiornare il server con l'ultima versione. Puoi aggiornarlo usando il seguente comando:
dnf update -y
Una volta aggiornato il server, riavvialo per implementare le modifiche.
Installa Plex Media Server
Per impostazione predefinita, il pacchetto del server multimediale Plex non è disponibile nel repository predefinito di CentOS 8. Quindi dovrai creare un repository per il media server Plex. Puoi crearlo con il seguente comando:
nano /etc/yum.repos.d/plex.repo
Aggiungi le seguenti righe:
[Plex] name=Plex baseurl=https://downloads.plex.tv/repo/rpm/$basearch/ enabled=1 gpgkey=https://downloads.plex.tv/plex-keys/PlexSign.key gpgcheck=1
Salva e chiudi il file quando hai finito. Quindi installa Plex media server utilizzando il seguente comando:
dnf install plexmediaserver -y
Una volta completata l'installazione, avvia il servizio multimediale Plex e abilitalo all'avvio dopo il riavvio del sistema con il seguente comando:
systemctl enable plexmediaserver
systemctl start plexmediaserver
Puoi anche verificare lo stato del media server Plex con il seguente comando:
systemctl status plexmediaserver
Dovresti vedere il seguente output:
? plexmediaserver.service - Plex Media Server Loaded: loaded (/usr/lib/systemd/system/plexmediaserver.service; enabled; vendor preset: disabled) Active: active (running) since Mon 2020-01-06 02:45:40 EST; 41s ago Main PID: 1009 (Plex Media Serv) Tasks: 113 (limit: 12552) Memory: 268.1M CGroup: /system.slice/plexmediaserver.service ??1009 /usr/lib/plexmediaserver/Plex Media Server ??1033 Plex Plug-in [com.plexapp.system] /usr/lib/plexmediaserver/Resources/Plug-ins-349e9837e/Framework.bundle/Contents/Resources/> ??1077 /usr/lib/plexmediaserver/Plex Tuner Service /usr/lib/plexmediaserver/Resources/Tuner/Private /usr/lib/plexmediaserver/Resour> ??1246 Plex Plug-in [org.musicbrainz.agents.music] /usr/lib/plexmediaserver/Resources/Plug-ins-349e9837e/Framework.bundle/Contents/> ??1356 Plex Plug-in [com.plexapp.agents.plexthememusic] /usr/lib/plexmediaserver/Resources/Plug-ins-349e9837e/Framework.bundle/Cont> ??1364 Plex Plug-in [com.plexapp.agents.themoviedb] /usr/lib/plexmediaserver/Resources/Plug-ins-349e9837e/Framework.bundle/Contents> ??1365 Plex Plug-in [tv.plex.agents.music] /usr/lib/plexmediaserver/Resources/Plug-ins-349e9837e/Framework.bundle/Contents/Resource> ??1389 Plex Plug-in [com.plexapp.agents.thetvdb] /usr/lib/plexmediaserver/Resources/Plug-ins-349e9837e/Framework.bundle/Contents/Re> ??1450 Plex Plug-in [com.plexapp.agents.imdb] /usr/lib/plexmediaserver/Resources/Plug-ins-349e9837e/Framework.bundle/Contents/Resou> Jan 06 02:45:40 plex systemd[1]: Starting Plex Media Server... Jan 06 02:45:40 plex systemd[1]: Started Plex Media Server.
A questo punto, il media server Plex è installato e funzionante. Ora puoi procedere al passaggio successivo.
Configura Firewall e SELinux per Plex Media Server
Successivamente, dovrai configurare firewalld per consentire porte specifiche del server multimediale Plex. Puoi farlo eseguendo i seguenti comandi:
firewall-cmd --zone=public --add-port=32400/tcp --permanent
firewall-cmd --zone=public --add-port=32469/tcp --permanent
firewall-cmd --zone=public --add-port=8324/tcp --permanent
firewall-cmd --zone=public --add-port=3005/tcp --permanent
firewall-cmd --zone=public --add-port=32412/udp --permanent
firewall-cmd --zone=public --add-port=32413/udp --permanent
firewall-cmd --zone=public --add-port=32414/udp --permanent
firewall-cmd --zone=public --add-port=32410/udp --permanent
firewall-cmd --zone=public --add-port=1900/udp --permanent
firewall-cmd --zone=public --add-port=5353/udp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent
Quindi, ricarica il servizio firewalld per implementare le modifiche:
firewall-cmd --reload
Per impostazione predefinita, SELinux è abilitato sul server CentOS 8. Quindi, dovrai configurare SELinux per accedere a Plex Media Server su Internet. Puoi configurare SELinux usando il seguente comando:
setsebool httpd_can_network_connect on -P
A questo punto, il media server Plex può essere accessibile tramite Internet. Ora puoi procedere al passaggio successivo.
Accedi a Plex Media Server
Ora puoi accedere al server multimediale Plex utilizzando l'URL http://your-server-ip:32400. Dovresti vedere la seguente pagina:
Successivamente, dovrai registrarti con un indirizzo e-mail valido per utilizzare il servizio. Dopo la registrazione riuscita. Verrai reindirizzato alla dashboard del server multimediale Plex come mostrato di seguito:
Imposta Nginx come proxy inverso
Successivamente, dovrai configurare un Nginx come proxy inverso in modo da potervi accedere con il nome di dominio senza fornire l'indirizzo IP e il numero di porta.
Per farlo, prima installa il server web Nginx con il seguente comando:
dnf install nginx
Una volta completata l'installazione, avvia il servizio Nginx e abilitalo all'avvio dopo il riavvio del sistema con il seguente comando:
systemctl start nginx
systemctl enable nginx
Quindi, crea un file di configurazione dell'host virtuale Nginx per Plex usando il seguente comando:
nano /etc/nginx/conf.d/plex.conf
Aggiungi le seguenti righe:
upstream plex_backend { server 127.0.0.1:32400; keepalive 32; } server { listen 80; server_name plex.example.com; 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 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 send to the client as soon as the data is received from Plex. proxy_redirect off; proxy_buffering off; location / { proxy_pass http://plex_backend; } }
Salva e chiudi il file quando hai finito. Successivamente, dovrai definire la dimensione del bucket hash del server Nginx. Puoi farlo modificando il file di configurazione di Nginx:
nano /etc/nginx/nginx.conf
Aggiungi la seguente riga appena sopra l'ultima riga:
server_names_hash_bucket_size 64;
Salva e chiudi il file quando hai finito. Quindi, controlla Nginx per eventuali errori di sintassi con il seguente comando:
nginx -t
Dovresti vedere il seguente output:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Infine, riavvia il servizio Nginx per implementare le modifiche.
systemctl restart nginx
Per controllare lo stato del servizio Nginx eseguire il comando seguente:
systemctl status nginx
Se tutto va bene dovresti ottenere il seguente output:
? nginx.service - The nginx HTTP and reverse proxy server Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled) Drop-In: /usr/lib/systemd/system/nginx.service.d ??php-fpm.conf Active: active (running) since Thu 2020-01-09 05:17:27 EST; 48s ago Process: 1230 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) Process: 1229 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) Process: 1227 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS) Main PID: 1232 (nginx) Tasks: 2 (limit: 5060) Memory: 13.1M CGroup: /system.slice/nginx.service ??1232 nginx: master process /usr/sbin/nginx ??1233 nginx: worker process Jan 09 05:17:25 centos8 systemd[1]: Starting The nginx HTTP and reverse proxy server... Jan 09 05:17:27 centos8 nginx[1229]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok Jan 09 05:17:27 centos8 nginx[1229]: nginx: configuration file /etc/nginx/nginx.conf test is successful
Ora puoi accedere al tuo media server Plex utilizzando l'URL http://plex.example.com.
Conclusione
Congratulazioni! hai installato con successo il media server Plex su CentOS 8 con Nginx come proxy inverso. Ora puoi esplorare il server multimediale Plex per ulteriori opzioni e configurare la tua libreria multimediale. Quindi, puoi installare l'applicazione Plex dal Play Store del tuo telefono e accedere ai tuoi file multimediali. Puoi anche consentire ai tuoi amici e familiari di accedere a foto, musica e film da un browser Web o da un'applicazione Plex. Sentiti libero di chiedermi se hai domande.