audio/README.md

5.6 KiB

Service audio.chalec.org

Service d'audio-conférence du candidat chaton de Libre en communs basé sur le logiciel libre Mumble : https://www.mumble.info/.

Responsable : Christian Momon (@cpm)

Anciens responsables : n/a.

Site web

Pour l'instant :

  • le service Mumble n'a pas besoin de serveur web ;
  • décision de ne pas installer une application de client web pour Mumble.

Cela n'empêchera pas les gens d'essayer d'aller sur la page web https://audio.chalec.org/.

Donc une page d'information permet d'apporter une réponse à ce cas, par exemple en donnant des informations sur comment se connecter, comment configurer son client, où trouver un client…

Il s'agit d'une simle page XHTML faite à la main et placée dans /var/www/audio.chalec.org/.

Installation basique

Installation d'un service nginx pour :

  • la gestion des certificats SSL ;
  • l'installation d'une page d'information sur comment se connecter au Mumble ;
  • la possible installation d'un service client web pour Mumble ;
  • l'éventuel déploiement de StatoolInfos ;

Installer les paquets :

apt-get install nginx python3-certbot-nginx

Ouvrir les ports http (80) et https (443) :

ufw allow 'Nginx HTTP'
ufw allow 'Nginx HTTPS'

Configurer a minima le site web dans /etc/nginx/sites-available/audio.chalec.org :

server
{
    listen 80;
    listen [::]:80;

    server_name audio.chalec.org; 

    access_log /var/log/nginx/audio.chalec.org-access.log;
    error_log /var/log/nginx/audio.chalec.org-error.log;
}

Activer la configuration :

cd /etc/nginx/sites-enabled/
ln -s ../sites-available/audio.chalec.org

Vérifier que c'est bon et recharger :

nginx -t && systemctl reload nginx

Configurer le certificat SSl :

certbot --nginx 

Mettre beau le fichier /etc/nginx/sites-enabled/audio.chalec.org :

server
{
    listen 80;
    listen [::]:80;

    server_name audio.chalec.org;

    access_log /var/log/nginx/audio.chalec.org-access.log;
    error_log /var/log/nginx/audio.chalec.org-error.log;

    #return 302 https://$host$request_uri;
    return 302 https://audio.chalec.org$request_uri;
}

server
{
    set_real_ip_from  192.169.1.1;
    real_ip_header proxy_protocol;
    listen [::]:443 ssl ipv6only=on;
    listen 443 ssl proxy_protocol;

    server_name audio.chalec.org;

    access_log /var/log/nginx/audio.chalec.org-access.log;
    error_log /var/log/nginx/audio.chalec.org-error.log;

    ssl_certificate /etc/letsencrypt/live/audio.chalec.org/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/audio.chalec.org/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

    root /var/www/audio.chalec.org;
    location = /
    {
            index index.xhtml;
    }
}

Vérifier que c'est bon et recharger :

nginx -t && systemctl reload nginx

Service Mumble

Service d'audio-conférence basé sur le logiciel libre Mumble : https://www.mumble.info/

Installation

Ouvrir les ports nécessaires :

ufw allow 64738/udp
ufw allow 64738/tcp

Installer le paquet :

apt-get install mumble-server

Configurer, notamment le mot de passe de SuperUser :

dpkg-reconfigure mumble-server

Transmettre le mot de passe à l'équipe.

Gestion du certificat

Utiliser le certificat SSL du site web audio.chalec.org pour enrichir le fichier /etc/mumble-server.ini :

sslCert=/etc/letsencrypt/live/audio.chalec.org/fullchain.pem
sslKey=/etc/letsencrypt/live/audio.chalec.org/privkey.pem

Rendre les certificats lisibles par Mumble :

chgrp mumble-server /etc/letsencrypt/archive/audio.chalec.org/privkey*
chmod g+r /etc/letsencrypt/archive/audio.chalec.org/privkey*

À noter que cela suffit même en cas de regénération du certificat. En effet, Certbot a l'intelligence de propager le groupe et les permissions du groupe des certificats précédents ! C'est même indiqué dans la documentation officielle, https://eff-certbot.readthedocs.io/en/stable/using.html :

privkey.pem
    Private key for the certificate […]

    Note: As of Certbot version 0.29.0, private keys for new certificate
    default to 0600. Any changes to the group mode or group owner (gid)
    of this file will be preserved on renewals.

Redémarrer le service Mumble :

systemctl restart mumble-server

Personnalisation

Amélioration de la qualité

Dans le fichier /etc/mumble-server.ini :

bandwidth=100000

Modifier le message d'accueil à la connexion

Dans le fichier /etc/mumble-server.ini :

welcometext="<br />Bienvenue sur le service d'audio-conférence de <b>Chalec</b>.<br />https://audio.a-lec.org/<br />"

Pour mettre une image dans le message de bienvenue :

  • générer une image assez petite en format png ;
  • la convertir en base64 : cat chalec-logo.png | base64 -w 0 > t
  • insérer le contenu de t dans le code <center><img src='data:image/png;base64,0123456789ABCDEF' /><center>

Renommer la racine

Par défaut, la racine est nommée « Root ». Pour la renommer, éditer /etc/mumble-server.ini :

registerName=Chalec

Salons temporaires

Pour autoriser la création de salons temporaires :

  • se connecter en tant que SuperUser
  • racine > souris bouton droit > onglet LCA
  • cadre LCAs Actifs, sélectionner @all non italique
  • cadre Permissions : cocher « Créer des temporaires »
  • cliquer sur « OK ».

Salons par défaut

Pour créer des salons par défaut, se connecter avec le compte SuperUser et faire clique-droit sur la racine puis Ajouter.