So installieren Sie den Ampache Music Streaming Server unter Ubuntu 20.04

Ampache ist eine freie, quelloffene und webbasierte Software, mit der Sie Ihren eigenen Musik-Streaming-Server hosten können. Mit Ampache können Sie über das Internet auf Ihre Musik und Videos zugreifen. Sie können Ihre Musik über einen Webbrowser oder einen beliebigen Media-Streaming-Client anzeigen, bearbeiten und abspielen.

Eigenschaften

  • Leistungsstarke API und Streaming zu jedem Client
  • Flexible Kataloge und Anpassung
  • Moderner HTML5-Webplayer
  • Unterstützung verschiedener Autorisierungsmethoden wie MySQL, LDAP, HTTP und PAM
  • Kompatibilität mit jedem Subsonic-Client

In diesem Tutorial werden wir lernen, wie man den Ampache-Musik-Streaming-Server unter Ubuntu 20.04 einrichtet.

Voraussetzungen

  • Einen Server, auf dem Ubuntu 20.04 läuft.
  • Ein Root-Passwort wird auf Ihrem Server eingerichtet.

Erste Schritte

Bevor Sie beginnen, ist es eine gute Idee, das Paket Ihres Systems auf die neueste Version zu aktualisieren. Sie können sie mit dem folgenden Befehl aktualisieren:

apt-get update -y
apt-get upgrade -y

Sobald alle Pakete aktualisiert sind, starten Sie Ihr System neu, um die Änderungen zu übernehmen.

LAMP-Server installieren

Ampache läuft auf dem Webserver, ist in PHP geschrieben und verwendet MySQL/MariaDB zur Speicherung seiner Daten. Sie müssen also Apache, MariaDB, PHP und andere erforderliche PHP-Erweiterungen in Ihrem System installieren. Sie können sie installieren, indem Sie den folgenden Befehl ausführen:

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

Wenn alle Pakete installiert sind, öffnen Sie die Datei php.ini und passen Sie einige Einstellungen an:

nano /etc/php/7.4/apache2/php.ini

Ändern Sie die folgenden Werte:

upload_max_filesize = 100M
post_max_size = 100M
date.timezone = Asia/Kolkata

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Starten Sie dann den Apache-Dienst neu, um die Änderungen zu implementieren:

systemctl restart apache2

Konfigurieren Sie die MariaDB-Datenbank

Standardmäßig ist MariaDB nicht gesichert. Sie können es sichern, indem Sie das folgende Skript ausführen:

mysql_secure_installation

Beantworten Sie alle Fragen wie unten gezeigt:

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

Sobald die MariaDB gesichert ist, loggen Sie sich mit folgendem Befehl in die MariaDB-Shell ein:

mysql -u root -p

Geben Sie Ihr MariaDB-Root-Passwort an und erstellen Sie eine Datenbank und einen Benutzer für Ampache mit folgendem Befehl:

MariaDB [(none)]> CREATE DATABASE ampachedb;
MariaDB [(none)]> CREATE USER 'ampache'@'localhost' IDENTIFIED BY 'password';

Als nächstes gewähren Sie alle Privilegien für die Ampache-Datenbank mit dem folgenden Befehl:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON ampachedb.* TO 'ampache'@'localhost';

Als nächstes flushen Sie die Privilegien und verlassen die MariaDB-Shell mit dem folgenden Befehl:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Ampache herunterladen

Mit dem folgenden Befehl können Sie die neueste Version von Ampache herunterladen:

wget https://github.com/ampache/ampache/releases/download/4.1.1/ampache-4.1.1_all.zip

Sobald der Download abgeschlossen ist, entpacken Sie die heruntergeladene Datei in das Apache-Web-Stammverzeichnis:

unzip ampache-4.1.1_all.zip -d /var/www/html/ampache

Ändern Sie als Nächstes den Eigentümer des Ampache-Verzeichnisses in www-data:

chown -R www-data:www-data /var/www/html/ampache

Ändern Sie als nächstes das Verzeichnis in Ampache und benennen Sie die erforderliche .htaccess-Datei um.

cd /var/www/html/ampache
mv rest/.htaccess.dist rest/.htaccess
mv play/.htaccess.dist play/.htaccess
mv channel/.htaccess.dist channel/.htaccess

Als nächstes erstellen Sie ein Verzeichnis zum Speichern von Musikdateien und ändern Sie den Besitzer in www-data:

mkdir -p /data/Music
chown www-data:www-data /data/Music

Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Konfigurieren Sie Apache für Ampache

Als nächstes müssen Sie eine neue Apache-Konfigurationsdatei für virtuelle Hosts für Ampache erstellen. Sie können sie mit dem folgenden Befehl erstellen:

nano /etc/apache2/sites-available/ampache.conf

Fügen Sie die folgenden Zeilen hinzu:

<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>

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Überprüfen Sie dann die Apache-Konfigurationsdatei mit dem folgenden Befehl auf Fehler:

apachectl configtest

Sie sollten die folgende Ausgabe erhalten:

Syntax OK

Als nächstes aktivieren Sie die Konfigurationsdatei des virtuellen Apache-Hosts und die erforderlichen Module mit dem folgenden Befehl:

a2ensite ampache
a2enmod expires rewrite

Starten Sie schließlich den Apache-Dienst neu, um die Änderungen zu übernehmen:

systemctl reload apache2

Zu diesem Zeitpunkt ist Ampache installiert und konfiguriert. Sie können nun mit dem nächsten Schritt fortfahren.

Sicherer Ampache mit Let’s Encrypt SSL

Es wird empfohlen, Ihre Ampache-Website mit Let’s Encrypt SSL zu sichern.

Installieren Sie zunächst den Certbot-Client, um Let’s Encrypt SSL für Ihre Website herunterzuladen und zu installieren.

apt-get install certbot python3-certbot-apache -y

Nach der Installation führen Sie den folgenden Befehl aus, um Let’s Encrypt SSL für Ihre Website zu installieren.

certbot --apache -d ampache.linuxbuz.com

Sie werden gebeten, Ihre E-Mail-Adresse einzugeben und die Dienstzeit wie unten gezeigt zu akzeptieren:

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

Als nächstes müssen Sie wählen, ob HTTP-Verkehr wie unten gezeigt zu HTTPS umgeleitet werden soll oder nicht:

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

Geben Sie 2 ein und drücken Sie Enter, um fortzufahren. Sobald die Installation abgeschlossen ist, sollten Sie die folgende Ausgabe erhalten:

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

Testen Sie als Nächstes die automatische Erneuerung des Let’s Encrypt-Zertifikats mit dem folgenden Befehl:

certbot renew --dry-run

Wenn der Test erfolgreich war, sollten Sie die folgende Ausgabe erhalten:

** 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.)

Zugriff auf die Ampache-Webschnittstelle

Ihre Ampache-Website ist jetzt mit Let’s Encrypt SSL gesichert. Öffnen Sie als nächstes Ihren Webbrowser und geben Sie die URL https://ampache.linuxbuz.com ein. Sie werden auf die folgende Seite weitergeleitet:

Sprache wählen

Wählen Sie Ihre Sprache und klicken Sie auf die Schaltfläche Konfiguration starten. Sie sollten die folgende Seite sehen:

Voraussetzungen überprüfen

Stellen Sie sicher, dass alle erforderlichen PHP-Erweiterungen installiert sind, und klicken Sie dann auf die Schaltfläche Weiter. Sie sollten die folgende Seite sehen:

Datenbank-Konfiguration

Geben Sie Ihre Datenbankdetails an, deaktivieren Sie Datenbank erstellen, aktivieren Sie Tabellen erstellen, deaktivieren Sie Datenbankbenutzer erstellen und klicken Sie auf die Schaltfläche Datenbank einfügen. Sie sollten die folgende Seite sehen:

Konfigurationsdatei erzeugen

Geben Sie Ihre Datenbankangaben ein, wählen Sie ffmpeg und klicken Sie auf die Schaltfläche Create Config. Sie sollten die folgende Seite sehen:

Admin-Konto erstellen

Geben Sie Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf die Schaltfläche Create Account. Sie sollten die folgende Seite sehen:

Jetzt aktualisieren

Klicken Sie auf die Schaltfläche Jetzt aktualisieren, um alle erforderlichen Pakete zu aktualisieren. Sie sollten die folgende Seite sehen:

Ampache-Update

Klicken Sie auf den Link Zurück zur Hauptseite. Sie sollten die folgende Seite sehen:

Admin-Anmeldung

Geben Sie Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf die Schaltfläche Login. Sie sollten das Ampache-Dashboard auf der folgenden Seite sehen:

Ampache dashboard

Schlussfolgerung

Herzlichen Glückwunsch! Sie haben Ampache erfolgreich auf dem Ubuntu 20.04 Server installiert und gesichert. Sie können nun Ihren neuen Katalog erstellen, Ihre Musik hochladen und über das Internet abspielen.

Das könnte Dich auch interessieren …