Plex Media Server là giải pháp phát trực tuyến DIY cho môi trường cục bộ của bạn. Nó cho phép bạn lưu trữ các loại tệp phương tiện khác nhau ở một vị trí tập trung, sau đó bạn có thể phát trực tuyến tất cả các tệp phương tiện của mình từ nhiều vị trí và thiết bị, chẳng hạn như TV, điện thoại thông minh, v.v.
Hướng dẫn này sẽ chỉ cho bạn cách cài đặt Plex Media Server trên máy chủ Debian 12. Bạn sẽ cài đặt Plex với UFW (Tường lửa đơn giản) và Nginx làm proxy ngược.
Trước tiên, hãy chạy lệnh bên dưới để cập nhật Debian của bạn kho lưu trữ.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22142%22%3E%3C/svg%3E
Sau đó, cài đặt các phần phụ thuộc vào hệ thống Debian của bạn bằng lệnh bên dưới. Nhập y khi được yêu cầu, sau đó nhấn ENTER để tiếp tục.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22297%22%3E%3C/svg%3E
Chạy lệnh bên dưới để thêm kho lưu trữ Plex vào máy Debian của bạn.
Sau đó, thêm khóa GPG cho kho lưu trữ Plex bằng lệnh sau.
Sau khi kho lưu trữ và khóa GPG được thêm vào, hãy cập nhật và làm mới kho lưu trữ Debian của bạn bằng lệnh sau lệnh.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22236%22%3E%3C/svg%3E
Bây giờ kho lưu trữ đã được cập nhật, bạn có thể cài đặt gói plexmediaserver bằng lệnh bên dưới.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22183%22%3E%3C/svg%3E
Sau khi cài đặt hoàn tất, hãy chạy lệnh systemctl sau để khởi động và kích hoạt plexmediaserver dịch vụ.
Plexmediaserver phải chạy trên máy Debian của bạn. Bây giờ hãy xác minh bằng lệnh bên dưới.
Nếu mọi thứ diễn ra tốt đẹp, bạn sẽ thấy plexmediaserver có trạng thái hoạt động (đang chạy).
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22311%22%3E%3C/svg%3E
Sau khi cài đặt, hãy thêm cấu hình OpenSSH để cho phép lưu lượng SSH và mở cổng 32400 cho Plex.
Bây giờ hãy chạy lệnh bên dưới để bắt đầu và kích hoạt UFW. Khi được nhắc, hãy nhập y để xác nhận.
Cuối cùng, hãy xác minh trạng thái UFW và danh sách các quy tắc đã kích hoạt bằng lệnh bên dưới. Đảm bảo rằng UFW đang chạy với trạng thái Hoạt động và cả OpenSSH và cổng 32400 đều được bật.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22503%22%20height=%22379%22%3E%3C/svg%3E
Cài đặt máy chủ web Nginx vào máy Debian của bạn bằng lệnh bên dưới. Nhập y khi được nhắc, sau đó nhấn ENTER để tiếp tục.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22684%22%20height=%22314%22%3E%3C/svg%3E
Sau khi Nginx được cài đặt, hãy chạy lệnh sau để xác minh dịch vụ Nginx. Đảm bảo dịch vụ Nginx đang chạy và được bật.
Nếu được bật, bạn sẽ nhận được kết quả như đã bật. Khi chạy, bạn sẽ thấy đầu ra đang hoạt động (đang chạy).
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22306%22%3E%3C/svg%3E
Khi Nginx đang chạy, hãy chạy lệnh ufw bên dưới để mở cả cổng HTTP và HTTPS cho lưu lượng truy cập Plex. Theo mặc định, UFW cung cấp một hồ sơ ứng dụng 'WWW Full' để mở cả HTTP và HTTPS.
Chạy lệnh bên dưới để bật hồ sơ 'Nginx Full', sau đó tải lại UFW để áp dụng.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22493%22%20height=%22391%22%3E%3C/svg%3E
Tiếp theo, tạo cấu hình khối máy chủ mới /etc/nginx/sites-available/plex bằng lệnh nano editor bên dưới. Lệnh này sẽ được sử dụng làm proxy ngược cho quá trình cài đặt Plex Media Server.
Thêm cấu hình bên dưới và đảm bảo thay đổi tên miền bằng tên miền Plex của bạn. Tại đây, bạn cũng có thể sử dụng miền cục bộ cho môi trường cục bộ.
Lưu tệp và thoát khỏi trình chỉnh sửa.
Tiếp theo, chạy lệnh bên dưới để kích hoạt khối máy chủ/etc/nginx/sites-available/plexvà xác minh cú pháp Nginx của bạn.
Đảm bảo bạn không gặp lỗi nào và hãy chắc chắn rằng bạn nhận được kết quả đầu ra 'cú pháp là OK - thử nghiệm thành công'.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22172%22%3E%3C/svg%3E
Cuối cùng, hãy chạy lệnh bên dưới để khởi động lại dịch vụ Nginx và áp dụng các thay đổi của bạn vào Nginx. Với điều này, Plex Media Server của bạn sẽ có thể truy cập được qua các cổng HTTP và HTTPS, được xử lý bởi máy chủ web Nginx.
Chạy lệnh bên dưới để cài đặt plugin certbot và certbot Nginx.
Sau khi cài đặt hoàn tất, hãy chạy lệnh certbot bên dưới để tạo chứng chỉ SSL/TLS cho tên miền Plex của bạn. Ngoài ra, hãy nhớ thay đổi địa chỉ email và tên miền bằng thông tin của bạn.
Sau khi quá trình hoàn tất, khối máy chủ Nginx của bạn sẽ tự động được cấu hình bằng HTTPS. Và chứng chỉ SSL/TLS của bạn có thể được tìm thấy trong thư mục /etc/letsencrypt/live/domain.com.
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22744%22%20height=%22750%22%3E%3C/svg%3E
Sau khi đăng ký, hãy mở một tab mới và truy cập tên miền Plex của bạn. Nếu cài đặt thành công, bạn sẽ nhận được bảng điều khiển Plex Media Server như sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22511%22%3E%3C/svg%3E
Hướng dẫn này sẽ chỉ cho bạn cách cài đặt Plex Media Server trên máy chủ Debian 12. Bạn sẽ cài đặt Plex với UFW (Tường lửa đơn giản) và Nginx làm proxy ngược.
Điều kiện tiên quyết
Để bắt đầu với hướng dẫn này, hãy đảm bảo bạn có những điều sau:- Máy chủ Debian 12.
- Người dùng không phải root có quyền quản trị viên.
- Tên miền trỏ đến địa chỉ IP của máy chủ.
Cài đặt các phụ thuộc
Trước khi cài đặt, hãy cài đặt các phụ thuộc cần thiết vào máy Debian của bạn.Trước tiên, hãy chạy lệnh bên dưới để cập nhật Debian của bạn kho lưu trữ.
Mã:
sudo apt update
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22142%22%3E%3C/svg%3E
Sau đó, cài đặt các phần phụ thuộc vào hệ thống Debian của bạn bằng lệnh bên dưới. Nhập y khi được yêu cầu, sau đó nhấn ENTER để tiếp tục.
Mã:
sudo apt install curl unzip socat libexpat1 apt-transport-https wget software-properties-common
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22297%22%3E%3C/svg%3E
Cài đặt Plex Media Server trên Debian
Sau khi cài đặt xong các phần phụ thuộc, bạn đã sẵn sàng để cài đặt Plex Media Repository. Nhưng trước tiên, bạn phải thêm kho lưu trữ Plex vào hệ thống Debian của mình.Chạy lệnh bên dưới để thêm kho lưu trữ Plex vào máy Debian của bạn.
Mã:
echo deb https://downloads.plex.tv/repo/deb public main | sudo tee /etc/apt/sources.list.d/plexmediaserver.list
Mã:
curl https://downloads.plex.tv/plex-keys/PlexSign.key | sudo apt-key add -
Mã:
sudo apt update
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22236%22%3E%3C/svg%3E
Bây giờ kho lưu trữ đã được cập nhật, bạn có thể cài đặt gói plexmediaserver bằng lệnh bên dưới.
Mã:
sudo apt install plexmediaserver
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22183%22%3E%3C/svg%3E
Sau khi cài đặt hoàn tất, hãy chạy lệnh systemctl sau để khởi động và kích hoạt plexmediaserver dịch vụ.
Mã:
sudo systemctl start plexmediaserver
sudo systemctl enable plexmediaserver
Mã:
sudo systemctl is-enabled plexmediaserver
sudo systemctl status plexmediaserver
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22311%22%3E%3C/svg%3E
Thiết lập UFW Trong hướng dẫn này, bạn sẽ sử dụng UFW để bảo vệ Plex Media Server. Vì vậy, trước tiên bạn phải cài đặt UFW vào máy chủ Debian của mình, sau đó bật cấu hình OpenSSH và thêm cổng chính cho Plex Media Server.
Cài đặt UFW vào hệ thống Debian của bạn bằng lệnh sau.
Mã:
sudo apt install ufw -y
Mã:
sudo ufw allow OpenSSH
sudo ufw allow 32400
Mã:
sudo ufw enable
Mã:
sudo ufw status
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22503%22%20height=%22379%22%3E%3C/svg%3E
Cài đặt và Cấu hình Nginx làm Proxy ngược
Lúc này, bạn đã cài đặt Plex và cấu hình UFW. Bây giờ, hãy cài đặt Nginx và cấu hình nó làm proxy ngược cho cài đặt Plex Media Server của bạn.Cài đặt máy chủ web Nginx vào máy Debian của bạn bằng lệnh bên dưới. Nhập y khi được nhắc, sau đó nhấn ENTER để tiếp tục.
Mã:
sudo apt install nginx
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22684%22%20height=%22314%22%3E%3C/svg%3E
Sau khi Nginx được cài đặt, hãy chạy lệnh sau để xác minh dịch vụ Nginx. Đảm bảo dịch vụ Nginx đang chạy và được bật.
Mã:
sudo systemctl is-enabled nginx
sudo systemctl status nginx
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22306%22%3E%3C/svg%3E
Khi Nginx đang chạy, hãy chạy lệnh ufw bên dưới để mở cả cổng HTTP và HTTPS cho lưu lượng truy cập Plex. Theo mặc định, UFW cung cấp một hồ sơ ứng dụng 'WWW Full' để mở cả HTTP và HTTPS.
Chạy lệnh bên dưới để bật hồ sơ 'Nginx Full', sau đó tải lại UFW để áp dụng.
Mã:
sudo ufw allow 'Nginx Full'
sudo ufw reload
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22493%22%20height=%22391%22%3E%3C/svg%3E
Tiếp theo, tạo cấu hình khối máy chủ mới /etc/nginx/sites-available/plex bằng lệnh nano editor bên dưới. Lệnh này sẽ được sử dụng làm proxy ngược cho quá trình cài đặt Plex Media Server.
Mã:
vim /etc/nginx/sites-available/plex
Mã:
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;
}
}
Tiếp theo, chạy lệnh bên dưới để kích hoạt khối máy chủ/etc/nginx/sites-available/plexvà xác minh cú pháp Nginx của bạn.
Mã:
sudo ln -s /etc/nginx/sites-available/plex /etc/nginx/sites-enabled
sudo nginx -t
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22172%22%3E%3C/svg%3E
Cuối cùng, hãy chạy lệnh bên dưới để khởi động lại dịch vụ Nginx và áp dụng các thay đổi của bạn vào Nginx. Với điều này, Plex Media Server của bạn sẽ có thể truy cập được qua các cổng HTTP và HTTPS, được xử lý bởi máy chủ web Nginx.
Mã:
sudo systemctl restart nginx
Bảo mật Plex Media Server bằng Chứng chỉ SSL/TLS
Trong hướng dẫn này, bạn sẽ bảo mật cài đặt Plex của mình thông qua chứng chỉ SSL/TLS. Đối với người dùng miền cục bộ, bạn có thể tạo chứng chỉ tự ký và bật HTTPS theo cách thủ công trên khối máy chủ Nginx. Nếu bạn đang sử dụng miền công cộng, hãy sử dụng Certbot và Letsencrypt để tạo chứng chỉ SSL/TLS.Chạy lệnh bên dưới để cài đặt plugin certbot và certbot Nginx.
Mã:
sudo apt install certbot python3-certbot-nginx
Mã:
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [emailprotected] -d plex.howtoforge.local
Cấu hình máy chủ Plex Media
Mở trình duyệt web của bạn và truy cập tên miền Plex của bạn (ví dụ: https://plex.howtoforge.local/). Bạn sẽ được chuyển hướng đến trang web plex.tv để đăng ký tài khoản Plex. Bạn có thể đăng ký qua Facebook/Gmail/Apple hoặc có thể đăng ký qua địa chỉ email.data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22744%22%20height=%22750%22%3E%3C/svg%3E
Sau khi đăng ký, hãy mở một tab mới và truy cập tên miền Plex của bạn. Nếu cài đặt thành công, bạn sẽ nhận được bảng điều khiển Plex Media Server như sau:
data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22511%22%3E%3C/svg%3E