197 lines
5.3 KiB
Markdown
197 lines
5.3 KiB
Markdown
# 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`.
|