GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

So installieren und konfigurieren Sie Mattermost unter CentOS 8

Mattermost ist ein kostenloses, Open-Source- und selbst gehostetes Messaging-System für die Zusammenarbeit von Unternehmensteams. Es ist in Golang und React geschrieben und verwendet MySQL/MariaDB/PostgreSQL als Datenbank-Backend. Es bietet Desktop-Clients für Windows, macOS und Linux sowie mobile Anwendungen für iOS und Android. Es ist Slack sehr ähnlich und bringt Ihre gesamte Teamkommunikation an einem Ort zusammen. Es bietet sehr nützliche Funktionen, darunter Einzel- und Gruppennachrichten, Dateifreigabe, Videoanrufe, benutzerdefinierte Emojis, Webhooks und Befehle und vieles mehr.

In diesem Tutorial zeigen wir Ihnen, wie Sie Mattermost unter CentOS 8 installieren.

Voraussetzungen

  • Ein Server mit CentOS 8.
  • Auf Ihrem Server ist ein Root-Passwort konfiguriert.

Installieren und konfigurieren Sie die MariaDB-Datenbank

Mattermost verwendet MariaDB/MySQL als Datenbank-Backend. MariaDB muss also auf Ihrem Server installiert sein. Wenn es nicht installiert ist, können Sie es mit dem folgenden Befehl installieren:

dnf install mariadb-server -y

Starten Sie nach der Installation den MariaDB-Dienst und aktivieren Sie ihn nach dem Systemneustart mit dem folgenden Befehl:

systemctl start mariadb
systemctl enable mariadb

Standardmäßig ist MariaDB nicht gesichert und das Root-Passwort ist in CentOS 8 nicht gesetzt. Sie können es also mit dem folgenden Befehl setzen:

mysql_secure_installation

Beantworten Sie alle Fragen wie unten gezeigt:

Aktuelles Passwort für Root eingeben (Eingabe für keins):Root-Passwort setzen? [J/n] JNeues Passwort:Neues Passwort erneut eingeben:Anonyme Benutzer entfernen? [J/n] YRoot-Anmeldung aus der Ferne verbieten? [J/n] YTestdatenbank und Zugriff darauf entfernen? [J/n] YBerechtigungstabellen jetzt neu laden? [J/n] Ja

Wenn Sie fertig sind, melden Sie sich mit dem Root-Benutzer bei MariaDB an:

mysql -u root -p

Geben Sie Ihr Root-Passwort ein und erstellen Sie dann mit dem folgenden Befehl eine Datenbank und einen Benutzer für Mattermost:

MariaDB [(keine)]> DATENBANK ERSTELLEN mattermostdb;
MariaDB [(keine)]> GEWÄHREN SIE ALLE PRIVILEGIEN AUF mattermostdb.* AN [email protected] IDENTIFIED BY 'password';

Löschen Sie als Nächstes die Berechtigungen und verlassen Sie die MariaDB-Shell mit dem folgenden Befehl:

MariaDB [(keine)]> FLUSH PRIVILEGES;
MariaDB [(keine)]> EXIT;

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Installieren Sie Mattermost

Zuerst müssen Sie einen separaten Benutzer erstellen, um Mattermost auszuführen. Sie können es mit dem folgenden Befehl erstellen:

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

Laden Sie als Nächstes die neueste Version von Mattermost mit dem folgenden Befehl herunter:

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

Sobald der Download abgeschlossen ist, extrahieren Sie die heruntergeladene Datei mit dem folgenden Befehl:

tar -xvzf mattermost-5.21.0-linux-amd64.tar.gz

Verschieben Sie als Nächstes das extrahierte Verzeichnis mit dem folgenden Befehl nach /opt:

mv mattermost /opt/

Erstellen Sie als Nächstes ein Datenverzeichnis in Mattermost und geben Sie Mattermost mit dem folgenden Befehl die richtigen Berechtigungen:

mkdir /opt/mattermost/data
chown -R mattermost:mattermost /opt/mattermost
chmod -R g+w /opt/mattermost

Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.

Mattermost konfigurieren

Als nächstes müssen Sie Ihre Datenbank in Mattermost definieren. Sie können dies tun, indem Sie die Datei config.json:

bearbeiten
nano /opt/mattermost/config/config.json

Ändern Sie die folgenden Zeilen gemäß Ihren Datenbankeinstellungen:

 "SqlSettings":{ "DriverName":"mysql", "DataSource":"mattermost:[email protected](localhost:3306)/mattermostdb?charset=utf8mb4,utf8\u0026readTimeout=30s\u0026writeTimeout=30s", 

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Wechseln Sie dann in das Verzeichnis /opt/mattermost und starten Sie den Mattermost-Server mit folgendem Befehl:

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

Sobald der Server erfolgreich gestartet wurde, sollten Sie die folgende Ausgabe erhalten:

{"level":"info","ts":1585379681.8383002,"caller":"utils/i18n.go:83","msg":"Geladene Systemübersetzungen","for locale":"en" ,"from locale":"/opt/mattermost/i18n/en.json"}{"level":"info","ts":1585379681.83874,"caller":"app/server_app_adapters.go:58","msg ":"Server initialisiert..."}{"level":"info","ts":1585379681.8470004,"caller":"sqlstore/supplier.go:221","msg":"Ping von SQL"," database":"master"}{"level":"info","ts":1585379684.7858346,"caller":"sqlstore/upgrade.go:112","msg":"Die Version des Datenbankschemas wurde festgelegt", "version":"5.21.0"}{"level":"error","ts":1585379690.8182986,"caller":"app/server_app_adapters.go:129","msg":"SiteURL muss gesetzt werden. Einige Die Funktionen funktionieren nicht korrekt, wenn die SiteURL nicht festgelegt ist. Weitere Informationen finden Sie in der Dokumentation:http://about.mattermost.com/default-site-url"}{"level":"info","ts":1585379690.821083,"caller ":"app/license.go:39","msg":"Lizenzschlüssel von https://mattermost.com erforderlich, um Unternehmensfunktionen freizuschalten."}

Drücken Sie als Nächstes STRG + C, um den Mattermost-Server zu stoppen.

Erstellen Sie eine Systemd-Dienstdatei für Mattermost

Als nächstes müssen Sie eine systemd-Dienstdatei erstellen, um den Mattermost-Dienst zu verwalten. Sie können es mit dem folgenden Befehl erstellen:

nano /etc/systemd/system/mattermost.service

Fügen Sie die folgenden Zeilen hinzu:

[Unit]Description=MattermostAfter=syslog.target network.target mariadb.service[Service]Type=notifyWorkingDirectory=/opt/mattermostUser=mattermostExecStart=/opt/mattermost/bin/mattermostPIDFile=/var/run/mattermost.pidTimeoutStartSec =3600LimitNOFILE=49152[Installieren]WantedBy=multi-user.target

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Laden Sie dann den systemd-Daemon mit dem folgenden Befehl neu:

systemctl daemon-reload

Starten Sie als Nächstes den Mattermost-Dienst und aktivieren Sie ihn nach dem Systemneustart mit dem folgenden Befehl:

systemctl start mattermost
systemctl enable mattermost

Sie können den Status des Mattermost-Dienstes auch mit dem folgenden Befehl überprüfen:

systemctl status matters

Sie sollten die folgende Ausgabe erhalten:

? mattermost.service - Mattermost Geladen:geladen (/etc/systemd/system/mattermost.service; deaktiviert; Herstellervoreinstellung:deaktiviert) Aktiv:aktiv (läuft) seit Sa 2020-03-28 03:17:07 EDT; Vor 14s Haupt-PID:15204 (Mattermost) Aufgaben:21 (Limit:25028) Arbeitsspeicher:120,8 MB CGroup:/system.slice/mattermost.service ??15204 /opt/mattermost/bin/mattermost ??15214 plugins/com.mattermost .nps/server/dist/plugin-linux-amd64Mar 28 03:17:07 centos8 mattermost[15204]:{"level":"info","ts":1585379827.1131086,"caller":"app/server.go:247","msg":"Drucke aktuelle Arbeit am>28. März 03:17:07 Centos8 Mattermost[15204]:{"level":"info","ts":1585379827.1131282,"caller":"app/server.go :248","msg":"Geladene Konfiguration","source">

Zu diesem Zeitpunkt läuft der Mattermost-Server und lauscht auf Port 8065. Sie können dies mit dem folgenden Befehl überprüfen:

netstat -antup | grep 8065

Sie sollten die folgende Ausgabe erhalten:

tcp6 0 0 :::8065 :::* LISTEN 15204/mattermost 

Konfigurieren Sie Nginx als Reverse-Proxy für Mattermost

Es empfiehlt sich, Nginx für eine bessere Leistung und Sicherheit als Reverse-Proxy zu installieren und zu konfigurieren.

Installieren Sie zuerst den Nginx-Webserver mit dem folgenden Befehl:

dnf install nginx -y

Starten Sie nach der Installation des Nginx-Webservers den Nginx-Dienst und aktivieren Sie ihn nach dem Systemneustart mit dem folgenden Befehl:

systemctl start nginx
systemctl enable nginx

Erstellen Sie als Nächstes mit dem folgenden Befehl eine neue virtuelle Nginx-Hostdatei für Mattermost:

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

Fügen Sie die folgenden Zeilen hinzu:

Upstream Mattermost { Server 127.0.0.1:8065; keepalive 32;}proxy_cache_path /var/cache/nginx level=1:2 keys_zone=mattermost_cache:10m max_size=3g inactive=120m use_temp_path=off;server { listen 80; server_name mattermost.example.com; Standort ~ /api/v[0-9]+/(users/)?websocket$ { proxy_set_header Upgrade $http_upgrade; proxy_set_header Verbindung "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 $schema; proxy_set_header X-Frame-Optionen SAMEORIGIN; Proxy_buffers 256 16k; Proxy_buffer_size 16k; client_body_timeout 60; send_timeout 300; verweilendes_timeout 5; Proxy_connect_timeout 90; proxy_send_timeout 300; Proxy_read_timeout 90s; Proxy_pass http://mattermost; } Ort / { Client_max_body_size 50M; proxy_set_header Verbindung ""; 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 $schema; proxy_set_header X-Frame-Optionen SAMEORIGIN; Proxy_buffers 256 16k; Proxy_buffer_size 16k; Proxy_read_timeout 600s; proxy_cache mattermost_cache; proxy_cache_revalidate an; Proxy_cache_min_uses 2; Proxy_cache_use_stale Zeitüberschreitung; proxy_cache_lock an; Proxy_http_Version 1.1; Proxy_pass http://mattermost; }}

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Überprüfen Sie dann Nginx mit dem folgenden Befehl auf Syntaxfehler:

nginx -t

Sie sollten die folgende Ausgabe erhalten:

nginx:Die Syntax der Konfigurationsdatei /etc/nginx/nginx.conf ist oknginx:Der Test der Konfigurationsdatei /etc/nginx/nginx.conf ist erfolgreich

Starten Sie abschließend den Nginx-Dienst neu, um die Änderungen zu übernehmen:

systemctl startet nginx neu

Zu diesem Zeitpunkt ist der Nginx-Webserver so konfiguriert, dass er Mattermost bedient. Sie können jetzt mit dem nächsten Schritt fortfahren.

Konfigurieren Sie SELinux und Firewalld

Standardmäßig ist SELinux in CentOS 8 aktiviert. Es wird empfohlen, es für Mattermost zu deaktivieren. Sie können es deaktivieren, indem Sie die Datei /etc/selinux/config bearbeiten:

nano /etc/selinux/config

Suchen Sie die folgende Zeile:

SELINUX=erzwingen

Und ersetzen Sie es durch die folgende Zeile:

SELINUX=permissiv

Speichern und schließen Sie die Datei, wenn Sie fertig sind. Starten Sie dann Ihr System neu, um die Änderungen zu übernehmen.

Als nächstes müssen Sie Port 80 durch Firewalld zulassen. Sie können es mit dem folgenden Befehl zulassen:

firewall-cmd --add-service=http --permanent

Als nächstes laden Sie die Firewall neu, um die Änderungen zu übernehmen:

firewall-cmd --reload

Greifen Sie auf die Mattermost-Webschnittstelle zu

Öffnen Sie nun Ihren Webbrowser und geben Sie die URL http://mattermost.example.com ein. Sie sollten die Mattermost-Benutzererstellungsseite sehen:

Geben Sie Ihre E-Mail-Adresse, Ihren Benutzernamen und Ihr Passwort ein und klicken Sie auf Erstellen Konto Taste. Sie sollten die folgende Seite sehen:

Klicken Sie anschließend auf Erstellen ein neues Team um Ihr Team zu erstellen. Sie sollten die folgende Seite sehen:

Geben Sie Ihren Teamnamen ein und klicken Sie auf Weiter Taste. Sie sollten die folgende Seite sehen:

Geben Sie Ihre Team-URL ein und klicken Sie auf Fertig stellen um die Installation abzuschließen. Sie sollten das Mattermost-Dashboard auf der folgenden Seite sehen:

Schlussfolgerung

Herzliche Glückwünsche! Sie haben Mattermost erfolgreich auf dem CentOS 8-Server installiert und konfiguriert. Sie können jetzt ein Team für Ihre Organisation erstellen und mit der Zusammenarbeit mit Ihrem Team beginnen.


Cent OS
  1. So installieren und konfigurieren Sie Nginx unter CentOS 7

  2. So installieren und konfigurieren Sie Samba auf RHEL 8 / CentOS 8

  3. So installieren und konfigurieren Sie Redis unter CentOS 7

  4. So installieren und konfigurieren Sie GitLab unter CentOS 7

  5. So installieren und konfigurieren Sie CyberPanel unter CentOS 8

So installieren und konfigurieren Sie ISPConfig CP unter CentOS 7

So installieren und konfigurieren Sie ownCloud auf CentOS 7

So installieren und konfigurieren Sie Samba unter CentOS 8

So installieren und konfigurieren Sie Fail2ban unter CentOS 8

So installieren und konfigurieren Sie HAproxy unter CentOS 6

So installieren und konfigurieren Sie GlusterFS unter CentOS 7/CentOS 8