Cách cài đặt Ampache Music Streaming Server trên Ubuntu 20.04

theanh

Administrator
Nhân viên
Ampache là phần mềm miễn phí, mã nguồn mở và dựa trên web cho phép bạn lưu trữ máy chủ phát nhạc của riêng mình. Với Ampache, bạn có thể truy cập nhạc và video của mình qua internet. Bạn có thể xem, chỉnh sửa và phát nhạc của mình thông qua trình duyệt web hoặc bất kỳ máy khách phát trực tuyến phương tiện nào.

Tính năng
  • API mạnh mẽ và phát trực tuyến tới bất kỳ máy khách nào
  • Danh mục và tùy chỉnh linh hoạt
  • Trình phát web HTML5 hiện đại
  • Hỗ trợ nhiều phương pháp xác thực khác nhau như MySQL, LDAP, HTTP và PAM
  • Tương thích với bất kỳ máy khách Subsonic nào
Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách thiết lập máy chủ phát trực tuyến nhạc Ampache trên Ubuntu 20.04.

Điều kiện tiên quyết​

  • Máy chủ chạy Ubuntu 20.04.
  • Mật khẩu gốc được thiết lập trên máy chủ của bạn.

Bắt đầu​

Trước khi bắt đầu, bạn nên cập nhật gói hệ thống của mình lên phiên bản mới nhất. Bạn có thể cập nhật chúng bằng lệnh sau:
Mã:
apt-get update -y
apt-get upgrade -y
Sau khi tất cả các gói được cập nhật, hãy khởi động lại hệ thống của bạn để áp dụng các thay đổi.

Cài đặt LAMP Server​

Ampache chạy trên máy chủ web, được viết bằng PHP và sử dụng MySQL/MariaDB để lưu trữ dữ liệu của nó. Vì vậy, bạn sẽ cần cài đặt Apache, MariaDB, PHP và các tiện ích mở rộng PHP cần thiết khác trong hệ thống của mình. Bạn có thể cài đặt chúng bằng cách chạy lệnh sau:
Mã:
apt-get install apache2 libapache2-mod-php php php-cli mariadb-server php-mysql php-curl php-json php-gd php-xml unzip curl git zip ffmpeg -y
Sau khi tất cả các gói được cài đặt, hãy mở tệp php.ini và điều chỉnh một số cài đặt:
Mã:
nano /etc/php/7.4/apache2/php.ini
Thay đổi các giá trị sau:
Mã:
upload_max_filesize = 100Mpost_max_size = 100Mdate.timezone = Asia/Kolkata
Lưu và đóng tệp khi bạn hoàn tất. Sau đó, khởi động lại dịch vụ Apache để triển khai các thay đổi:
Mã:
systemctl restart apache2

Cấu hình Cơ sở dữ liệu MariaDB​

Theo mặc định, MariaDB không được bảo mật. Bạn có thể bảo mật bằng cách chạy tập lệnh sau:
Mã:
mysql_secure_installation
Trả lời tất cả các câu hỏi như hiển thị bên dưới:
Mã:
Nhập mật khẩu hiện tại cho root (nhập nếu không có):Đặt mật khẩu root? [C/N] CMật khẩu mới:Nhập lại mật khẩu mới:Xóa người dùng ẩn danh? [C/N] CKhông cho phép root đăng nhập từ xa? [C/N] CXóa cơ sở dữ liệu thử nghiệm và truy cập vào cơ sở dữ liệu đó? [C/N] CTải lại bảng đặc quyền ngay bây giờ? [Y/n] Y
Sau khi MariaDB được bảo mật, hãy đăng nhập vào shell MariaDB bằng lệnh sau:
Mã:
mysql -u root -p
Cung cấp mật khẩu gốc MariaDB của bạn và tạo cơ sở dữ liệu và người dùng cho Ampache bằng lệnh sau:
Mã:
MariaDB [(none)]> CREATE DATABASE ampachedb;
MariaDB [(none)]> CREATE USER 'ampache'@'localhost' IDENTIFIED BY 'password';
Tiếp theo, cấp tất cả các quyền cho cơ sở dữ liệu Ampache bằng lệnh sau:
Mã:
MariaDB [(none)]> CẤP TẤT CẢ CÁC QUYỀN TRÊN ampachedb.* CHO 'ampache'@'localhost';
Tiếp theo, xóa các quyền và thoát khỏi shell MariaDB bằng lệnh sau:
Mã:
MariaDB [(none)]> XÓA CÁC QUYỀN;
MariaDB [(none)]> EXIT;

Tải Ampache​

Bạn có thể tải xuống phiên bản Ampache mới nhất bằng lệnh sau:
Mã:
wget https://github.com/ampache/ampache/releases/download/4.1.1/ampache-4.1.1_all.zip
Sau khi tải xuống hoàn tất, hãy giải nén tệp đã tải xuống vào thư mục gốc web của Apache:
Mã:
unzip ampache-4.1.1_all.zip -d /var/www/html/ampache
Tiếp theo, hãy thay đổi quyền sở hữu thư mục Ampache thành www-data:
Mã:
chown -R www-data:www-data /var/www/html/ampache
Tiếp theo, hãy thay đổi thư mục thành ampache và đổi tên tệp .htaccess cần thiết.
Mã:
cd /var/www/html/ampache
mv rest/.htaccess.dist rest/.htaccess
mv play/.htaccess.dist play/.htaccess
mv channel/.htaccess.dist channel/.htaccess
Tiếp theo, tạo một thư mục để lưu trữ các tệp nhạc và đổi quyền sở hữu thành www-data:
Mã:
mkdir -p /data/Music
chown www-data:www-data /data/Music
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Cấu hình Apache cho Ampache​

Tiếp theo, bạn sẽ cần tạo một tệp cấu hình máy chủ ảo Apache mới cho Ampache. Bạn có thể tạo tệp này bằng lệnh sau:
Mã:
nano /etc/apache2/sites-available/ampache.conf
Thêm các dòng sau:
Mã:
 ServerName ampache.linuxbuz.com DocumentRoot /var/www/html/ampache  AllowOverride All Require all granted  RewriteEngine on CustomLog /var/log/apache2/ampache.access.log common ErrorLog /var/log/apache2/ampache.error.log
Lưu và đóng tệp khi bạn hoàn tất. Sau đó, hãy kiểm tra tệp cấu hình Apache xem có lỗi nào không bằng lệnh sau:
Mã:
apachectl configtest
Bạn sẽ nhận được kết quả sau:
Mã:
Cú pháp OK
Tiếp theo, hãy bật tệp cấu hình máy chủ ảo Apache và các mô-đun cần thiết bằng lệnh sau:
Mã:
a2ensite ampache
a2enmod expires rewrite
Cuối cùng, hãy khởi động lại dịch vụ Apache để áp dụng các thay đổi:
Mã:
systemctl reload apache2
Tại thời điểm này, Ampache đã được cài đặt và cấu hình. Bây giờ bạn có thể tiến hành bước tiếp theo.

Bảo mật Ampache bằng Let's Encrypt SSL​

Bạn nên bảo mật trang web Ampache của mình bằng Let's Encrypt SSL.

Trước tiên, hãy cài đặt ứng dụng khách Certbot để tải xuống và cài đặt Let's Encrypt SSL cho trang web của bạn.
Mã:
apt-get install certbot python3-certbot-apache -y
Sau khi cài đặt, hãy chạy lệnh sau để cài đặt Let's Encrypt SSL cho trang web của bạn.
Mã:
certbot --apache -d ampache.linuxbuz.com
Bạn sẽ được yêu cầu cung cấp địa chỉ email và chấp nhận điều khoản dịch vụ như hiển thị bên dưới:
Mã:
Lưu nhật ký gỡ lỗi vào /var/log/letsencrypt/letsencrypt.logCác plugin đã chọn: Authenticator apache, Installer apacheNhập địa chỉ email (dùng để gia hạn khẩn cấp và thông báo bảo mật) (Nhập 'c' đểhủy): [emailprotected]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Vui lòng đọc Điều khoản dịch vụ tạihttps://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. Bạn phảiđồng ý để đăng ký với máy chủ ACME tạihttps://acme-v02.api.letsencrypt.org/directory- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(A)gree/(C)ancel: A- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Bạn có sẵn lòng chia sẻ địa chỉ email của mình với Electronic Frontier Foundation, đối tác sáng lập của dự án Let's Encrypt và tổ chức phi lợi nhuận phát triển Certbot không? Chúng tôi muốn gửi cho bạn email về công việc của chúng tôimã hóa web, tin tức EFF, các chiến dịch và các cách hỗ trợ tự do kỹ thuật số.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(C)ó/(K)ó: CNhận chứng chỉ mớiThực hiện các thử thách sau:Thử thách http-01 cho ampache.linuxbuz.comĐang chờ xác minh...Đang dọn dẹp các thử tháchĐã tạo một vhost SSL tại /etc/apache2/sites-available/ampache-le-ssl.confĐã bật mô-đun Apache socache_shmcbĐã bật mô-đun Apache sslTriển khai chứng chỉ tới VirtualHost /etc/apache2/sites-available/ampache-le-ssl.confĐã bật trang web khả dụng: /etc/apache2/sites-available/ampache-le-ssl.conf
Tiếp theo, bạn sẽ cần chọn có chuyển hướng lưu lượng HTTP sang HTTPS hay không như hiển thị bên dưới:
Mã:
Vui lòng chọn có chuyển hướng lưu lượng HTTP sang HTTPS, xóa quyền truy cập HTTP.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -1: Không chuyển hướng - Không thực hiện thêm bất kỳ thay đổi nào đối với cấu hình máy chủ web.2: Chuyển hướng - Chuyển hướng tất cả các yêu cầu đến quyền truy cập HTTPS an toàn. Chọn tùy chọn này chocác trang web mới hoặc nếu bạn tin tưởng rằng trang web của mình hoạt động trên HTTPS. Bạn có thể hoàn tácthay đổi này bằng cách chỉnh sửa cấu hình máy chủ web của mình.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Chọn số thích hợp [1-2] rồi [enter] (nhấn 'c' để hủy): 2
Nhập 2 và nhấn Enter để tiếp tục. Sau khi quá trình cài đặt hoàn tất, bạn sẽ nhận được kết quả sau:
Mã:
Chuyển hướng vhost trong /etc/apache2/sites-enabled/ampache.conf sang ssl vhost trong /etc/apache2/sites-available/ampache-le-ssl.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Xin chúc mừng! Bạn đã bật thành công https://ampache.linuxbuz.comBạn nên kiểm tra cấu hình của mình tại:https://www.ssllabs.com/ssltest/analyze.html?d=ampache.linuxbuz.com- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -LƯU Ý QUAN TRỌNG: - Xin chúc mừng! Chứng chỉ và chuỗi của bạn đã được lưu tại: /etc/letsencrypt/live/ampache.linuxbuz.com/fullchain.pem Tệp khóa của bạn đã được lưu tại: /etc/letsencrypt/live/ampache.linuxbuz.com/privkey.pem Chứng chỉ của bạn sẽ hết hạn vào ngày 29-07-2020. Để có phiên bản mới hoặc đã chỉnh sửa của chứng chỉ này trong tương lai, chỉ cần chạy lại certbot với tùy chọn "certonly". Để gia hạn không tương tác *tất cả* các chứng chỉ của bạn, hãy chạy "certbot renew" - Thông tin đăng nhập tài khoản của bạn đã được lưu trong thư mục cấu hình Certbot của bạn tại /etc/letsencrypt. Bây giờ bạn nên sao lưu an toàn thư mục này. Thư mục cấu hình này cũng sẽ chứa các chứng chỉ và khóa riêng do Certbot thu được, do đó, việc sao lưu thường xuyên thư mục này là lý tưởng. - Nếu bạn thích Certbot, vui lòng cân nhắc hỗ trợ công việc của chúng tôi bằng cách: Quyên góp cho ISRG / Let's Encrypt: https://letsencrypt.org/donate Quyên góp cho EFF: https://eff.org/donate-le
Tiếp theo, hãy kiểm tra tính năng tự động gia hạn của chứng chỉ Let's Encrypt bằng lệnh sau:
Mã:
certbot renew --dry-run
Nếu thử nghiệm thành công, bạn sẽ nhận được kết quả sau:
Mã:
** CHẠY THỬ: mô phỏng 'certbot renew' gần đến ngày hết hạn chứng chỉ** (Các chứng chỉ thử nghiệm bên dưới chưa được lưu.)Xin chúc mừng, tất cả các lần gia hạn đều thành công. Các chứng chỉ sau đã được gia hạn: /etc/letsencrypt/live/ampache.linuxbuz.com/fullchain.pem (thành công)** CHẠY THỬ: mô phỏng 'certbot renew' gần đến ngày hết hạn chứng chỉ** (Các chứng chỉ kiểm tra ở trên chưa được lưu.)

Giao diện web Access Ampache​

Trang web Ampache của bạn hiện đã được bảo mật bằng Let's Encrypt SSL. Tiếp theo, hãy mở trình duyệt web của bạn và nhập URL https://ampache.linuxbuz.com. Bạn sẽ được chuyển hướng đến trang sau:



Chọn ngôn ngữ của bạn và nhấp vào nút Bắt đầu Cấu hình. Bạn sẽ thấy trang sau:



Đảm bảo rằng tất cả các tiện ích mở rộng PHP bắt buộc đã được cài đặt, sau đó nhấp vào nút Tiếp tục. Bạn sẽ thấy trang sau:



Cung cấp thông tin chi tiết về cơ sở dữ liệu của bạn, bỏ chọn Create Database, chọn Create Tables, bỏ chọn Create Database Users và nhấp vào nút Insert Database. Bạn sẽ thấy trang sau:





Cung cấp thông tin chi tiết về cơ sở dữ liệu của bạn, chọn ffmpeg và nhấp vào Create Config. Bạn sẽ thấy trang sau:



Cung cấp tên người dùng, mật khẩu quản trị viên của bạn và nhấp vào nút Create Account. Bạn sẽ thấy trang sau:



Nhấp vào nút Update Now để cập nhật tất cả các gói bắt buộc. Bạn sẽ thấy trang sau:



Nhấp vào liên kết Return to main page. Bạn sẽ thấy trang sau:



Cung cấp tên người dùng, mật khẩu quản trị viên và nhấp vào nút Đăng nhập. Bạn sẽ thấy bảng điều khiển Ampache trong trang sau:


Kết luận​

Xin chúc mừng! Bạn đã cài đặt và bảo mật Ampache thành công trên máy chủ Ubuntu 20.04. Bây giờ bạn có thể tạo danh mục mới, tải nhạc lên và phát chúng qua internet.
 
Back
Bên trên