GNU/Linux >> Tutoriels Linux >  >> Rocky Linux

Comment installer Mattermost sur Rocky Linux 8

Mattermost est un service de messagerie instantanée open source. Il existe en versions gratuite et payante. Il peut être utilisé dans le cloud ou sur site en tant qu'application Web. Nous apprenons ici comment installer et configurer Mattermost sur Rocky Linux.

Mattermost permet la communication entre les individus et les groupes. La communication peut prendre la forme d'un chat, d'un appel vidéo ou d'un appel téléphonique normal. L'échange de données et de liens est également possible. Mattermost peut être considéré comme un concurrent direct de MS Teams ou Slack à cet égard. Si vous êtes des utilisateurs du cloud tels qu'AWS, Google, Azure et d'autres, des images open source pré-construites sont disponibles avec eux pour installer et déployer Mattermost sur le cloud aussi rapidement que possible. Après l'installation, son interface Web est accessible à l'aide du navigateur ou des applications mobiles et de bureau sous Windows, Linux et Mac, iOS et Android.

Sous le nom d'Omnibus, le package publié par Mattermost, une pile complète du système de messagerie gratuit, peut être installé en quelques commandes seulement. En plus de Mattermost lui-même, l'administrateur peut configurer PostgreSQL en tant que base de données, Nginx en tant que serveur Web proxy et Certbot pour émettre et renouveler des certificats SSL en un rien de temps. Cependant, Omnibus est uniquement pour Debian basé sur le système et ne fonctionnera pas sur RHEL ou ses dérivés, nous devons donc configurer Mattermost sur Rocky Linux étape par étape.

Étapes pour installer Mattermost sur Rocky Linux 8

1. Exécutez la mise à jour du système

Tout d'abord, mettez à jour les packages existants disponibles sur votre Rocky Linux pour vous assurer que tout sera dans son dernier état.

sudo dnf update

2. Installer le serveur MySQL sur Rocky Linux

Si vous avez déjà installé un serveur avec la base de données MySQL, vous pouvez ignorer cette étape. Sinon, utilisez la commande ci-dessous pour installer le serveur MySQL sur Rocky Linux afin de stocker les données qui seront générées par Mattermost.

sudo dnf install mysql-server

Une fois l'installation terminée, assurez-vous que leservice MySQL est activé et en cours d'exécution…

sudo systemctl enable --now mysqld

sudo systemctl start mysqld

Vérifier l'état-

sudo systemctl status mysqld

Sécurisez l'installation de votre serveur de base de données.

sudo mysql_secure_installation

Lorsque nous exécutons la commande ci-dessus, elle nous demandera de définir un mot de passe pour Mysql et de supprimer les autres éléments qui rendent la base de données vulnérable.

3. Créer une base de données pour Mattermost

Maintenant, connectons-nous à notre serveur MySQL et créons une base de données à utiliser plus tard avec l'installation de Mattermost.

Pour vous connecter en tant qu'utilisateur root, tapez-

mysql -u root -p

Créer une base de données :

Remplacez h2sdb avec le nom que vous souhaitez donner à votre base de données.

CREATE DATABASE h2sdb;

Ensuite, créez un utilisateur de base de données.

Ici h2suser le nom d'utilisateur et le pass est le mot de passe que nous avons utilisé pour cela. Vous pouvez modifier ces valeurs…

CREATE USER 'h2suser'@'localhost' IDENTIFIED BY 'pass';

Attribuer tous les droits de la base de données à l'utilisateur créé.

grant all privileges on h2sdb.* to h2suser@localhost;

Rechargez les tables de subvention et quittez-

flush privileges;

exit;

4. Installez Mattermost Server sur Rocky Linux 8

Maintenant, téléchargeons la dernière version du serveur Mattermost à installer. Pour cela rendez-vous sur lesite officiel télécharger la page et copier la dernière URL de téléchargement du fichier tar et l'utiliser avec wget commande sur votre terminal Rocky Linux pour l'obtenir. Lors de la rédaction de cet article, la dernière version disponible était la 5.34.2, si c'est la même chose dans votre cas, vous pouvez également utiliser la commande ci-dessous.

sudo dnf instal wget -y
wget https://releases.mattermost.com/5.34.2/mattermost-5.34.2-linux-amd64.tar.gz

Extraire et déplacez le fichier téléchargé vers /opt annuaire. Ainsi, nous ne le supprimerons pas accidentellement.

tar -xf mattermost-*-linux-amd64.tar.gz
sudo mv mattermost /opt

Créer un répertoire de données dans le dossier copié pour stocker les données-

sudo mkdir /opt/mattermost/data

5. Créer un utilisateur et un groupe

Pour des raisons de sécurité, nous allons créer un utilisateur et un groupe distincts pour Mattermost sur Rocky Linux. Il aura le droit de gérer et d'accéder aux services Mattermost.

Ajouter un utilisateur et un groupe appelé mattermost

sudo useradd --system --user-group mattermost

Donnez à l'utilisateur nouvellement créé un droit de gérer le dossier copié dans /opt répertoire.

sudo chown -R mattermost:mattermost /opt/mattermost

Définissez les autorisations de lecture et d'écriture.

sudo chmod -R g+w /opt/mattermost

6. Configurer le pilote de base de données et la source de données dans

Modifiez le fichier de configuration et changez deux choses :le nom du pilote de la base de données et la source de données 

sudo dnf install nano -y
sudo nano /opt/mattermost/config/config.json

Pilote de base de données :

Utilisez les touches fléchées de votre clavier et faites défiler jusqu'à ce que vous trouviez les valeurs DriverName sous Paramètres SQL. Par défaut, il sera défini pour PostgreSQL et si vous utilisez MySQL, changez-le en mysql .

Définissez "Nom du pilote ” :”mysql

Ensuite, juste en dessous, vous trouverez la source de données ligne qui est-
"postgres://mmuser:<mmuser-password>@<host-name-or-IP>:5432/mattermost?sslmode=disable&connect_timeout=10".

Modifier celui ci-dessous et remplacez également le gras texte

"mmuser:<mmuser-password>@tcp(<host-name-or-IP>:3306)/mattermost?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s"

Remplacer

mmuser –  Avec votre utilisateur de base de données MySQL

mmuser-password- Remplacez par le mot de passe de la base de données

<host-name-or-IP> Saisissez l'adresse IP de votre serveur de base de données . Si vous utilisez le même serveur pour la base de données Mattermost et MySQL, puis remplacez-la par localhost ou 127.0.0.1

mattermost – Supprimez-le tapez le nom de votre base de données.

Exemple – Si vous utilisez notre valeur de base de données MySQL, cette ligne de source de données ressemblera à ceci

"h2suser:pass@tcp(127.0.0.1:3306)/h2sdb?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s"

Enregistrez et fermez le fichier en appuyant sur Ctrl+X , tapez o, et appuyez sur Entrée Clé.

Testez que tout fonctionne correctement

Basculez vers le répertoire le plus important et démarrez son serveur-

cd /opt/mattermost

sudo -u mattermost ./bin/mattermost

Vous verrez un texte où le serveur écoute sur le port 8065 indiquant qu'il fonctionne et que le fichier de configuration est valide. Pour l'arrêter, appuyez sur Ctrl+C.

7. Créer un fichier de service des systèmes Mattermost sur Rocky Linux

Pour exécuter le service de cette plate-forme de messagerie gratuite en arrière-plan qui peut être arrêté ou démarrer à l'aide de la commande systemctl, créons un fichier de configuration pour le même.

sudo nano /etc/systemd/system/mattermost.service

Copiez le code ci-dessous.

[Unit]
Description=Mattermost
After=syslog.target network.target mysqld.service

[Service]
Type=notify
WorkingDirectory=/opt/mattermost
User=mattermost
ExecStart=/opt/mattermost/bin/mattermost
PIDFile=/var/spool/mattermost/pid/master.pid
TimeoutStartSec=3600
LimitNOFILE=49152

[Install]
WantedBy=multi-user.target

Enregistrez le fichier en appuyant sur ctrl+x puis tapez- Y et appuyez sur Entrée Clé.

Rendre le fichier exécutable-

sudo chmod 664 /etc/systemd/system/mattermost.service

Rechargez les services systemd-

sudo systemctl daemon-reload

8. Activer et démarrer son service

Maintenant, activez le fichier de service créé ci-dessus pour qu'il s'exécute avec le démarrage du système et démarrez-le également.

sudo systemctl enable mattermost.service

Démarrez-

sudo systemctl start mattermost.service

Vérifier l'état-

sudo systemctl status mattermost.service

Pour quitter- Ctrl+C

9. Accéder à l'interface Web de Mattermost

Si vous souhaitez accéder à ce serveur de chat en utilisant l'adresse IP, ouvrez d'abord le numéro de port 8065 sur votre Rocky Linux

sudo firewall-cmd --zone=public --add-port=8065/tcp

Maintenant, ouvrez votre navigateur Web et pointez-le vers l'adresse IP du serveur où vous avez installé le Mattermost. Par exemple, si l'adresse IP de votre serveur est 192.168.0.108, l'URL ressemblera à ceci-

192.168.0.108:8065

Vous trouverez ceci- 

Entrez votre adresse e-mail et d'autres éléments pour créer un compte.

10 :Utilisez un domaine complet et un port 80/443

Il existe deux façons d'utiliser FQDn, cependant, les deux nécessitent d'abord le mappage du domaine avec l'adresse IP du serveur à l'aide du serveur DNS.

1ère méthode :

Si vous souhaitez utiliser le FQDn standard au lieu de l'adresse IP pour accéder au serveur, pointez d'abord le domaine vers l'adresse IP du service Mattermost, puis accédez à la console système et sélectionnez serveur Web .

Là, entrez le domaine ou l'URL du site Web que vous devez pointer vers son serveur. Et si vous ne souhaitez pas utiliser le numéro de port 8065 avec le domaine, remplacez-le par 80 ou 445.

Une fois défini, testez l'URL en direct. Si cela fonctionne correctement, vous pouvez utiliser l'option Let's Encrypt qui y est proposée pour obtenir le certificat SSL gratuit.

2ème méthode

Utilisation du proxy inverse Nginx

Bien que nous puissions pointer directement le nom de domaine vers l'adresse IP de votre serveur pour accéder à Mattermost en utilisant un domaine pleinement qualifié, cependant, pour améliorer la sécurité, installons Nginx en tant que proxy inverse.

sudo dnf install epel-release
sudo dnf install nginx

Activer et démarrer

sudo systemctl enable --now nginx
sudo systemctl start nginx

Créer un fichier de configuration 

sudo nano /etc/nginx/conf.d/mattermost.conf

Collez le code ci-dessous et remplacez mattermost.how2shout.com avec le nom de domaine que vous souhaitez utiliser…

upstream backend {
server 127.0.0.1:8065;
keepalive 32;
}

proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=mattermost_cache:10m max_size=3g inactive=120m use_temp_path=off;

server {
listen 80;
server_name mattermost.how2shout.com;

location ~ /api/v[0-9]+/(users/)?websocket$ {
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
client_max_body_size 50M;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Frame-Options SAMEORIGIN;
proxy_buffers 256 16k;
proxy_buffer_size 16k;
client_body_timeout 60;
send_timeout 300;
lingering_timeout 5;
proxy_connect_timeout 90;
proxy_send_timeout 300;
proxy_read_timeout 90s;
proxy_pass http://backend;
}

location / {
client_max_body_size 50M;
proxy_set_header Connection "";
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Frame-Options SAMEORIGIN;
proxy_buffers 256 16k;
proxy_buffer_size 16k;
proxy_read_timeout 600s;
proxy_cache mattermost_cache;
proxy_cache_revalidate on;
proxy_cache_min_uses 2;
proxy_cache_use_stale timeout;
proxy_cache_lock on;
proxy_http_version 1.1;
proxy_pass http://backend;
}
}

Enregistrez le fichier - Ctrl+X , appuyez sur Y, et appuyez sur Entrée clé.

Vérifier que le fichier de configuration fonctionne sans aucune erreur-

sudo nginx -t

Redémarrer le serveur Nginx

sudo systemctl restart nginx

Ouvrir les ports 80 et 443 sur le pare-feu du serveur

sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload

Maintenant, si vous avez pointé votre domaine vers l'adresse IP du serveur, vous pourrez y accéder dans le navigateur. Cependant, une erreur de certificat SSL sera là. Ainsi, pour supprimer cette installation, utilisez Let's Encrypt.

Pour en savoir plus, consultez la documentation officielle de Mattermost.


Rocky Linux
  1. Comment installer Mattermost Server sur Rocky Linux 8

  2. Comment installer Python 3.9 sur Rocky Linux 8

  3. Comment installer Rocky Linux 8.4

  4. Comment installer le serveur MariaDB dans Rocky Linux

  5. Comment installer Redis sur Rocky Linux 8

Comment installer le serveur MariaDB sur Rocky Linux 8

Comment installer PHP 7.4 sur Rocky Linux 8

Comment installer Mattermost sur Rocky Linux 8

Comment installer Python 3.9 sur Rocky Linux

Comment installer PHP 8 sur Rocky Linux 8

Comment installer Nginx sur Rocky Linux 8