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:53] – 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 136: | Ligne 135: | ||
root@tlcvl ~ #exit | root@tlcvl ~ #exit | ||
- | ==== Configuration du vhost sur le serveur hote pour proxy du traffic vers le container ==== | + | ===== 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' | 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 tl-cvl.futuretic.fr --verbose | + | 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 | Une fois le certificat généré, config du vhost, on redirige les requêtes sur port 80 vers 443 et | ||
- | nano / | + | nano / |
- | < | + | < |
< | < | ||
< | < | ||
- | ServerAdmin | + | ServerAdmin |
- | ServerName | + | 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 | SSLEngine on | ||
SSLProxyEngine On | SSLProxyEngine On | ||
+ | # ajout suite a default ssl handshake et suite à AH01097: pass request body failed | ||
+ | SSLProxyVerify none | ||
+ | SSLProxyCheckPeerCN off | ||
+ | SSLProxyCheckPeerName off | ||
+ | SSLProxyCheckPeerExpire off | ||
- | SSLCertificateFile / | + | |
- | SSLCertificateKeyFile / | + | |
+ | SSLCertificateKeyFile / | ||
Include / | Include / | ||
- | |||
- | ProxyPreserveHost | ||
- | # proxy pour cetificat | + | |
- | DocumentRoot / | + | |
- | ProxyPass / | + | |
- | # Set web sockets | + | |
- | RewriteEngine On | + | |
- | RewriteCond %{REQUEST_URI} | + | |
- | RewriteCond %{HTTP: | + | |
- | RewriteCond %{HTTP: | + | |
- | RewriteRule .* ws://10.0.3.235: | + | |
- | < | + | # Set web sockets |
- | Require all granted | + | |
- | ProxyPass http://10.0.3.235:8065/ | + | |
- | ProxyPassReverse http://10.0.3.235:8065/ | + | |
- | ProxyPassReverseCookieDomain 10.0.3.235 tl-cvl.futuretic.fr | + | RewriteCond %{HTTP: |
- | </ | + | RewriteRule .* ws://10.0.3.200:8065%{REQUEST_URI} [P,QSA,L] |
+ | # Proxy to container | ||
+ | ProxyPass / http:// | ||
+ | ProxyPassReverse / http:// | ||
+ | ProxyPassReverseCookieDomain 10.0.3.200 mm.mondomaine.org | ||
- | ErrorLog / | + | |
+ | | ||
LogLevel error | LogLevel error | ||
- | CustomLog / | + | CustomLog / |
</ | </ | ||
Ligne 186: | Ligne 200: | ||
</ | </ | ||
Ajouter ensuite ce vhost ainsi que celui pour port 80 et reload | Ajouter ensuite ce vhost ainsi que celui pour port 80 et reload | ||
- | a2ensite | + | a2ensite |
systemctl reload apache2 | systemctl reload apache2 | ||
- | ==== Configuration de Mattermost ==== | + | ===== Configuration de Mattermost |
On doit maintenant pouvoir se rendre à l'url pour accéder à l' | On doit maintenant pouvoir se rendre à l'url pour accéder à l' | ||
Ligne 197: | Ligne 211: | ||
{{:: | {{:: | ||
- | ==== Configurations complémentaires ==== | + | ===== Configurations complémentaires |
- | On règle les locales pour être en français par défaut | + | ==== On règle les locales pour être en français par défaut |
dpkg-reconfigure locales | dpkg-reconfigure locales | ||
Choisir FR UTF8 par défaut et régler dans l' | Choisir FR UTF8 par défaut et régler dans l' | ||
Ajout du plug-in jitsi pour permettre 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}} | {{tag>bj serveur lxc mattermost futuretic}} |
mattermost_un_container_lxc.txt · Dernière modification : 2023/10/11 21:04 de Labomedia