Service d'audio-conférence de Libre en Communs
Go to file
Christian P. MOMON 5d721836d7 Publication de la documentation rédigée pendant le déploiement. 2021-11-18 17:44:44 +00:00
README.md Publication de la documentation rédigée pendant le déploiement. 2021-11-18 17:44:44 +00:00

README.md

Service audio.a-lec.org

Service d'audio-conférence de l'association Libre en communs.

Déployé sur la machine audio.a-lec.org.

Serveur web (installation élémentaire)

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 ;

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

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

Installer les paquets :

apt-get install nginx python3-certbot-nginx

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

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

    server_name audio.a-lec.org; 

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

Activer la configuration :

cd /etc/nginx/sites-enable/
ln -s ../sites-available/audio.a-lec.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.a-lec.org :

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

    server_name audio.a-lec.org;

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

    return 302 https://$host$request_uri;
}

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

    server_name audio.a-lec.org;

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

    ssl_certificate /etc/letsencrypt/live/audio.a-lec.org/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/audio.a-lec.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.a-lec.org;
    location = /
    {
            index index.xhtml;
    }
}

Vérifier que c'est bon et recharger :

nginx -t && systemctl reload nginx

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.a-lec.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.a-lec.org/.

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

Gestion du certificat

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

sslCert=/etc/letsencrypt/live/audio.a-lec.org/fullchain.pem
sslKey=/etc/letsencrypt/live/audio.a-lec.org/privkey.pem

Rendre les certificats lisibles par Mumble :

chown mumble-server /etc/letsencrypt/archive/audio.a-lec.org/privkey*

Rendre persistante cette lisibilité lors du renouvellement de certificat en modifiant le cron (pas super élégant faute de trouer mieux):

-0 */12 * * * root test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(43200))' && certbot -q renew
+0 */12 * * * root test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(43200))' && certbot -q renew && chown mumbler-server /etc/letsencrypt/archive/audio.a-lec.org/privkey*

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>Libre en communs</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 logo_a-lec.png | base64 -w 0 > t
  • insérer le contenu de t dans le code <center><img src='data:image/png;base64,ICIIIIIIII' /><center>

Renommer la racine

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

registerName=Libre en communs

Salons temporaires

Pour autoriser la création de salons temporaires :

  • se connecter en tant que SuperUser
  • racine > souris bouton droit > onglet LCA
  • 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.