mattermost_un_container_lxc
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| mattermost_un_container_lxc [2021/02/24 11:34] – Benjamin Labomedia | mattermost_un_container_lxc [2023/10/11 21:04] (Version actuelle) – [Installer un container LXC sur le serveur hote] Labomedia | ||
|---|---|---|---|
| Ligne 5: | Ligne 5: | ||
| - | ===== Installation de Mattermost dans un container LXC ===== | + | ===== Installer |
| - | ==== On commence par installer un container | + | |
| lxc-create -t download -n tlcvl -- -d debian -r buster -a amd64 | lxc-create -t download -n tlcvl -- -d debian -r buster -a amd64 | ||
| - | On démarre le container et on regarde son ip | + | On démarre le container et on regarde son IP : |
| lxc-start tlcvl | lxc-start tlcvl | ||
| lxc-ls -f | lxc-ls -f | ||
| NAME STATE | NAME STATE | ||
| - | tlcvl RUNNING 0 | + | tlcvl RUNNING 0 |
| On fait en sorte que le container démarre tout seul en ajoutant à la fin du fichier | On fait en sorte que le container démarre tout seul en ajoutant à la fin du fichier | ||
| nano / | nano / | ||
| # Autostart | # Autostart | ||
| lxc.start.auto = 1 | lxc.start.auto = 1 | ||
| - | On rentre dans le container pour installer Mattermost | + | On rentre dans le container pour installer Mattermost, mais avant, on install quelques outils pratiques. |
| lxc-attach tlcvl | lxc-attach tlcvl | ||
| root@tlcvl | root@tlcvl | ||
| Ligne 23: | Ligne 22: | ||
| apt install wget curl nano iotop nload htop locate curl gnupg | apt install wget curl nano iotop nload htop locate curl gnupg | ||
| - | ==== Installation bdd et Mattermost ==== | + | ===== Installation bdd et Mattermost |
| Ensuite il s'agit de suivre la [[https:// | Ensuite il s'agit de suivre la [[https:// | ||
| Ligne 76: | Ligne 75: | ||
| " | " | ||
| " | " | ||
| - | " | + | " |
| " | " | ||
| " | " | ||
| Ligne 133: | Ligne 132: | ||
| systemctl enable mattermost.service | systemctl enable mattermost.service | ||
| - | ==== Configuration de Mattermost ==== | + | On peut désormais sortir du container pour configurer le vhost proxy |
| + | root@tlcvl ~ #exit | ||
| + | ===== Configuration du vhost sur le serveur hote pour proxy du traffic vers le container ===== | ||
| + | On génère déjà un certificat avec certbot avec un vhost temporaire qui contient l' | ||
| + | certbot certonly --http-01-address 135.181.129.123 -d mm.mondomaine.org --verbose | ||
| + | Une fois le certificat généré, config du vhost, on redirige les requêtes sur port 80 vers 443 et | ||
| + | nano / | ||
| + | <file bash mm.mondomaine.org-le-ssl.conf> | ||
| + | < | ||
| + | |||
| + | < | ||
| + | |||
| + | ServerAdmin | ||
| + | ServerName | ||
| + | |||
| + | # Headers for security | ||
| + | < | ||
| + | Header always set Strict-Transport-Security " | ||
| + | Header set X-XSS-Protection "1; mode=block" | ||
| + | Header set X-Frame-Options " | ||
| + | Header set X-Content-Type-Options " | ||
| + | </ | ||
| + | |||
| + | # SSL config | ||
| + | SSLEngine on | ||
| + | SSLProxyEngine On | ||
| + | # ajout suite a default ssl handshake et suite à AH01097: pass request body failed | ||
| + | SSLProxyVerify none | ||
| + | SSLProxyCheckPeerCN off | ||
| + | SSLProxyCheckPeerName off | ||
| + | SSLProxyCheckPeerExpire off | ||
| + | |||
| + | # SSL certificates | ||
| + | SSLCertificateFile / | ||
| + | SSLCertificateKeyFile / | ||
| + | Include / | ||
| + | |||
| + | # Proxy base parameters | ||
| + | ProxyPreserveHost On | ||
| + | ProxyRequests Off | ||
| + | |||
| + | # Proxy pour cetificat | ||
| + | DocumentRoot / | ||
| + | ProxyPass / | ||
| + | |||
| + | # Set web sockets | ||
| + | RewriteEngine On | ||
| + | RewriteCond %{REQUEST_URI} / | ||
| + | RewriteCond %{HTTP: | ||
| + | RewriteCond %{HTTP: | ||
| + | RewriteRule .* ws:// | ||
| + | |||
| + | # Proxy to container | ||
| + | ProxyPass / http:// | ||
| + | ProxyPassReverse / http:// | ||
| + | ProxyPassReverseCookieDomain 10.0.3.200 mm.mondomaine.org | ||
| + | |||
| + | # Logs | ||
| + | ErrorLog / | ||
| + | LogLevel error | ||
| + | CustomLog / | ||
| + | |||
| + | </ | ||
| + | |||
| + | </ | ||
| + | </ | ||
| + | Ajouter ensuite ce vhost ainsi que celui pour port 80 et reload | ||
| + | a2ensite mm.mondomaine.org.conf mm.mondomaine.org-le-ssl.conf | ||
| + | systemctl reload apache2 | ||
| + | |||
| + | ===== Configuration de Mattermost ===== | ||
| + | On doit maintenant pouvoir se rendre à l'url pour accéder à l' | ||
| + | |||
| + | Notamment la configuration SMTP pour que les mails soient bien envoyés | ||
| + | {{:: | ||
| + | Et configurer les notifications pour qu' | ||
| + | {{:: | ||
| + | |||
| + | ===== Configurations complémentaires ===== | ||
| + | ==== On règle les locales pour être en français par défaut ==== | ||
| + | |||
| + | dpkg-reconfigure locales | ||
| + | Choisir FR UTF8 par défaut et régler dans l' | ||
| + | |||
| + | Ajout du plug-in jitsi pour permettre l' | ||
| + | |||
| + | ==== Désactiver la télémétrie de Mattermost qui envoie des datas anonymisés ==== | ||
| + | Modifier à la ligne 168 dans | ||
| + | nano / | ||
| + | " | ||
| + | " | ||
| + | |||
| + | Voir https:// | ||
| + | |||
| + | ==== Configurer les Headers pour la CSP Content-Security Policy ==== | ||
| + | * https:// | ||
| + | |||
| + | ==== Utilitaire en ligne de commande pour supprimer un canal ou une équipe et plus ==== | ||
| + | Depuis Mattermost 6, l' | ||
| + | |||
| + | Pour faire marcher cet utilitaire mmctl, il faut faire plusieurs choses : | ||
| + | |||
| + | éditer Mattermost' | ||
| + | nano / | ||
| + | vérifier le chemin de la socket locale dans ce fichier et ajouter dans le / | ||
| + | |||
| + | export PATH=$PATH:/ | ||
| + | export MMCTL_LOCAL=true | ||
| + | export MMCTL_LOCAL_SOCKET_PATH=/ | ||
| + | Se relogguer et relancer mattermost | ||
| + | systemctl restart mattermost | ||
| + | |||
| + | **Gestion d' | ||
| + | |||
| + | < | ||
| + | mmctl team archive - Archive some teams | ||
| + | mmctl team create - Create teams | ||
| + | mmctl team delete - Delete teams | ||
| + | mmctl team list - List teams | ||
| + | mmctl team modify - Modify teams | ||
| + | mmctl team rename - Rename teams | ||
| + | mmctl team restore - Restore teams | ||
| + | mmctl team search - Search teams | ||
| + | mmctl team users - Manage team users | ||
| + | </ | ||
| + | |||
| + | ==== Intégrer les nouveaux utilisateurs dans les canaux publics ==== | ||
| + | Modifier en utilisant __l' | ||
| + | nano / | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | ] | ||
| + | |||
| + | | ||
| + | ==== Désactiver les messages système (annonce de qui a rejoint le canal ...) ==== | ||
| + | Voir [[https:// | ||
| + | |||
| + | nano / | ||
| + | " | ||
| + | | ||
| + | ==== Activer / Désactiver le plug-in Jitsi si marche plus ==== | ||
| + | [[https:// | ||
| + | | ||
| + | Chaque utilisateur a la possibiltié de désactiver ces messages dans [[https:// | ||
| + | |||
| + | ===== Mise à jour de Mattermost ===== | ||
| + | Voir [[https:// | ||
| + | |||
| + | En résumé : | ||
| + | |||
| + | Telecharger puis décompresser la version de [[https:// | ||
| + | |||
| + | <code bash> | ||
| + | cd /tmp | ||
| + | wget https:// | ||
| + | tar -xf mattermost*.gz --transform=' | ||
| + | </ | ||
| + | |||
| + | Arrêter Mattermost : | ||
| + | |||
| + | <code bash> | ||
| + | systemctl stop mattermost | ||
| + | </ | ||
| + | |||
| + | Nettoyer le dossier du mattermost actuel : | ||
| + | |||
| + | <code bash> | ||
| + | cd /opt | ||
| + | find mattermost/ mattermost/ | ||
| + | </ | ||
| + | |||
| + | Appliquer la mise à jour des fichiers et remettre les droits : | ||
| + | |||
| + | <code bash> | ||
| + | cp -an / | ||
| + | chown -R mattermost: | ||
| + | </ | ||
| + | |||
| + | Redémarrer Mattermost : | ||
| + | |||
| + | <code bash> | ||
| + | systemctl start mattermost | ||
| + | </ | ||
| + | |||
| + | Supprimer les fichiers temporaires : | ||
| + | |||
| + | <code bash> | ||
| + | rm -rf / | ||
| + | </ | ||
| + | |||
| + | {{tag>bj serveur lxc mattermost futuretic}} | ||
mattermost_un_container_lxc.1614166488.txt.gz · Dernière modification : de Benjamin Labomedia
