GNU/Linux >> Linux Esercitazione >  >> Cent OS

Installa Mattermost su CentOS 8 - Una guida passo passo?

Mattermost è un'alternativa Slack al cloud privato e open source. Un sistema di messaggistica sul posto di lavoro per Web, PC e telefoni, rilasciato con licenza MIT. In alternativa alla messaggistica SaaS proprietaria, Mattermost riunisce tutte le comunicazioni del tuo team in un unico posto, rendendole ricercabili e accessibili ovunque. Mattermost è "compatibile con Slack, non limitato con Slack", che supporta un superset di integrazioni webhook in entrata e in uscita di Slack, inclusa la compatibilità con le integrazioni Slack esistenti. Dai tuoi team Slack esistenti, puoi importare utenti, cronologia dei canali pubblici e persino colori per l'impostazione dei temi in Mattermost.

Qui a LinuxAPT, come parte dei nostri servizi di gestione del server, aiutiamo regolarmente i nostri clienti a eseguire query relative all'installazione del software del sistema Linux.

In questo contesto, esamineremo come installare Mattermost su CentOS 8.


Passaggi per installare e configurare Mattermost su CentOS 8?

1. Esegui l'aggiornamento del sistema

Innanzitutto, iniziamo assicurandoci che il tuo sistema sia aggiornato:

$ sudo dnf clean all
$ sudo dnf install epel-release
$ sudo dnf update


2. Installa il server di database

Esegui il seguente comando per installare MariaDB:

$ sudo dnf install mariadb-server

Per impostazione predefinita, MariaDB non è protetto. Puoi proteggere MariaDB usando lo script mysql_secure_installation. dovresti leggere attentamente e sotto ogni passaggio che imposterà una password di root, rimuoverà gli utenti anonimi, non consentirà l'accesso root remoto e rimuoverà il database di test e l'accesso per proteggere MariaDB:

$ mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
 ... Success!
Remove anonymous users? [Y/n] y
 ... Success!
Disallow root login remotely? [Y/n] y
 ... Success!
Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!
Reload privilege tables now? [Y/n] y
 ... Success!
Cleaning up...
Thanks for using MariaDB!

Quindi, riavvia il server del database MariaDB e abilitalo all'avvio all'avvio del sistema utilizzando:

$ sudo systemctl restart mariadb
$ sudo systemctl status mariadb
$ sudo systemctl enable mariadb

Dopo l'installazione del database, accedi alla shell MariaDB e crea database e utente per Mattermost:

$ mysql -u root -p
CREATE DATABASE mattermost;
GRANT ALL PRIVILEGES ON mattermost.* TO mattermost@localhost IDENTIFIED BY 'Your-Strong-Passwd';
FLUSH PRIVILEGES;
QUIT;


3. Installa Mattermost sul sistema

Innanzitutto, dovrai creare un utente separato per eseguire Mattermost. Puoi crearlo con il seguente comando:

$ sudo useradd -d /opt/mattermost -U -M mattermost

Quindi, scarica l'ultima versione di Mattermost :

$ wget https://releases.mattermost.com/5.20.2/mattermost-5.20.2-linux-amd64.tar.gz

Decomprimi l'archivio Mattermost nella directory principale dei documenti sul tuo server:

$ tar xf *.gz
$ mv mattermost /opt/

Crea la directory di archiviazione per i file:

$ mkdir /opt/mattermost/data

Inoltre, imposta la proprietà e le autorizzazioni:

$ sudo chown -R mattermost:mattermost /opt/mattermost
$ sudo chmod -R g+w /opt/mattermost

Successivamente, dovremo configurare il driver del database nel file /opt/mattermost/config/config.json apportando alcune modifiche al suo contenuto. Cerca le righe "DriverName" e "DataSource" e modifica come segue:

$ nano /opt/mattermost/config/config.json
"SqlSettings": {
        "DriverName": "mysql",
        "DataSource": "mattermost:Str0ngP@ss@tcp(localhost:3306)/mattermost?charset=utf8mb4,utf8\u0026readTimeout=30s\u0026writeTimeout=30s",
        "DataSourceReplicas": [],
        "DataSourceSearchReplicas": [],
        "MaxIdleConns": 20,
        "ConnMaxLifetimeMilliseconds": 3600000,
        "MaxOpenConns": 300,
        "Trace": false,
        "AtRestEncryptKey": "myyti1r597i99qrk7eu91ywqhaawz4md",
        "QueryTimeout": 30
    },

Salva e chiudi il file. Quindi, cambia la directory in /opt/mattermost e avvia il server Mattermost con il seguente comando:

$ cd /opt/mattermost
$ sudo -u mattermost ./bin/mattermost


4. Configura il servizio Mattermost Systemd

Per prima cosa, creeremo un nuovo file di unità di sistema usando il seguente comando:

$ nano /etc/systemd/system/mattermost.service
[Unit]
Description=Mattermost
After=syslog.target network.target mariadb.service
[Service]
Type=notify
WorkingDirectory=/opt/mattermost
User=mattermost
ExecStart=/opt/mattermost/bin/mattermost
PIDFile=/var/run/mattermost.pid
TimeoutStartSec=3600
LimitNOFILE=49152
[Install]
WantedBy=multi-user.target

Quindi, avvia il servizio Mattermost e abilitalo all'avvio dopo il riavvio del sistema con il seguente comando:

$ sudo systemctl daemon-reload
$ sudo systemctl start mattermost.service
$ sudo systemctl enable mattermost.service

Verifica che Mattermost sia in esecuzione e in ascolto sulla porta 8065. Puoi verificarlo con il seguente comando:

$ curl http://localhost:8065


5. Configura Nginx con Mattermost

Installa e configura Nginx come proxy inverso per prestazioni e sicurezza migliori. Ora installiamo Nginx sul sistema CentOS:

$ sudo dnf install nginx

Dopo aver installato il server web Nginx, avvia il servizio Nginx e abilitalo all'avvio dopo il riavvio del sistema con il seguente comando:

$ sudo systemctl start nginx
$ sudo systemctl enable nginx

Quindi, configura il server web Nginx come proxy per Mattermost:

$ sudo nano /etc/nginx/conf.d/mattermost.conf
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.example.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;
   }
}

Infine, riavvia il servizio Nginx per applicare le modifiche:

$ nginx -t
$ sudo systemctl restart nginx


6. Configura Firewall

Consenti l'accesso al firewall sulle porte HTTP e HTTPS:

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


Come accedere all'interfaccia Web importante?

Mattermost sarà disponibile sulla porta HTTP 80 per impostazione predefinita.

Apri il tuo browser preferito e vai su http://mattermost.example.com e continua a configurare Mattermost inserendo un indirizzo email e creando un account.



Cent OS
  1. Installa Grafana su CentOS 8 - Guida passo passo?

  2. Installa FreeIPA su CentOS 8 - Guida passo passo?

  3. Installare OrangeScrum su CentOS 8 - Guida passo passo?

  4. Installa Rar/Unrar su Centos 8 - Guida passo passo?

  5. Installa ClamAV su CentOS 8 - Guida passo passo?

Guida passo passo per installare CentOS 8 (con screenshot)

Installa qt su Ubuntu 20.04 - Guida passo passo?

Installa la trasmissione su CentOS 8 - Una guida passo passo?

Installare Microsoft SQL Server su CentOS 8 - Una guida passo passo?

Installa Vtiger CRM su CentOS 8 - Una guida passo passo?

Installare Gparted su CentOS 8 - Una guida passo passo?