Outils pour utilisateurs

Outils du site


admin:services:mumble.chapril.org

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
admin:services:mumble.chapril.org [2020/03/22 15:09]
admin [Organiser des salons]
admin:services:mumble.chapril.org [2020/03/28 05:37] (Version actuelle)
cpm [Déploiement]
Ligne 1: Ligne 1:
 ====== Service mumble.chapril.org ======= ====== Service mumble.chapril.org =======
  
-===== Installation ​=====+===== Déploiement ​=====
  
 +==== Installation ====
 <​code>​ <​code>​
 apt-get install mumble-server apt-get install mumble-server
Ligne 16: Ligne 17:
 Le fichier de configuration est ''/​etc/​mumble.ini''​. Le fichier de configuration est ''/​etc/​mumble.ini''​.
  
-===== Personnalisation ​======+==== Personnalisation ====
  
 Modification du fichier ''/​etc/​mumble.ini''​ : Modification du fichier ''/​etc/​mumble.ini''​ :
Ligne 26: Ligne 27:
 </​code>​ </​code>​
  
-===== Configuration routage flux =====+==== Configuration routage flux ====
  
 Sur ''​maine''​ et ''​coon''​ : Sur ''​maine''​ et ''​coon''​ :
Ligne 49: Ligne 50:
 </​code>​ </​code>​
  
-===== Configuration pare-feu local =====+==== Configuration pare-feu local ====
 Sur la vm ''​allo''​ : Sur la vm ''​allo''​ :
   * créer le fichier ''/​etc/​firehol/​services/​mumble.conf''​ :   * créer le fichier ''/​etc/​firehol/​services/​mumble.conf''​ :
Ligne 86: Ligne 87:
 </​code>​ </​code>​
  
-===== Test de connexion ​=====+==== Test de connexion ====
  
 À cette étape, le serveur Mumble est joignable à condition d'​accepter le certificat. À cette étape, le serveur Mumble est joignable à condition d'​accepter le certificat.
Ligne 96: Ligne 97:
   * nom : Chapril   * nom : Chapril
  
-===== Organiser des salons ===== +==== Permettre la création de salons temporaires ====
- +
-Par défaut, aucun salon n'est présent. +
- +
-Pour créer des salons : +
-  * se connecter avec : +
-    * adresse : mumble.chapril.org +
-    * port : 64738 (celui par défaut) +
-    * nom d'​utilisateur : Superuser +
-    * nom : Chapril-SU +
-  * dans l’arborescence des salons : +
-    * cliquer bouton droit sur « root » +
-    * cliquer sur « Ajouter… » +
-    * remplir le formulaire +
-    * … +
- +
-===== Permettre la création de salons temporaires ​=====+
  
 Marche à suivre : Marche à suivre :
Ligne 123: Ligne 108:
  
  
-===== Configuration certificat ​=====+==== Configuration certificat ====
 Par défaut, il est possible d'​utiliser un certificat auto-signé. Mais alors une boite de dialogue technique apparaît et demande une confirmation. Cela représente une barrière aux utilisateurs. Donc l'​utilisation d'un certificat validé par une autorité reconnue est la bienvenue. Par défaut, il est possible d'​utiliser un certificat auto-signé. Mais alors une boite de dialogue technique apparaît et demande une confirmation. Cela représente une barrière aux utilisateurs. Donc l'​utilisation d'un certificat validé par une autorité reconnue est la bienvenue.
  
Ligne 226: Ligne 211:
  
 <​code>​chmod +x /​etc/​cron.weekly/​acme-renew</​code>​ <​code>​chmod +x /​etc/​cron.weekly/​acme-renew</​code>​
-===== Configuration web sur Bastion ​=====+ 
 +==== Configuration web sur Bastion ====
  
 Créer le dossier des logs Nginx : Créer le dossier des logs Nginx :
Ligne 244: Ligne 230:
   * réactiver la redirection SSL et la partie SSL dans le fichier web.   * réactiver la redirection SSL et la partie SSL dans le fichier web.
  
 +
 +===== Organiser les salons =====
 +
 +Par défaut, aucun salon n'est présent.
 +
 +Pour créer des salons :
 +  * se connecter avec :
 +    * adresse : mumble.chapril.org
 +    * port : 64738 (celui par défaut)
 +    * nom d'​utilisateur : Superuser
 +    * nom : Chapril-SU
 +  * dans l’arborescence des salons :
 +    * cliquer bouton droit sur « root »
 +    * cliquer sur « Ajouter… »
 +    * remplir le formulaire
 +    * …
 +
 +===== Mumble-web =====
 +
 +==== Configuration du Nginx bastion ====
 +
 +Gère le certificat SSL.
 +Redirige en proxy vers la vm allo.
 +
 +<​code>​
 +server {
 +    listen 80;
 +    listen [::]:80;
 + 
 +    server_name mumble.chapril.org; ​
 + 
 +    access_log /​var/​log/​nginx/​mumble.chapril.org/​mumble.chapril.org.access_log;​
 +    error_log /​var/​log/​nginx/​mumble.chapril.org/​mumble.chapril.org.error_log;​
 + 
 +    include /​etc/​nginx/​acme-challenge;​
 +    include /​etc/​nginx/​sexy-chapril;​
 +    include /​etc/​nginx/​force-ssl.conf;​
 +}
 +
 +server {
 +    listen 443 ssl;
 +    listen [::]:443 ssl;
 + 
 +    server_name mumble.chapril.org;​
 + 
 +    access_log /​var/​log/​nginx/​mumble.chapril.org/​mumble.chapril.org.access_log;​
 +    error_log /​var/​log/​nginx/​mumble.chapril.org/​mumble.chapril.org.error_log;​
 + 
 +    ssl_certificate ​    /​var/​lib/​dehydrated/​certs/​mumble.chapril.org/​fullchain.pem;​
 +    ssl_certificate_key /​var/​lib/​dehydrated/​certs/​mumble.chapril.org/​privkey.pem;​
 + 
 +    include /​etc/​nginx/​acme-challenge;​
 +    include /​etc/​nginx/​sexy-chapril;​
 +    #include /​etc/​nginx/​chapril-banner-location;​
 +
 +    location / {
 +        proxy_http_version ​     1.1;
 +        proxy_set_header ​       Upgrade $http_upgrade;​
 +        include proxy_params;​
 +        proxy_pass http://​allo.cluster.chapril.org;​
 +    }
 +}
 +</​code>​
 +==== Installation code et build ====
 +
 +Installation de ''​npm''​ :
 +<​code>​
 +apt-get install npm
 +
 +Oui, ça installe 251 paquets node-*…
 +</​code>​
 +
 +Clonage :
 +<​code>​
 +cd /​srv/​mumble.chapril.org
 +git clone https://​github.com/​johni0702/​mumble-web
 +cd mumble-web
 +npm install
 +npm run build
 +</​code>​
 +
 +==== Déploiement ====
 +
 +Note : pour le premier déploiement,​ on a utilisé le commit ''​9945bc5f767eafb0fb82040c4ab38ecf24d99cbc''​.
 +
 +Créer la branche officielle :
 +<​code>​
 +mkdir /​var/​log/​mumble.chapril.org/​
 +cd /​var/​log/​mumble.chapril.org/​
 +git init .
 +cp -a /​srv/​mumble.chapril.org/​mumble-web/​dist/​* .
 +chown -R www-data /​var/​www/​mumble.chapril.org/​
 +git add .
 +git commit -m "Build 9945bc5f7"​
 +</​code>​
 +
 +Créer la branche Chapril :
 +<​code>​
 +cd /​var/​log/​mumble.chapril.org/​
 +git branch chapril-9945bc5f7
 +git checkout chapril-9945bc5f7
 +</​code>​
 +
 +Paramétrer le fichier ''/​var/​www/​mumble.chapril.org/​config.local.js''​ :
 +<​code>​
 +echo "​config.settings.address ​    = '​mumble.chapril.org/​ws';"​ >> config.local.js
 +git add -p
 +git commit -m "First settings."​
 +</​code>​
 +
 +==== Installation de websockify ====
 +
 +Installation de websockify :
 +<​code>​
 +apt install websockify
 +</​code>​
 +
 +Configuration systemd :
 +<​code>​
 +[Unit]
 +Description=Mumble web interface
 +Documentation=https://​github.com/​johni0702/​mumble-web
 +Requires=network.target mumble-server.service
 +After=network.target mumble-server.service
 +
 +[Service]
 +Type=simple
 +User=www-data
 +ExecStart=/​usr/​bin/​websockify --ssl-target localhost:​64737 localhost:​64738
 +
 +[Install]
 +WantedBy=multi-user.target
 +</​code>​
 +
 +Activation :
 +<​code>​
 +systemctl daemon-reload
 +systemctl start mumble-web
 +systemctl enable mumble-web
 +</​code>​
 +==== Configuration du Nginx allo ====
 +
 +Créer les fichiers Nginx :
 +<​code>​
 +touch /​etc/​nginx/​sites-available/​mumble.chapril.org
 +ln -s /​etc/​nginx/​sites-available/​mumble.chapril.org etc/​nginx/​sites-enabled/​
 +</​code>​
 +
 +Remplir le fichier :
 +<​code>​
 +server {
 +        listen 80;
 +        server_name mumble.chapril.org;​
 +
 +        access_log /​var/​log/​nginx/​mumble.chapril.org/​mumble.chapril.org-access.log;​
 +        error_log /​var/​log/​nginx/​mumble.chapril.org/​mumble.chapril.org-error.log;​
 +
 +        location / {
 +                root /​var/​www/​mumble.chapril.org/;​
 +        }
 +
 +        location /ws {
 +                proxy_pass http://​localhost:​64737;​
 +                proxy_http_version 1.1;
 +                proxy_set_header Upgrade $http_upgrade;​
 +                proxy_set_header Connection $connection_upgrade;​
 +        }
 +}
 +
 +map $http_upgrade $connection_upgrade {
 +        default upgrade;
 +        ''​ close;
 +}
 +</​code>​
 +
 +==== Personnalisation : la boite de dialogue ====
 +Éditer le fichier ''/​var/​www/​mumble.chapril.org/​config.local.js''​ :
 +<​code>​
 +config.connectDialog.address ​ = false;
 +config.connectDialog.port ​    = false;
 +config.connectDialog.token ​   = false;
 +config.connectDialog.password = false;
 +config.connectDialog.channel ​ = false;
 +config.settings.voiceMode ​    = '​ptt';​
 +config.settings.joinDialog ​   = true;
 +</​code>​
 +
 +==== Personnalisation : franciser un peu ====
 +
 +Éditer le fichier ''/​var/​www/​mumble.chapril.org/​index.html''​ :
 +<​code>​
 +TODO
 +</​code>​
 +
 +==== Personnalisation : ajouter un favicon ====
 +
 +TODO
 +
 +==== Personnalisation : remplacer l'​icône GitHub ====
 +TODO
 +
 +==== Personnalisation : remplacer le lien GitHub ====
 +TODO
 +
 +==== Procédure de mise à jour ====
 +
 +Les fichiers de Mumble-web sont statiques.
 +
 +Builder les fichiers :
 +<​code>​
 +cd /​srv/​mumble.chapril.org/​mumble-web
 +git fetch --all 
 +npm install
 +npm run build
 +</​code>​
 +
 +Désactiver mumble-web :
 +<​code>​
 +rm /​etc/​nginx/​sites-enabled/​mumble.chapril.org
 +systemctrl restart nginx
 +</​code>​
 +
 +Intégrer la nouvelle version :
 +<​code>​
 +cd /​var/​www/​mumble.chapril.org/​
 +git checkout master
 +git branch master-hashducommit
 +rm -f *
 +cp -a /​srv/​mumble-chapril.org/​dist/​* .
 +chown -R www-data .
 +git add .
 +git commit -m "Build hashducommit"​
 +git checkout chapril-derniereversion
 +git merge master-hashducommit
 +</​code>​
 +
 +Ré-activer mumble-web :
 +<​code>​
 +ln -s /​etc/​nginx/​sites-available/​mumble.chapril.org /​etc/​nginx/​sites-enabled/​
 +systemctrl restart nginx
 +</​code>​
  
admin/services/mumble.chapril.org.1584886160.txt.gz · Dernière modification: 2020/03/22 15:09 par admin