GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare Airsonic Media Server su Ubuntu 18.04 LTS

Airsonic è un server multimediale gratuito e open source. È uno streamer multimediale basato sul Web self-hosted che fornisce un accesso onnipresente alla tua musica, semplifica la condivisione della tua musica con gli amici o l'ascolto della tua musica mentre sei al lavoro. Airsonic è stato creato con Java come un fork completo di Subsonic e progettato per gestire raccolte musicali molto grandi e ottimizzato per lo streaming di MP3. Airsonic funziona con qualsiasi formato audio o video in grado di trasmettere in streaming tramite il protocollo HTTP, inclusi WMA, FLAC, APE ecc.

In questo tutorial, ti mostrerò passo dopo passo come installare Airsonic su Ubuntu 18.04. Ti mostreremo come distribuire l'installazione autonoma di Airsonic utilizzando il pacchetto .WAR, eseguire Airsonic come servizio e quindi configurare il server Web Nginx come proxy inverso per Airsonic.

Prerequisiti

  • Ubuntu 18.04
  • Privilegi di root

Cosa faremo?

  1. Installa Java OpenJDK
  2. Installa e configura AirSonic
  3. Genera un nuovo certificato SSL Letsencrypt
  4. Configura Nginx come proxy inverso
  5. Configura Firewall UFW
  6. Test

Passaggio 1:installa Java OpenJDK

Airsonic è un software applicativo basato su Java, quindi è necessario installare Java sul server e richiede l'installazione della serie OpenJDK 1.8x. In questo primo passaggio, installeremo Java OpenJDK dal repository PPA webupd8team.

Installa i pacchetti "software-properties-common" e quindi aggiungi il repository Java OpenJDK PPA.

Esegui i seguenti comandi apt.

sudo apt install software-properties-common apt-transport-https -y
sudo add-apt-repository ppa:webupd8team/java -y

Ora installa Java OpenJDK.

sudo apt install oracle-java8-installer -y

E al termine dell'installazione, controlla la versione Java OpenJDK.

java -version

Ora otterrai che la serie Java OpenJDK 1.8 è stata installata sul sistema Ubuntu 18.04.

Fase 2 - Installa e configura Airsonic

Airsonic fornisce diversi pacchetti di installazione, per questa guida utilizzeremo "l'installazione autonoma di WAR".

Crea un nuovo utente chiamato 'airsonic' e crea una nuova directory '/opt/airsonic'.

useradd airsonic
mkdir -p /opt/airsonic

Ora vai nella directory '/opt/airsonic' e scarica il file del pacchetto Airsonic '.WAR' usando wget.

cd /opt/airsonic
wget https://github.com/airsonic/airsonic/releases/download/v10.1.1/airsonic.war

E cambia il proprietario della directory '/opt/airsonic' con l'utente e il gruppo 'airsonic'.

chown -R airsonic:airsonic /opt/airsonic

Il pacchetto binario ".WAR" di Airsonic è stato scaricato.

Successivamente, dobbiamo creare un nuovo file di servizio per Airsonic, andare nella directory '/etc/systemd/system' e creare un nuovo file di servizio 'airsonic.service'.

cd /etc/systemd/system/
vim airsonic.service

Incolla lì la seguente configurazione del servizio Airsonic.

[Unit]
Description=Airsonic Media Server
After=remote-fs.target network.target
AssertPathExists=/opt/airsonic

[Service]
Type=simple
Environment="JAVA_JAR=/opt/airsonic/airsonic.war"
Environment="JAVA_OPTS=-Xmx700m"
Environment="AIRSONIC_HOME=/opt/airsonic"
Environment="PORT=8080"
Environment="CONTEXT_PATH=/airsonic"
Environment="JAVA_ARGS="
EnvironmentFile=-/etc/sysconfig/airsonic
ExecStart=/usr/bin/java \
          $JAVA_OPTS \
          -Dairsonic.home=${AIRSONIC_HOME} \
          -Dserver.context-path=${CONTEXT_PATH} \
          -Dserver.port=${PORT} \
          -jar ${JAVA_JAR} $JAVA_ARGS
User=airsonic
Group=airsonic

[Install]
WantedBy=multi-user.target

Salva ed esci.

Ricarica il sistema systemd e crea un nuovo file di configurazione predefinito di Airsonic nella directory '/etc/default'.

sudo systemctl daemon-reload
vim /etc/default/airsonic

Incolla lì la seguente configurazione airsonic predefinita.

# Set the location of the standalone war to use
JAVA_JAR=/opt/airsonic/airsonic.war

# Set any java opts separated by spaces
JAVA_OPTS=-Xmx700m

# Set a different location for the airsonic home.
# If this path is /opt/libresonic or even contains "libresonic",
# the data from a previous libresonic can be used as is (i.e. without
# renaming libresonic.properties,db/libresonic*, etc
AIRSONIC_HOME=/opt/airsonic

# Change the port to listen on
PORT=8080

# Change the path that is listened to on
CONTEXT_PATH=/airsonic

# Add any java args. These are different than JAVA_OPTS in that
# they are passed directly to the program. The default is empty:
#JAVA_ARGS=

# Note that there are several settings for spring boot, not explicitly listed
# here, but can be used in either JAVA_OPTS or JAVA_ARGS. The full list
# can be found here:
# https://docs.spring.io/spring-boot/docs/1.4.5.RELEASE/reference/htmlsingle/#common-application-properties
# For example to set debug across the board:
#JAVA_ARGS=--debug

# Or to change the IP address that is listened to:
JAVA_ARGS=--server.address=127.0.0.1

Salva ed esci.

Ora avvia il servizio Airsonic e abilitalo per l'avvio ogni volta all'avvio del sistema.

systemctl start airsonic
systemctl enable airsonic

L'installazione "autonoma" di airsonic è completa e ora è attiva e funzionante, controllala utilizzando il comando netstat.

netstat -plntu

E otterrai la porta predefinita Airsonic '8080' nello stato 'LISTEN', utilizzato dal servizio Java Airsonic.

Fase 3:genera un nuovo certificato SSL Letsencrypt

In questo tutorial, implementeremo Airsonic sotto la connessione HTTPS del proxy inverso Nginx con il nome di dominio "music.hakase-labs.io".

E per questo passaggio, genereremo i certificati SSL da Letsencrypt. Installa lo strumento Letsencrypt usando il seguente comando apt.

sudo apt install letsencrypt -y

Lo strumento Letsencrypt è stato installato.

Successivamente, dobbiamo generare i nuovi certificati SSL per il dominio 'music.hakase-labs.io' utilizzando il comando seguente.

certbot certonly --standalone -d music.hakase-labs.io

Ti verrà chiesto l'indirizzo email e verrà utilizzato per la notifica di rinnovo. Per il contratto TOS Letsencrypt, digita "A" per accettare e per l'indirizzo email di condivisione, puoi digitare "N" per No.

Quando tutto sarà completo, otterrai il risultato come mostrato di seguito.

SSL Letsencrypt per il dominio 'music.hakase-labs.io' è stato generato, tutti i certificati si trovano nella directory '/etc/letsencrypt/live/domain'.

Passaggio 4 - Installa e configura Nginx come proxy inverso

In questo passaggio, installeremo il server web Nginx e lo configureremo come proxy inverso per il software Airsonic sulla porta 8080.

Installa il server web Nginx usando il seguente comando apt.

sudo apt install nginx -y

Ora vai nella directory '/etc/nginx' e crea un nuovo file host virtuale 'airsonic'.

cd /etc/nginx/
vim sites-available/airsonic

Incolla lì la seguente configurazione.

server {
    listen 80;
    listen [::]:80;
    server_name music.hakase-labs.io;
    # enforce https
    return 301 https://$server_name$request_uri;
}

server {
    listen              443 ssl;
    server_name         music.hakase-labs.io;
    ssl_certificate /etc/letsencrypt/live/music.hakase-labs.io/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/music.hakase-labs.io/privkey.pem;

    location /airsonic {
      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 https;
      proxy_set_header X-Forwarded-Host  $http_host;
      proxy_set_header Host              $http_host;
      proxy_max_temp_file_size           0;
      proxy_pass                         http://127.0.0.1:8080;
      proxy_redirect                     http:// https://;
    }
}

Salva ed esci.

Attiva il file host virtuale 'airsonic' e verifica la configurazione.

ln -s /etc/nginx/sites-available/airsonic /etc/nginx/sites-enabled/
nginx -t

Assicurati che non ci siano errori, quindi riavvia il servizio nginx e abilitalo per l'avvio ogni volta all'avvio del sistema.

systemctl restart nginx
systemctl enable nginx

Il server web Nginx è ora in esecuzione come proxy inverso per Airsonic sulla porta 8080 e funziona con la connessione sicura https.

Controllalo usando il comando netstat di seguito.

netstat -plntu

Passaggio 5:configurazione del firewall UFW

In questo tutorial, accenderemo il firewall e utilizzeremo il firewall UFW per Ubuntu.

Apri il servizio SSH, HTTP e HTTPS nell'elenco dei firewall UFW eseguendo i comandi seguenti.

ufw allow ssh
ufw allow http
ufw allow https

Ora abilita il firewall ufw.

ufw enable

Digita 'y' e premi Invio per avviare e abilitare il firewall UFW.

E il firewall ufw è stato abilitato.

Fase 6 - Test

Apri il tuo browser web e digita l'URL di installazione di Airsonic nella barra degli indirizzi. Il mio è:

https://music.hakase-labs.io/airsonic/

Ora ti verrà mostrata la pagina di accesso di Airsonic.

Accedi come utente predefinito "admin" con la password "admin" e premi il pulsante "Accedi".

E una volta effettuato l'accesso, vedrai la dashboard di Airsonic.

- Modifica la password predefinita

Fare clic sul pulsante "Cambia password amministratore".

Ora seleziona l'utente 'admin' e dai un segno su 'Cambia password', quindi digita la nuova password amministratore e fai clic su 'Salva'.

La password amministratore predefinita per Airsonic è stata modificata.

- Configura le cartelle multimediali

Torna al server della shell del terminale, crea manualmente nuove cartelle multimediali e cambia il proprietario della directory delle cartelle multimediali in utente "airsonic".

mkdir -p /var/music
chown -R airsonic:airsonic /var/music

Ora nella dashboard di amministrazione di Airsonic, fai clic sul pulsante "Impostazioni" e fai clic sulla scheda "Cartelle multimediali".

Assicurati che le cartelle multimediali predefinite "Musica" siano state abilitate, quindi fai clic sul pulsante "Salva".

Ora vai alla scheda "Utente", seleziona l'utente "amministratore" e controlla la cartella multimediale "Musica" come di seguito.

La cartella multimediale predefinita "Musica" è stata abilitata e l'utente "amministratore" ora ha accesso alle cartelle multimediali.

Di seguito è riportato il mio dashboard Airsonic dopo aver apportato alcune modifiche.

L'installazione dello streamer multimediale Airsonic con Nginx come proxy inverso su Ubuntu 18.04 è stata completata con successo.


Ubuntu
  1. Come installare Plex Media Server su Ubuntu 20.04

  2. Come installare Plex Media Server su Ubuntu 18.04

  3. Come installare Subsonic Media Server Ubuntu 18.04

  4. Come installare Icecast 2 Media Streaming Server su Ubuntu 18.04 LTS

  5. Come installare il server Minecraft su Ubuntu 18.04 LTS

Come installare Jellyfin Media Server su Ubuntu 20.04 LTS

Come installare Java su Ubuntu 22.04 LTS

Come installare Subsonic Media Server su Ubuntu 16.04 LTS

Come installare Red5 Media Server su Ubuntu 16.04 LTS

Come installare Plex Media Server su Ubuntu 20.04 LTS

Come installare Ant Media Server su Ubuntu 20.04 LTS