Ինչպես տեղադրել Plex Media Server-ը Debian 12-ում


Այս ձեռնարկը գոյություն ունի ՕՀ-ի այս տարբերակների համար

  • Debian 12 (Գիրքորդ)
  • Debian 11 (Bullseye)

Այս էջում

  1. Նախադրյալներ
  2. Կախվածությունների տեղադրում
  3. Plex Media Server-ի տեղադրում Debian-ում
  4. UFW-ի կարգավորում
  5. Nginx-ը որպես հակադարձ վստահված անձի տեղադրում և կարգավորում
  6. Plex Media Server-ի ապահովում SSL/TLS վկայագրերով
  7. Plex Media Server-ի կոնֆիգուրացիա
  8. Եզրակացություն

Plex Media Server-ը DIY հոսքային լուծում է ձեր տեղական միջավայրի համար: Այն թույլ է տալիս պահել տարբեր տեսակի մեդիա ֆայլեր կենտրոնացված վայրում, այնուհետև կարող եք հեռարձակել ձեր բոլոր մեդիա ֆայլերը բազմաթիվ վայրերից և սարքերից, ինչպիսիք են հեռուստացույցները, սմարթֆոնները և այլն:

Այս ուղեցույցը ցույց կտա ձեզ, թե ինչպես տեղադրել Plex Media Server-ը Debian 12 սերվերի վրա: Դուք կտեղադրեք Plex-ը UFW-ով (Uncomplicated Firewall) և Nginx-ով որպես հակադարձ պրոքսի:

Նախադրյալներ

Այս ուղեցույցով սկսելու համար համոզվեք, որ ունեք հետևյալը.

  • Debian 12 սերվեր:
  • Ոչ արմատական օգտվող, ադմինիստրատորի արտոնություններով:
  • Դոմենի անուն, որը մատնանշված է սերվերի IP հասցեին:

Կախվածությունների տեղադրում

Նախքան տեղադրելը, եկեք տեղադրենք անհրաժեշտ կախվածությունները ձեր Debian մեքենայի վրա:

Նախ, գործարկեք ստորև նշված հրամանը՝ ձեր Debian պահեստը թարմացնելու համար:

sudo apt update

Դրանից հետո ձեր Debian համակարգում տեղադրեք կախվածություններ՝ օգտագործելով ստորև նշված հրամանը: Մուտքագրեք y, երբ հարցնում են, ապա սեղմեք ENTER՝ շարունակելու համար:

sudo apt install curl unzip socat libexpat1 apt-transport-https wget software-properties-common

Plex Media Server-ի տեղադրում Debian-ում

Կախվածությունները տեղադրվելուց հետո դուք պատրաստ եք տեղադրել Plex Media Repository-ը: Բայց մինչ այդ, դուք պետք է ավելացնեք Plex պահոց ձեր Debian համակարգին:

Գործարկեք ստորև նշված հրամանը՝ Plex պահեստը ձեր Debian մեքենային ավելացնելու համար:

echo deb https://downloads.plex.tv/repo/deb public main | sudo tee /etc/apt/sources.list.d/plexmediaserver.list

Այնուհետև ավելացրեք GPG ստեղնը Plex պահեստի համար՝ օգտագործելով հետևյալ հրամանը.

curl https://downloads.plex.tv/plex-keys/PlexSign.key | sudo apt-key add -

Պահեստը և GPG ստեղնը ավելացնելուց հետո թարմացրեք և թարմացրեք ձեր Debian պահոցը՝ օգտագործելով հետևյալ հրամանը.

sudo apt update

Այժմ, երբ պահեստը թարմացվում է, կարող եք տեղադրել plexmediaserver փաթեթը՝ օգտագործելով ստորև նշված հրամանը:

sudo apt install plexmediaserver

Տեղադրումն ավարտելուց հետո գործարկեք հետևյալ systemctl հրամանը՝ plexmediaserver ծառայությունը սկսելու և միացնելու համար:

sudo systemctl start plexmediaserver
sudo systemctl enable plexmediaserver

Plexmediaserver-ը պետք է աշխատի ձեր Debian մեքենայի վրա: Այժմ ստուգեք այն՝ օգտագործելով ստորև նշված հրամանը:

sudo systemctl is-enabled plexmediaserver
sudo systemctl status plexmediaserver

Եթե ամեն ինչ լավ ընթանա, կտեսնեք plexmediaserver-ը ակտիվ (աշխատող) կարգավիճակով:

UFW-ի կարգավորում

Այս ուղեցույցում դուք կօգտագործեք UFW Plex Media Server-ը պաշտպանելու համար: Այսպիսով, դուք պետք է նախ տեղադրեք UFW-ն ձեր Debian սերվերում, այնուհետև միացնեք OpenSSH պրոֆիլը և ավելացնեք հիմնական պորտը Plex Media Server-ի համար:

Տեղադրեք UFW-ն ձեր Debian համակարգում՝ օգտագործելով հետևյալ հրամանը.

sudo apt install ufw -y

Տեղադրվելուց հետո ավելացրեք OpenSSH պրոֆիլը, որպեսզի թույլատրվի SSH տրաֆիկը և բացեք 32400 նավահանգիստը Plex-ի համար:

sudo ufw allow OpenSSH
sudo ufw allow 32400

Այժմ գործարկեք ստորև նշված հրամանը՝ UFW-ն սկսելու և միացնելու համար: Երբ ձեզ հուշում են, մուտքագրեք y՝ հաստատելու համար:

sudo ufw enable

Ի վերջո, ստուգեք UFW կարգավիճակը և միացված կանոնների ցանկը՝ օգտագործելով ստորև նշված հրամանը: Համոզվեք, որ UFW-ն աշխատում է Active կարգավիճակով, և որ թե՛ OpenSSH, թե՛ պորտ 32400 միացված են:

sudo ufw status

Nginx-ը որպես հակադարձ վստահված անձի տեղադրում և կարգավորում

Այս պահին դուք տեղադրել եք տեղադրված Plex և կարգավորել UFW-ն: Առայժմ եկեք տեղադրենք Nginx-ը և կարգավորենք այն որպես հակադարձ վստահված անձ ձեր Plex Media Server-ի տեղադրման համար:

Տեղադրեք Nginx վեբ սերվերը ձեր Debian մեքենայի վրա՝ օգտագործելով ստորև նշված հրամանը: Մուտքագրեք y, երբ ձեզ հուշում են, ապա սեղմեք ENTER՝ շարունակելու համար:

sudo apt install nginx

Nginx-ը տեղադրելուց հետո գործարկեք հետևյալ հրամանը՝ Nginx ծառայությունը ստուգելու համար: Համոզվեք, որ Nginx ծառայությունը աշխատում է և միացված է:

sudo systemctl is-enabled nginx
sudo systemctl status nginx

Եթե միացված է, դուք պետք է ստանաք այնպիսի ելք, ինչպիսին միացված է: Գործարկելիս կտեսնեք ելք ակտիվ (աշխատող):

Երբ Nginx-ը աշխատում է, գործարկեք ստորև բերված ufw հրամանը՝ Plex տրաֆիկի համար և՛ HTTP, և՛ HTTPS պորտերը բացելու համար: Լռելյայնորեն, UFW-ն ապահովում է «WWW Full» հավելվածի պրոֆիլը և՛ HTTP, և՛ HTTPS բացելու համար:

Գործարկեք ստորև նշված հրամանը՝ «Nginx Full» պրոֆիլը միացնելու համար, այնուհետև վերաբեռնեք UFW՝ կիրառելու համար:

sudo ufw allow 'Nginx Full'
sudo ufw reload

Հաջորդը, ստեղծեք նոր սերվերի բլոկի կոնֆիգուրացիա /etc/nginx/sites-available/plex՝ օգտագործելով ստորև բերված nano editor հրամանը: Սա կօգտագործվի որպես հակադարձ պրոքսի Plex Media Server-ի տեղադրման համար:

vim /etc/nginx/sites-available/plex

Ավելացրեք ստորև նշված կոնֆիգուրացիան և համոզվեք, որ փոխեք տիրույթի անունը ձեր Plex տիրույթի անունով: Այստեղ դուք կարող եք նաև օգտագործել տեղական տիրույթը տեղական միջավայրի համար:

upstream plex_backend {
 server 127.0.0.1:32400;
 keepalive 32;
}
server {
 listen 80;
 server_name plex.howtoforge.local;
 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 the 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 is sent to the client as soon as the data is received from Plex.
 proxy_redirect off;
 proxy_buffering off;
 location / {
 proxy_pass http://plex_backend;
 }
}

Պահպանեք ֆայլը և դուրս եկեք խմբագրիչից:

Այնուհետև գործարկեք ստորև հրամանը՝ /etc/nginx/sites-available/plex սերվերի բլոկը միացնելու և ձեր Nginx շարահյուսությունը հաստատելու համար:

sudo ln -s /etc/nginx/sites-available/plex /etc/nginx/sites-enabled
sudo nginx -t

Համոզվեք, որ սխալ չունեք և համոզվեք, որ կստանաք «շարահյուսությունը լավ է. թեստը հաջողված է»:

Ի վերջո, գործարկեք ստորև նշված հրամանը՝ Nginx ծառայությունը վերագործարկելու և ձեր փոփոխությունները Nginx-ում կիրառելու համար: Դրանով ձեր Plex Media Server-ը պետք է հասանելի լինի HTTP և HTTPS պորտերի միջոցով, որոնք կառավարվում են Nginx վեբ սերվերի կողմից:

sudo systemctl restart nginx

Plex Media Server-ի ապահովում SSL/TLS վկայագրերով

Այս ուղեցույցում դուք կապահովեք ձեր Plex տեղադրումը SSL/TLS վկայագրերի միջոցով: Տեղական տիրույթի օգտագործողների համար դուք կարող եք ստեղծել ինքնստորագրված վկայագրեր և ձեռքով միացնել HTTPS-ը Nginx սերվերի բլոկում: Եթե դուք օգտագործում եք հանրային տիրույթը, օգտագործեք Certbot և Letsencrypt՝ SSL/TLS վկայագրեր ստեղծելու համար:

Գործարկեք ստորև նշված հրամանը՝ certbot և certbot Nginx հավելվածը տեղադրելու համար:

sudo apt install certbot python3-certbot-nginx

Տեղադրումն ավարտվելուց հետո գործարկեք ստորև բերված certbot հրամանը՝ ձեր Plex տիրույթի անվան համար SSL/TLS վկայագրեր ստեղծելու համար: Նաև համոզվեք, որ փոխեք էլփոստի հասցեն և տիրույթի անունը ձեր տեղեկություններով:

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email  -d plex.howtoforge.local

Գործընթացն ավարտվելուց հետո ձեր Nginx սերվերի բլոկը ավտոմատ կերպով կկարգավորվի HTTPS-ով: Իսկ ձեր SSL/TLS վկայականները կարելի է գտնել /etc/letsencrypt/live/domain.com գրացուցակում:

Plex Media Server-ի կոնֆիգուրացիա

Բացեք ձեր վեբ զննարկիչը և այցելեք ձեր Plex տիրույթի անունը (այսինքն՝ https://plex.howtoforge.local/): Դուք կվերաուղղորդվեք plex.tv կայք՝ Plex հաշիվ գրանցելու համար: Դուք կարող եք գրանցվել Facebook/Gmail/Apple-ի միջոցով, կամ կարող եք գրանցվել էլեկտրոնային հասցեով:

Գրանցվելուց հետո բացեք նոր ներդիր և այցելեք ձեր Plex տիրույթի անունը: Եթե ձեր տեղադրումը հաջող է, դուք պետք է ստանաք Plex Media Server-ի վահանակը հետևյալ կերպ.

Եզրակացություն

Շնորհավորում եմ: Այժմ դուք տեղադրել եք Plex Media Server-ը Debian 12 սերվերի վրա: Դուք նաև կարգավորել եք UFW-ն Debian-ում՝ Plex-ի տեղադրումն ապահովելու համար: Բացի դրանից, դուք նաև կարգավորել եք Nginx-ը որպես Plex Media Server-ի հակադարձ վստահված անձ և ապահովել Plex-ը Letsencrypt-ից SSL.TLS վկայագրերի միջոցով: