GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare Subsonic Media Server su Ubuntu 18.04, 19.04 e abilitare HTTPS

Questo tutorial ti mostrerà come installare il server multimediale Subsonic su Ubuntu 18.04, 19.04 e come configurare un proxy inverso per Subsonic utilizzando il server Web Nginx o Apache, quindi abilitare HTTPS.

Subsonic è uno streamer multimediale gratuito (come in free bear) basato sul Web scritto in Java, disponibile per Linux, MacOS e Windows. Con Subsonic, puoi eseguire lo streaming della tua musica dal computer di casa o da qualsiasi computer di fronte al pubblico e ascoltare la tua musica da qualsiasi luogo con un browser web, così non devi sincronizzare la tua musica con un'applicazione di sincronizzazione file come resilio sync o Syncthing.

Caratteristiche subsoniche

  • Supporta MP3, OGG, AAC e qualsiasi altro formato audio o video che trasmette in streaming su HTTP.
  • Funziona con qualsiasi lettore multimediale abilitato alla rete, come Winamp, iTunes, XMMS, VLC, MusicMatch e Windows Media Player
  • Visualizzazione delle copertine degli album, playlist al volo, transcodifica al volo
  • App mobile per Android, iPhone, Windows Phone e app desktop per Mac, Windows e Chrome. L'app per Android supporta la riproduzione offline.
  • Ascolta i podcast, assegna valutazioni, aggiungi commenti e crea playlist.
  • Condividi la tua musica con amici e familiari.
  • Video in streaming (funzione premium)
  • e altro

Come installare Subsonic Media Server su Ubuntu 18.04, 19.04

Il server multimediale subsonico è scritto in Java, quindi è necessario installare l'ambiente di runtime Java per eseguirlo. Puoi installare l'ambiente di runtime openjdk 8 con il seguente comando.

sudo apt update

sudo apt install openjdk-8-jre

Al momento in cui scrivo, Subsonic non è compatibile con Java 11, se hai già installato Java 11 su Ubuntu 18.04, 19.04, devi eseguire il comando seguente per selezionare la versione Java predefinita.

sudo update-alternatives --config java

Digita un numero per selezionare Java 8 come versione predefinita.

Quindi, scarica il pacchetto Subsonic deb con il comando seguente, che scarica la versione 6.1.5. Puoi controllare l'ultima versione nella pagina di download di Subsonic. Se è disponibile una nuova versione, sostituisci semplicemente la 6.1.5 con il nuovo numero di versione.

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

Installalo con dpkg .

sudo dpkg -i subsonic-6.1.5.deb

Una volta installato, il demone Subsonic si avvierà automaticamente. Puoi verificarne lo stato con:

systemctl status subsonic

Esempio di output:

● 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

Se non è in esecuzione, puoi avviarlo manualmente con

sudo systemctl start subsonic

E abilita l'avvio automatico all'avvio del sistema.

sudo systemctl enable subsonic

Per impostazione predefinita, subsonico è in ascolto su 0.0.0.0:4040 , il che significa che accetta richieste dalla rete locale e da Internet.

Se hai installato Subsonic su un computer Ubuntu locale, digita il seguente indirizzo nel browser per visitare l'interfaccia web di Subsonic.

http://localhost:4040

Se hai installato Subsonic su un server Ubuntu con connessione a Internet, digita il seguente indirizzo nel browser per visitare l'interfaccia web di Subsonic.

http://your-server-ip:4040

Se usi Java 11 su Ubuntu, vedrai il seguente errore. La soluzione è utilizzare Java 8.

Si noti che se si installa il server multimediale Subsonic su un server domestico e si desidera accedervi da una rete esterna, sarà necessario configurare il port forwarding nel router. Se hai un indirizzo IP dinamico fornito dal tuo ISP, dovresti anche impostare il DNS dinamico.

Il nome utente e la password predefiniti sono admin . Dopo l'accesso dovresti andare su Impostazioni> Utenti per modificare la password amministratore.

Aggiungi anche le cartelle multimediali nella pagina delle impostazioni e fai clic sul pulsante Salva. Si noti che la cartella deve essere accessibile all'utente con cui Subsonic è in esecuzione. Dopo aver aggiunto la cartella, fai clic sul pulsante "Scansiona la cartella multimediale ora" e sarai in grado di ascoltare la musica nella pagina Indice.

Cambia l'utente

Per impostazione predefinita, il processo Subsonic viene eseguito come utente root. Per motivi di sicurezza dovresti cambiarlo in un utente normale, cosa che viene fatta modificando il /etc/default/subsonic file.

sudo nano /etc/default/subsonic

Trova la riga seguente:

SUBSONIC_USER=root

Cambia root con il tuo account utente come linuxbabe .

SUBSONIC_USER=linuxbabe

Salva e chiudi il file. Quindi riavvia il demone subsonico per rendere effettive le modifiche.

sudo systemctl restart subsonic

Configurazione di Nginx Reverse Proxy per Subsonic

Se desideri utilizzare un nome di dominio per l'interfaccia Web di Subsonic, puoi configurare il proxy inverso Nginx. Installa Nginx su Ubuntu 18.04/19.04 usando il comando seguente.

sudo apt install nginx

Quindi crea un file di blocco del server per il proxy.

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

Inserisci il seguente testo nel file. Sostituisci subsonic.your-domain.com con il tuo nome di dominio. Il blocco location {…} farà richieste proxy Nginx al demone Subsonic. Non dimenticare di impostare un record per il sottodominio.

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

Salva e chiudi il file. Quindi testa la configurazione di Nginx.

sudo nginx -t

Se il test ha esito positivo, ricarica Nginx per rendere effettiva la nuova configurazione.

sudo systemctl reload nginx

Ora il server multimediale subsonico è posizionato dietro Nginx e puoi accedere all'interfaccia utente Web di Subsonic utilizzando un nome di dominio (subsonic.your-domain.com )

Abilitazione HTTPS con Nginx

Per abilitare la connessione sicura HTTPS, puoi ottenere e installare un certificato TLS/SSL gratuito da Let's Encrypt. Installa il client Let's Encrypt (certbot) con:

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

Quindi emettere il comando seguente, che utilizza il plug-in Certbot Nginx per ottenere e installare automaticamente il certificato TLS. Sostituisci il testo rosso con i tuoi dati effettivi.

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

Entro pochi secondi, dovresti vedere un messaggio di congratulazioni come di seguito, il che significa che il certificato è stato ottenuto con successo.

Vai di nuovo all'interfaccia Web del tuo server multimediale Subsonic, scoprirai che la connessione HTTP viene reindirizzata automaticamente a Connessione sicura HTTPS. Successivamente, dobbiamo modificare il file di configurazione di Nginx.

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

Ora ci sono due blocchi server {…}, perché Certbot ha configurato automaticamente il blocco server SSL (ascolta 443 ssl). Nel blocco del server SSL, aggiungi la seguente riga nel blocco posizione / {…}.

proxy_redirect http:// https://;

Questa riga reindirizzerà qualsiasi risposta del server http alla risposta del server https, necessaria per visualizzare correttamente la pagina delle impostazioni di Subsonic. Salva e chiudi il file. Prova la configurazione di Nginx e ricarica.

sudo nginx -t

sudo systemctl reload nginx

Configurazione di Apache Reverse Proxy

Se preferisci Apache a Nginx, installalo con:

sudo apt install apache2

Per utilizzare Apache come proxy inverso, dobbiamo abilitare il proxy moduli e il modulo di intestazione.

sudo a2enmod proxy proxy_http headers

Quindi crea un file host virtuale per il server multimediale Subsonic.

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

Inserisci le seguenti configurazioni nel file. Sostituisci subsonic.your-domain.com con il tuo nome di dominio effettivo. Non dimenticare di creare un record DNS A per questo sottodominio.

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

Salva e chiudi il file. Quindi abilita questo host virtuale.

sudo a2ensite subsonic-proxy.conf

Riavvia Apache

sudo systemctl restart apache2

Ora puoi accedere all'interfaccia utente Web di Subsonic utilizzando un nome di dominio.

Abilitazione HTTPS con Apache

Per abilitare la connessione sicura HTTPS, puoi ottenere e installare un certificato TLS/SSL gratuito da Let's Encrypt. Installa il client Let's Encrypt (certbot) con:

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

Quindi ottieni e installa un certificato utilizzando il plug-in di Apache.

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

Entro pochi secondi, dovresti vedere un messaggio di congratulazioni come di seguito, il che significa che il certificato è stato ottenuto con successo.

Il tuo certificato TLS verrà installato automaticamente. Vai di nuovo all'interfaccia Web del tuo server multimediale Subsonic, scoprirai che la connessione HTTP viene automaticamente reindirizzata alla connessione protetta HTTPS.

Spero che questo tutorial ti abbia aiutato a installare il server multimediale Subsonic su Ubuntu 18.04 e Ubuntu 19.04. Come sempre, se hai trovato utile questo post, iscriviti alla nostra newsletter gratuita. Puoi anche seguirci su Google+, Twitter o mi piace sulla nostra pagina Facebook.


Ubuntu
  1. Come installare Plex Media Server su Ubuntu 20.04

  2. Come installare e configurare un server NFS su Ubuntu 20.04

  3. Come installare e configurare VNC su Ubuntu 20.04

  4. Come installare e configurare Universal Media Server in Ubuntu 20.04

  5. Come installare e configurare Gerbera Media Server in Ubuntu/Debian

Come installare Jellyfin Media Server su Ubuntu 20.04 LTS Server/Desktop

Come installare Subsonic Media Server su Ubuntu 16.04

Come installare Plex Media Server su Ubuntu 20.04 LTS Server/Desktop

Come installare Tomcat 7 Server su Ubuntu, Debian e LinuxMint

Come installare Subsonic Media Server su Ubuntu 16.04 LTS

Come installare Plex Media Server su Ubuntu 22.04