GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer Airsonic Media Server sur Ubuntu 18.04 LTS

Airsonic est un serveur multimédia gratuit et open source. Il s'agit d'un diffuseur multimédia en ligne auto-hébergé qui offre un accès omniprésent à votre musique, facilite le partage de votre musique avec des amis ou l'écoute de votre musique au travail. Airsonic a été créé avec Java en tant que fork complet de Subsonic, et conçu pour gérer de très grandes collections de musique et optimisé pour le flux MP3. Airsonic fonctionne avec tous les formats audio ou vidéo pouvant être diffusés via le protocole HTTP, y compris WMA, FLAC, APE, etc.

Dans ce tutoriel, je vais vous montrer étape par étape comment installer Airsonic sur Ubuntu 18.04. Nous allons vous montrer comment déployer l'installation autonome d'Airsonic à l'aide du package .WAR, exécuter Airsonic en tant que service, puis configurer le serveur Web Nginx en tant que proxy inverse pour Airsonic.

Prérequis

  • Ubuntu 18.04
  • Privilèges root

Qu'allons-nous faire ?

  1. Installer Java OpenJDK
  2. Installer et configurer AirSonic
  3. Générer un nouveau certificat SSL Letsencrypt
  4. Configurer Nginx en tant que proxy inverse
  5. Configurer le pare-feu UFW
  6. Test

Étape 1 - Installer Java OpenJDK

Airsonic est un logiciel d'application basé sur Java, nous devons donc installer Java sur le serveur, et il nécessite l'installation de la série OpenJDK 1.8x. Dans cette première étape, nous allons installer Java OpenJDK à partir du référentiel PPA webupd8team.

Installez les packages "software-properties-common", puis ajoutez le référentiel Java OpenJDK PPA.

Exécutez les commandes apt suivantes.

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

Installez maintenant Java OpenJDK.

sudo apt install oracle-java8-installer -y

Et une fois l'installation terminée, vérifiez la version de Java OpenJDK.

java -version

Vous obtiendrez maintenant que la série Java OpenJDK 1.8 a été installée sur le système Ubuntu 18.04.

Étape 2 - Installer et configurer Airsonic

Airsonic fournit différents packages d'installation, pour ce guide, nous utiliserons "l'installation WAR autonome".

Créez un nouvel utilisateur nommé 'airsonic' et créez un nouveau répertoire '/opt/airsonic'.

useradd airsonic
mkdir -p /opt/airsonic

Allez maintenant dans le répertoire '/opt/airsonic' et téléchargez le fichier de package Airsonic '.WAR' en utilisant wget.

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

Et changez le propriétaire du répertoire '/opt/airsonic' en utilisateur et groupe 'airsonic'.

chown -R airsonic:airsonic /opt/airsonic

Le package binaire Airsonic '.WAR' a été téléchargé.

Ensuite, nous devons créer un nouveau fichier de service pour Airsonic, aller dans le répertoire '/etc/systemd/system' et créer un nouveau fichier de service 'airsonic.service'.

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

Collez-y la configuration de service Airsonic suivante.

[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

Enregistrez et quittez.

Rechargez le système systemd et créez un nouveau fichier de configuration par défaut airsonic dans le répertoire '/etc/default'.

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

Collez-y la configuration airsonic par défaut suivante.

# 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

Enregistrez et quittez.

Démarrez maintenant le service Airsonic et activez-le pour qu'il se lance à chaque démarrage du système.

systemctl start airsonic
systemctl enable airsonic

L'installation "autonome" d'airsonic est terminée, et maintenant elle est opérationnelle, vérifiez-la à l'aide de la commande netstat.

netstat -plntu

Et vous obtiendrez le port par défaut Airsonic '8080' sur l'état 'LISTEN', utilisé par le service Java Airsonic.

Étape 3 - Générer un nouveau certificat SSL Letsencrypt

Dans ce tutoriel, nous allons déployer Airsonic sous la connexion HTTPS du reverse proxy Nginx avec le nom de domaine 'music.hakase-labs.io'.

Et pour cette étape, nous allons générer les certificats SSL depuis Letsencrypt. Installez l'outil Letsencrypt à l'aide de la commande apt suivante.

sudo apt install letsencrypt -y

L'outil Letsencrypt a été installé.

Ensuite, nous devons générer les nouveaux certificats SSL pour le domaine 'music.hakase-labs.io' en utilisant la commande ci-dessous.

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

L'adresse e-mail vous sera demandée et elle sera utilisée pour la notification de renouvellement. Pour l'accord Letsencrypt TOS, tapez 'A' pour accepter et pour l'adresse e-mail de partage, vous pouvez taper 'N' pour Non.

Lorsque tout est terminé, vous obtiendrez le résultat comme indiqué ci-dessous.

SSL Letsencrypt pour le domaine 'music.hakase-labs.io' a été généré, tous les certificats situés dans le répertoire '/etc/letsencrypt/live/domain'.

Étape 4 - Installer et configurer Nginx en tant que proxy inverse

Dans cette étape, nous allons installer le serveur Web Nginx et le configurer en tant que proxy inverse pour le logiciel Airsonic sur le port 8080.

Installez le serveur Web Nginx à l'aide de la commande apt suivante.

sudo apt install nginx -y

Allez maintenant dans le répertoire '/etc/nginx' et créez un nouveau fichier d'hôte virtuel 'airsonic'.

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

Collez-y la configuration suivante.

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

Enregistrez et quittez.

Activez le fichier d'hôte virtuel 'airsonic' et testez la configuration.

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

Assurez-vous qu'il n'y a pas d'erreur, puis redémarrez le service nginx et activez-le pour qu'il se lance à chaque démarrage du système.

systemctl restart nginx
systemctl enable nginx

Le serveur Web Nginx fonctionne maintenant en tant que proxy inverse pour Airsonic sur le port 8080, et il fonctionne sous la connexion sécurisée https.

Vérifiez-le en utilisant la commande netstat ci-dessous.

netstat -plntu

Étape 5 - Configurer le pare-feu UFW

Dans ce didacticiel, nous allons activer le pare-feu et nous utiliserons le pare-feu UFW pour Ubuntu.

Ouvrez le service SSH, HTTP et HTTPS sur la liste de pare-feu UFW en exécutant les commandes ci-dessous.

ufw allow ssh
ufw allow http
ufw allow https

Activez maintenant le pare-feu ufw.

ufw enable

Tapez 'y' et appuyez sur Entrée pour démarrer et activer le pare-feu UFW.

Et le pare-feu ufw a été activé.

Étape 6 - Tester

Ouvrez votre navigateur Web et saisissez l'URL d'installation d'Airsonic dans la barre d'adresse. Le mien est :

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

La page de connexion Airsonic s'affiche maintenant.

Connectez-vous en tant qu'utilisateur par défaut 'admin' avec le mot de passe 'admin' et appuyez sur le bouton 'Connexion'.

Et une fois connecté, vous verrez le tableau de bord Airsonic.

- Modifier le mot de passe par défaut

Cliquez sur le bouton "Modifier le mot de passe administrateur".

Sélectionnez maintenant l'utilisateur 'admin' et marquez le 'Modifier le mot de passe', puis tapez le nouveau mot de passe administrateur et cliquez sur 'Enregistrer'.

Le mot de passe administrateur par défaut pour Airsonic a été modifié.

- Configurer les dossiers multimédias

De retour au serveur shell du terminal, créez manuellement de nouveaux dossiers multimédias et changez le propriétaire du répertoire de dossiers multimédias en utilisateur "airsonic".

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

Maintenant, sur le tableau de bord d'administration d'Airsonic, cliquez sur le bouton "Paramètres" et cliquez sur l'onglet "Dossiers multimédias".

Assurez-vous que les dossiers multimédias "Musique" par défaut ont été activés, puis cliquez sur le bouton "Enregistrer".

Passez maintenant à l'onglet "Utilisateur", sélectionnez l'utilisateur "admin" et vérifiez le dossier multimédia "Musique" comme ci-dessous.

Le dossier multimédia "Musique" par défaut a été activé et l'utilisateur "admin" a désormais accès aux dossiers multimédias.

Ci-dessous, mon tableau de bord Airsonic après avoir apporté quelques modifications.

L'installation du diffuseur multimédia Airsonic avec Nginx en tant que proxy inverse sur Ubuntu 18.04 s'est terminée avec succès.


Ubuntu
  1. Comment installer Plex Media Server sur Ubuntu 20.04

  2. Comment installer Plex Media Server sur Ubuntu 18.04

  3. Comment installer Subsonic Media Server Ubuntu 18.04

  4. Comment installer le serveur de diffusion multimédia Icecast 2 sur Ubuntu 18.04 LTS

  5. Comment installer Minecraft Server sur Ubuntu 18.04 LTS

Comment installer Jellyfin Media Server sur Ubuntu 20.04 LTS

Comment installer Java sur Ubuntu 22.04 LTS

Comment installer Subsonic Media Server sur Ubuntu 16.04 LTS

Comment installer Red5 Media Server sur Ubuntu 16.04 LTS

Comment installer Plex Media Server sur Ubuntu 20.04 LTS

Comment installer Ant Media Server sur Ubuntu 20.04 LTS