GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren Sie Subsonic Media Server unter Ubuntu 18.04, 19.04 und aktivieren HTTPS

Dieses Tutorial zeigt Ihnen, wie Sie den Subsonic-Medienserver unter Ubuntu 18.04, 19.04 installieren und einen Reverse-Proxy für Subsonic mit Nginx oder Apache-Webserver einrichten und dann HTTPS aktivieren.

Subsonic ist ein kostenloser (wie in Free Bear), webbasierter Medienstreamer, der in Java geschrieben ist und für Linux, MacOS und Windows verfügbar ist. Mit Subsonic können Sie Ihre Musik von Ihrem Heimcomputer oder jedem öffentlich zugänglichen Computer streamen und Ihre Musik von überall mit einem Webbrowser anhören, sodass Sie Ihre Musik nicht mit einer Dateisynchronisierungsanwendung wie resilio sync oder Syncthing synchronisieren müssen.

Unterschallfunktionen

  • Unterstützt MP3, OGG, AAC und jedes andere Audio- oder Videoformat, das über HTTP gestreamt wird.
  • Funktioniert mit jedem netzwerkfähigen Mediaplayer wie Winamp, iTunes, XMMS, VLC, MusicMatch und Windows Media Player
  • Albumcover-Anzeige, On-the-Fly-Wiedergabelisten, On-the-Fly-Transcodierung
  • Mobile App für Android, iPhone, Windows Phone und Desktop-App für Mac, Windows und Chrome. Die Android-App unterstützt die Offline-Wiedergabe.
  • Hören Sie sich Podcasts an, weisen Sie Bewertungen zu, fügen Sie Kommentare hinzu und erstellen Sie Wiedergabelisten.
  • Teilen Sie Ihre Musik mit Freunden und Familie.
  • Videos streamen (Premium-Funktion)
  • und mehr

So installieren Sie Subsonic Media Server auf Ubuntu 18.04, 19.04

Der Subsonic-Medienserver ist in Java geschrieben, daher müssen Sie die Java-Laufzeitumgebung installieren, um ihn auszuführen. Sie können die openjdk 8-Laufzeitumgebung mit dem folgenden Befehl installieren.

sudo apt update

sudo apt install openjdk-8-jre

Zum Zeitpunkt der Erstellung dieses Artikels ist Subsonic nicht mit Java 11 kompatibel. Wenn Sie zuvor Java 11 auf Ubuntu 18.04, 19.04 installiert haben, müssen Sie den folgenden Befehl ausführen, um die Standard-Java-Version auszuwählen.

sudo update-alternatives --config java

Geben Sie eine Zahl ein, um Java 8 als Standardversion auszuwählen.

Laden Sie als Nächstes das Subsonic-Deb-Paket mit dem folgenden Befehl herunter, der Version 6.1.5 herunterlädt. Sie können sich die neueste Version auf der Subsonic-Download-Seite ansehen. Wenn eine neue Version verfügbar ist, ersetzen Sie einfach 6.1.5 durch die neue Versionsnummer.

wget https://s3-eu-west-1.amazonaws.com/subsonic-public/download/subsonic-6.1.5.deb

Installieren Sie es mit dpkg .

sudo dpkg -i subsonic-6.1.5.deb

Nach der Installation wird der Subsonic-Daemon automatisch gestartet. Sie können den Status überprüfen mit:

systemctl status subsonic

Beispielausgabe:

● subsonic.service - LSB: Subsonic daemon
   Loaded: loaded (/etc/init.d/subsonic; bad; vendor preset: enabled)
   Active: active (running) since Fri 2018-12-02 08:03:27 UTC; 7min ago
     Docs: man:systemd-sysv-generator(8)
   CGroup: /system.slice/subsonic.service
           └─3316 java -Xmx150m -Dsubsonic.home=/var/subsonic -Dsubsonic.host=0

Wenn es nicht läuft, können Sie es manuell mit

starten
sudo systemctl start subsonic

Und aktivieren Sie den automatischen Start beim Systemstart.

sudo systemctl enable subsonic

Standardmäßig lauscht Subsonic auf 0.0.0.0:4040 , was bedeutet, dass Anfragen aus dem lokalen Netzwerk und dem Internet akzeptiert werden.

Wenn Sie Subsonic auf einem lokalen Ubuntu-Computer installiert haben, geben Sie die folgende Adresse in den Browser ein, um die Subsonic-Weboberfläche aufzurufen.

http://localhost:4040

Wenn Sie Subsonic auf einem mit dem Internet verbundenen Ubuntu-Server installiert haben, geben Sie die folgende Adresse in den Browser ein, um die Subsonic-Weboberfläche aufzurufen.

http://your-server-ip:4040

Wenn Sie Java 11 unter Ubuntu verwenden, wird der folgende Fehler angezeigt. Die Lösung ist die Verwendung von Java 8.

Bitte beachten Sie, dass Sie, wenn Sie den Subsonic-Medienserver auf einem Heimserver installieren und von einem externen Netzwerk darauf zugreifen möchten, die Portweiterleitung in Ihrem Router konfigurieren müssen. Wenn Sie von Ihrem ISP eine dynamische IP-Adresse erhalten haben, sollten Sie auch dynamisches DNS einrichten.

Der Standard-Benutzername und das Passwort sind admin . Nach der Anmeldung sollten Sie zu Einstellungen> Benutzer gehen um das Admin-Passwort zu ändern.

Fügen Sie auch Medienordner auf der Einstellungsseite hinzu und klicken Sie auf die Schaltfläche Speichern. Beachten Sie, dass der Ordner für den Benutzer zugänglich sein muss, unter dem Subsonic ausgeführt wird. Nachdem der Ordner hinzugefügt wurde, klicken Sie auf die Schaltfläche „Medienordner jetzt scannen“ und Sie können Musik auf der Indexseite anhören.

Benutzer ändern

Standardmäßig wird der Subsonic-Prozess als Root-Benutzer ausgeführt. Aus Sicherheitsgründen sollten Sie es auf einen normalen Benutzer ändern, was durch Bearbeiten des /etc/default/subsonic erreicht wird Datei.

sudo nano /etc/default/subsonic

Suchen Sie die folgende Zeile:

SUBSONIC_USER=root

Ändern Sie root auf Ihr eigenes Benutzerkonto wie linuxbabe .

SUBSONIC_USER=linuxbabe

Speichern und schließen Sie die Datei. Starten Sie dann den Subsonic-Daemon neu, damit die Änderung wirksam wird.

sudo systemctl restart subsonic

Nginx Reverse Proxy für Subsonic einrichten

Wenn Sie einen Domainnamen für die Subsonic-Webschnittstelle verwenden möchten, können Sie den Nginx-Reverse-Proxy einrichten. Installieren Sie Nginx unter Ubuntu 18.04/19.04 mit dem folgenden Befehl.

sudo apt install nginx

Erstellen Sie dann eine Serverblockdatei für den Proxy.

sudo nano /etc/nginx/conf.d/subsonic-proxy.conf

Fügen Sie den folgenden Text in die Datei ein. Ersetzen Sie subsonic.your-domain.com mit eigenem Domainnamen. Der Standort-Block {…} stellt Nginx-Proxy-Anfragen an den Subsonic-Daemon. Vergessen Sie nicht, einen A-Eintrag für die Subdomain festzulegen.

server {
        listen 80;
        server_name subsonic.your-domain.com;

        location / {
                proxy_pass http://127.0.0.1:4040;
                proxy_set_header Host $http_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;
        }
}

Speichern und schließen Sie die Datei. Testen Sie dann die Nginx-Konfiguration.

sudo nginx -t

Wenn der Test erfolgreich ist, laden Sie Nginx neu, damit die neue Konfiguration wirksam wird.

sudo systemctl reload nginx

Jetzt wird der Subsonic-Medienserver hinter Nginx gestellt und Sie können mit einem Domainnamen (subsonic.your-domain.com) auf die Subsonic-Web-UI zugreifen )

HTTPS mit Nginx aktivieren

Um eine sichere HTTPS-Verbindung zu aktivieren, können Sie ein kostenloses TLS/SSL-Zertifikat von Let’s Encrypt beziehen und installieren. Installieren Sie den Client Let’s Encrypt (certbot) mit:

sudo apt install software-properties-common
sudo add-apt-repository ppa:certbot/certbot
sudo apt install certbot python3-certbot-nginx

Führen Sie dann den folgenden Befehl aus, der das Certbot Nginx-Plugin verwendet, um das TLS-Zertifikat automatisch zu erhalten und zu installieren. Roten Text durch Ihre tatsächlichen Daten ersetzen.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email your-email-address --domain subsonic.your-domain.com

Innerhalb weniger Sekunden sollten Sie eine Glückwunschnachricht wie unten sehen, was bedeutet, dass das Zertifikat erfolgreich erhalten wurde.

Gehen Sie erneut zur Webschnittstelle Ihres Subsonic-Medienservers, Sie werden feststellen, dass die HTTP-Verbindung automatisch umgeleitet wird Sichere HTTPS-Verbindung. Als nächstes müssen wir die Nginx-Konfigurationsdatei ändern.

sudo nano /etc/nginx/conf.d/subsonic-proxy.conf

Es gibt jetzt zwei Server-{…}-Blöcke, da Certbot automatisch den SSL-Serverblock konfiguriert hat (listen 443 ssl). Fügen Sie im SSL-Serverblock die folgende Zeile im Block location / {…} hinzu.

proxy_redirect http:// https://;

Diese Zeile leitet jede HTTP-Serverantwort auf die https-Serverantwort um, was erforderlich ist, um die Subsonic-Einstellungsseite richtig anzuzeigen. Speichern und schließen Sie die Datei. Nginx-Konfiguration testen und neu laden.

sudo nginx -t

sudo systemctl reload nginx

Apache Reverse Proxy einrichten

Wenn Sie Apache Nginx vorziehen, installieren Sie es mit:

sudo apt install apache2

Um Apache als Reverse-Proxy zu verwenden, müssen wir den proxy aktivieren Module und das Header-Modul.

sudo a2enmod proxy proxy_http headers

Erstellen Sie dann eine virtuelle Hostdatei für den Subsonic-Medienserver.

sudo nano /etc/apache2/sites-available/subsonic-proxy.conf

Fügen Sie die folgenden Konfigurationen in die Datei ein. Ersetzen Sie subsonic.your-domain.com mit Ihrem tatsächlichen Domainnamen. Vergessen Sie nicht, einen DNS-A-Eintrag für diese Subdomain zu erstellen.

<VirtualHost *:80>
   ServerName subsonic.your-domain.com
   ErrorDocument 404 /404.html
   DocumentRoot /var/www
   ProxyPass / http://localhost:4040/
   ProxyPassReverse / http://localhost:4040/
   Header always unset X-Frame-Options
</VirtualHost>

Speichern und schließen Sie die Datei. Aktivieren Sie dann diesen virtuellen Host.

sudo a2ensite subsonic-proxy.conf

Starten Sie Apache neu

sudo systemctl restart apache2

Jetzt können Sie mit einem Domainnamen auf die Subsonic-Web-Benutzeroberfläche zugreifen.

HTTPS mit Apache aktivieren

Um eine sichere HTTPS-Verbindung zu aktivieren, können Sie ein kostenloses TLS/SSL-Zertifikat von Let’s Encrypt beziehen und installieren. Installieren Sie den Client Let’s Encrypt (certbot) mit:

sudo apt-get install software-properties-common
sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt install certbot python3-certbot-apache

Besorgen und installieren Sie dann ein Zertifikat mit dem Apache-Plug-in.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --must-staple --email your-email-address -d subsonic.your-domain.com

Innerhalb weniger Sekunden sollten Sie eine Glückwunschnachricht wie unten sehen, was bedeutet, dass das Zertifikat erfolgreich erhalten wurde.

Ihr TLS-Zertifikat wird automatisch installiert. Gehen Sie erneut zur Weboberfläche Ihres Subsonic-Medienservers. Sie werden feststellen, dass die HTTP-Verbindung automatisch auf eine sichere HTTPS-Verbindung umgeleitet wird.

Ich hoffe, dieses Tutorial hat Ihnen geholfen, den Subsonic-Medienserver unter Ubuntu 18.04 und Ubuntu 19.04 zu installieren. Wenn Sie diesen Beitrag nützlich fanden, abonnieren Sie wie immer unseren kostenlosen Newsletter. Sie können uns auch auf Google+, Twitter folgen oder unsere Facebook-Seite mit „Gefällt mir“ markieren.


Ubuntu
  1. So installieren Sie Plex Media Server unter Ubuntu 20.04

  2. So installieren und konfigurieren Sie einen NFS-Server unter Ubuntu 20.04

  3. So installieren und konfigurieren Sie VNC unter Ubuntu 20.04

  4. So installieren und konfigurieren Sie den universellen Medienserver in Ubuntu 20.04

  5. So installieren und richten Sie Gerbera Media Server in Ubuntu / Debian ein

So installieren Sie Jellyfin Media Server auf Ubuntu 20.04 LTS Server/Desktop

So installieren Sie den Subsonic Media Server unter Ubuntu 16.04

So installieren Sie Plex Media Server auf Ubuntu 20.04 LTS Server/Desktop

So installieren Sie Tomcat 7 Server auf Ubuntu, Debian und LinuxMint

So installieren Sie den Subsonic Media Server unter Ubuntu 16.04 LTS

So installieren Sie Plex Media Server unter Ubuntu 22.04