Ampache je bezplatný, open-source a webový software, který vám umožňuje hostovat váš vlastní hudební streamovací server. S Ampache máte přístup ke své hudbě a videu přes internet. Hudbu můžete prohlížet, upravovat a přehrávat prostřednictvím webového prohlížeče nebo jakéhokoli klienta pro streamování médií.
Funkce
- Výkonné rozhraní API a streamování do libovolného klienta
- Flexibilní katalogy a přizpůsobení
- Moderní webový přehrávač HTML5
- Podporujte různé metody autorizace, jako je MySQL, LDAP, HTTP a PAM
- Kompatibilita s jakýmkoli klientem Subsonic
V tomto tutoriálu se naučíme, jak nastavit hudební streamovací server Ampache na Ubuntu 20.04.
Předpoklady
- Server se systémem Ubuntu 20.04.
- Na vašem serveru je nastaveno heslo uživatele root.
Začínáme
Než začnete, je dobré aktualizovat balíček vašeho systému na nejnovější verzi. Můžete je aktualizovat pomocí následujícího příkazu:
apt-get update -y
apt-get upgrade -y
Jakmile jsou všechny balíčky aktualizovány, restartujte systém, aby se změny projevily.
Instalovat LAMP Server
Ampache běží na webovém serveru, napsaném v PHP a používá MySQL/MariaDB k ukládání svých dat. Budete tedy muset do svého systému nainstalovat Apache, MariaDB, PHP a další požadovaná rozšíření PHP. Můžete je nainstalovat spuštěním následujícího příkazu:
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
Jakmile jsou všechny balíčky nainstalovány, otevřete soubor php.ini a upravte některá nastavení:
nano /etc/php/7.4/apache2/php.ini
Změňte následující hodnoty:
upload_max_filesize = 100M post_max_size = 100M date.timezone = Asia/Kolkata
Po dokončení uložte a zavřete soubor. Poté restartujte službu Apache, abyste provedli změny:
systemctl restart apache2
Konfigurace databáze MariaDB
Ve výchozím nastavení není MariaDB zabezpečena. Můžete jej zabezpečit spuštěním následujícího skriptu:
mysql_secure_installation
Odpovězte na všechny otázky, jak je uvedeno níže:
Enter current password for root (enter for none): Set root password? [Y/n] Y New password: Re-enter new password: Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
Jakmile je MariaDB zabezpečená, přihlaste se do prostředí MariaDB pomocí následujícího příkazu:
mysql -u root -p
Zadejte své root heslo MariaDB a vytvořte databázi a uživatele pro Ampache pomocí následujícího příkazu:
MariaDB [(none)]> CREATE DATABASE ampachedb;
MariaDB [(none)]> CREATE USER 'ampache'@'localhost' IDENTIFIED BY 'password';
Dále udělte všechna oprávnění databázi Ampache pomocí následujícího příkazu:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON ampachedb.* TO 'ampache'@'localhost';
Dále vyprázdněte oprávnění a ukončete prostředí MariaDB pomocí následujícího příkazu:
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
Stáhnout Ampache
Nejnovější verzi Ampache si můžete stáhnout pomocí následujícího příkazu:
wget https://github.com/ampache/ampache/releases/download/4.1.1/ampache-4.1.1_all.zip
Po dokončení stahování rozbalte stažený soubor do webového kořenového adresáře Apache:
unzip ampache-4.1.1_all.zip -d /var/www/html/ampache
Dále změňte vlastnictví adresáře Ampache na www-data:
chown -R www-data:www-data /var/www/html/ampache
Dále změňte adresář na ampache a přejmenujte požadovaný soubor .htaccess.
cd /var/www/html/ampache
mv rest/.htaccess.dist rest/.htaccess
mv play/.htaccess.dist play/.htaccess
mv channel/.htaccess.dist channel/.htaccess
Dále vytvořte adresář pro ukládání hudebních souborů a změňte vlastnictví na www-data:
mkdir -p /data/Music
chown www-data:www-data /data/Music
Jakmile budete hotovi, můžete přejít k dalšímu kroku.
Konfigurovat Apache pro Ampache
Dále budete muset vytvořit nový konfigurační soubor virtuálního hostitele Apache pro Ampache. Můžete jej vytvořit pomocí následujícího příkazu:
nano /etc/apache2/sites-available/ampache.conf
Přidejte následující řádky:
<VirtualHost *:80> ServerName ampache.linuxbuz.com DocumentRoot /var/www/html/ampache <Directory /var/www/html/ampache/> AllowOverride All Require all granted </Directory> RewriteEngine on CustomLog /var/log/apache2/ampache.access.log common ErrorLog /var/log/apache2/ampache.error.log </VirtualHost>
Po dokončení uložte a zavřete soubor. Poté pomocí následujícího příkazu zkontrolujte konfigurační soubor Apache, zda neobsahuje nějakou chybu:
apachectl configtest
Měli byste získat následující výstup:
Syntax OK
Dále povolte konfigurační soubor virtuálního hostitele Apache a požadované moduly pomocí následujícího příkazu:
a2ensite ampache
a2enmod expires rewrite
Nakonec restartujte službu Apache, aby se změny projevily:
systemctl reload apache2
V tomto okamžiku je Ampache nainstalován a nakonfigurován. Nyní můžete přejít k dalšímu kroku.
Bezpečný Ampache s Let's Encrypt SSL
Doporučuje se zabezpečit váš web Ampache pomocí Let's Encrypt SSL.
Nejprve nainstalujte klienta Certbot a stáhněte a nainstalujte Let's Encrypt SSL pro váš web.
apt-get install certbot python3-certbot-apache -y
Po instalaci spusťte následující příkaz a nainstalujte Let's Encrypt SSL pro váš web.
certbot --apache -d ampache.linuxbuz.com
Budete požádáni, abyste uvedli svou e-mailovou adresu a přijali podmínky služby, jak je uvedeno níže:
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator apache, Installer apache Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): [email protected] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server at https://acme-v02.api.letsencrypt.org/directory - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (A)gree/(C)ancel: A - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y Obtaining a new certificate Performing the following challenges: http-01 challenge for ampache.linuxbuz.com Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/apache2/sites-available/ampache-le-ssl.conf Enabled Apache socache_shmcb module Enabled Apache ssl module Deploying Certificate to VirtualHost /etc/apache2/sites-available/ampache-le-ssl.conf Enabling available site: /etc/apache2/sites-available/ampache-le-ssl.conf
Dále budete muset zvolit, zda chcete přesměrovat provoz HTTP na HTTPS, jak je znázorněno níže:
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: No redirect - Make no further changes to the webserver configuration. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Zadejte 2 a pokračujte stisknutím klávesy Enter. Po dokončení instalace byste měli získat následující výstup:
Redirecting vhost in /etc/apache2/sites-enabled/ampache.conf to ssl vhost in /etc/apache2/sites-available/ampache-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://ampache.linuxbuz.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=ampache.linuxbuz.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/ampache.linuxbuz.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/ampache.linuxbuz.com/privkey.pem Your cert will expire on 2020-07-29. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" - Your account credentials have been saved in your Certbot configuration directory at /etc/letsencrypt. You should make a secure backup of this folder now. This configuration directory will also contain certificates and private keys obtained by Certbot so making regular backups of this folder is ideal. - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Dále otestujte automatické obnovení certifikátu Let's Encrypt pomocí následujícího příkazu:
certbot renew --dry-run
Pokud byl test úspěšný, měli byste získat následující výstup:
** DRY RUN: simulating 'certbot renew' close to cert expiry ** (The test certificates below have not been saved.) Congratulations, all renewals succeeded. The following certs have been renewed: /etc/letsencrypt/live/ampache.linuxbuz.com/fullchain.pem (success) ** DRY RUN: simulating 'certbot renew' close to cert expiry ** (The test certificates above have not been saved.)
Přístup k webovému rozhraní Ampache
Váš web Ampache je nyní zabezpečen pomocí Let's Encrypt SSL. Dále otevřete webový prohlížeč a zadejte adresu URL https://ampache.linuxbuz.com. Budete přesměrováni na následující stránku:
Vyberte jazyk a klikněte na tlačítko Start Konfigurace knoflík. Měli byste vidět následující stránku:
Ujistěte se, že jsou nainstalována všechna požadovaná rozšíření PHP, a poté klikněte na Pokračovat knoflík. Měli byste vidět následující stránku:
Zadejte podrobnosti o databázi, zrušte zaškrtnutí políčka Vytvořit databázi, zaškrtněte políčko Vytvořit tabulky, zrušte zaškrtnutí políčka Vytvořit uživatele databáze a klikněte na Vložit Databáze knoflík. Měli byste vidět následující stránku:
Zadejte podrobnosti o databázi, vyberte ffmpeg a klikněte na Vytvořit Konfigurovat . Měli byste vidět následující stránku:
Zadejte své uživatelské jméno a heslo správce a klikněte na Vytvořit Účet knoflík. Měli byste vidět následující stránku:
Klikněte na Aktualizovat Nyní tlačítko pro aktualizaci všech požadovaných balíčků. Měli byste vidět následující stránku:
Klikněte na Návrat na hlavní stránku odkaz. Měli byste vidět následující stránku:
Zadejte své administrátorské uživatelské jméno, heslo a klikněte na Přihlásit knoflík. Na následující stránce byste měli vidět řídicí panel Ampache:
Závěr
Gratulujeme! úspěšně jste nainstalovali a zabezpečili Ampache na serveru Ubuntu 20.04. Nyní můžete vytvořit svůj nový katalog, nahrát hudbu a přehrávat ji přes internet.