GNU/Linux >> Tutoriales Linux >  >> Rocky Linux

Cómo instalar Mattermost en Rocky Linux 8

Mattermost es un servicio de mensajería instantánea de código abierto. Viene en versiones gratuitas y de pago. Se puede operar en la nube o en las instalaciones como una aplicación web. Aquí aprendemos cómo instalar y configurar Mattermost en Rocky Linux.

Mattermost permite la comunicación entre individuos y grupos. La comunicación puede tener lugar como chat, videollamada o llamada telefónica normal. El intercambio de datos y enlaces también es posible. Mattermost puede verse como un competidor directo de MS Teams o Slack en este sentido. Si usted es usuario de la nube como AWS, Google, Azure y otros, las imágenes de código abierto preconstruidas están disponibles para instalar e implementar Mattermost en la nube lo más rápido posible. Después de la instalación, se puede acceder a su interfaz web mediante el navegador o las aplicaciones móviles y de escritorio en Windows, Linux y Mac, iOS y Android.

Bajo el nombre Omnibus, el paquete lanzado Mattermost, una pila completa del sistema de mensajería gratuito, se puede instalar con solo unos pocos comandos. Además del propio Mattermost, el administrador puede configurar PostgreSQL como base de datos, Nginx como servidor web proxy y Certbot para emitir y renovar certificados SSL en muy poco tiempo. Sin embargo, Ómnibus es solo para Debian basado en el sistema y no funcionará en RHEL o sus derivados, por lo tanto, debemos configurar Mattermost en Rocky Linux paso a paso.

Pasos para instalar Mattermost en Rocky Linux 8

1. Ejecutar actualización del sistema

Primero, actualice los paquetes existentes disponibles en su Rocky Linux para asegurarse de que todo estará en su estado más reciente.

sudo dnf update

2. Instale el servidor MySQL en Rocky Linux

Si ya tiene un servidor instalado con la base de datos MySQL, puede omitir este paso. De lo contrario, utilice el siguiente comando para instalar el servidor MySQL en Rocky Linux para almacenar los datos que generará Mattermost.

sudo dnf install mysql-server

Una vez completada la instalación, asegúrese de que el servicio MySQL esté habilitado y ejecutándose...

sudo systemctl enable --now mysqld

sudo systemctl start mysqld

Comprobar el estado-

sudo systemctl status mysqld

Asegure la instalación de su servidor de base de datos.

sudo mysql_secure_installation

Mientras ejecutamos el comando anterior, nos pedirá que configuremos una contraseña para Mysql y eliminemos otras cosas que hacen que la base de datos sea vulnerable.

3. Crear base de datos para Mattermost

Ahora, iniciemos sesión en nuestro servidor MySQL y creemos una base de datos para usar más tarde con la instalación de Mattermost.

Para iniciar sesión como usuario raíz, escriba-

mysql -u root -p

Crear base de datos:

Reemplazar h2sdb con el nombre que le quieras dar a tu base de datos.

CREATE DATABASE h2sdb;

Luego, cree un usuario de la base de datos.

Aquí h2suser el nombre de usuario y contraseña es la contraseña que usamos para ello. Puede cambiar estos valores...

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

Asignar todos los derechos de la base de datos al usuario creado.

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

Vuelva a cargar las tablas de concesión y salga-

flush privileges;

exit;

4. Instale el servidor Mattermost en Rocky Linux 8

Ahora, descarguemos la última versión del servidor Mattermost para instalar. Para ello, vaya al sitio web oficial descargue la página y copie la última URL de descarga del archivo tar y utilícela con wget comando en su terminal Rocky Linux para obtenerlo. Mientras escribía este artículo, la última versión disponible era 5.34.2, si es lo mismo en su caso, también puede usar el siguiente comando.

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

Extraer y mueva el archivo descargado a /opt directorio. Para que no lo eliminemos accidentalmente.

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

Crear directorio de datos en la carpeta copiada para almacenar datos-

sudo mkdir /opt/mattermost/data

5. Crear usuario y Grupo

Por razones de seguridad, crearemos un usuario y un grupo separados para Mattermost en Rocky Linux. Tendrá derecho a gestionar y acceder a los servicios de Mattermost.

Agregar usuario y grupo llamados mattermost

sudo useradd --system --user-group mattermost

Proporcione al usuario recién creado un derecho a administrar la carpeta copiada en /opt directorio.

sudo chown -R mattermost:mattermost /opt/mattermost

Establecer permisos de lectura y escritura.

sudo chmod -R g+w /opt/mattermost

6. Configurar el controlador de la base de datos y la fuente de datos en

Edite el archivo de configuración y cambie dos cosas:el nombre del controlador de la base de datos y la fuente de datos:

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

Controlador de base de datos:

Use las teclas de flecha del teclado y desplácese hacia abajo hasta que encuentre los valores de DriverName en la configuración de SQL. De forma predeterminada, se configurará para PostgreSQL y, si está utilizando MySQL, cámbielo a mysql .

Establezca "Nombre del controlador ” :”mysql

A continuación, justo debajo, encontrará la fuente de datos línea que es-
"postgres://mmuser:<mmuser-password>@<host-name-or-IP>:5432/mattermost?sslmode=disable&connect_timeout=10".

Cambiar eso con el de abajo y también reemplace el negrita texto

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

Reemplazar

mmuser –  Con su usuario de base de datos MySQL

mmuser-password- Reemplace con la contraseña de la base de datos

<host-name-or-IP> Escriba su dirección IP del servidor de base de datos . Si está utilizando el mismo servidor para la base de datos Mattermost y MySQL, luego reemplácela con localhost o 127.0.0.1

mattermost – Bórralo escribe el nombre de tu base de datos.

Ejemplo – Si usa nuestro valor de base de datos MySQL, esta línea de fuente de datos será así

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

Guarde y cierre el archivo presionando Ctrl+X , escriba y, y pulsa Intro Clave.

Prueba que todo funciona bien

Cambie al directorio de mattermost e inicie su servidor-

cd /opt/mattermost

sudo -u mattermost ./bin/mattermost

Verá un texto donde el servidor está escuchando en el puerto 8065 que muestra que está funcionando y que el archivo de configuración es válido. Para detenerlo, presione Ctrl+C.

7. Cree un archivo de servicio de sistemas Mattermost en Rocky Linux

Para ejecutar el servicio de esta plataforma de mensajería gratuita en segundo plano que se puede detener o comenzar a usar el comando systemctl, creemos un archivo de configuración para el mismo.

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

Copie el código que se indica a continuación.

[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

Guarde el archivo presionando ctrl+x luego escriba- Y y pulsa Intro Clave.

Hacer el archivo ejecutable-

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

Vuelva a cargar los servicios systemd-

sudo systemctl daemon-reload

8. Habilitar e Iniciar su Servicio

Ahora, habilite el archivo de servicio creado anteriormente para que se ejecute con el arranque del sistema y también inicie el mismo.

sudo systemctl enable mattermost.service

Empieza-

sudo systemctl start mattermost.service

Comprobar estado-

sudo systemctl status mattermost.service

Para salir- Ctrl+C

9. Acceda a la interfaz web de Mattermost

Si desea acceder a este servidor de chat utilizando la dirección IP, primero abra el número de puerto 8065 en tu Rocky Linux

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

Ahora, abre tu navegador web y apúntelo a la dirección IP del servidor donde instaló Mattermost. Por ejemplo, si la dirección IP de su servidor es 192.168.0.108, la URL será así:

192.168.0.108:8065

Encontrarás esto- 

Ingrese su dirección de correo electrónico y otras cosas para crear una cuenta.

10:Usar dominio completo y puerto 80/443

Hay dos formas de usar FQDn, sin embargo, ambas requieren primero el mapeo del dominio con la dirección IP del servidor usando el servidor DNS.

Primer método:

Si desea utilizar el FQDn estándar en lugar de la dirección IP para acceder al servidor, primero dirija el dominio a la dirección IP del servicio de Mattermost y luego vaya a Consola del sistema. y seleccione servidor web .

Allí ingrese el dominio del sitio web o la URL que debe apuntar a su servidor. Y si no quiere usar el número de puerto 8065 con el dominio, reemplácelo con 80 o 445.

Una vez configurado, pruebe la URL en vivo. Si funciona bien, puede usar la opción Let's Encrypt que se proporciona allí para obtener el certificado SSL gratuito.

Segundo método

Uso del proxy inverso de Nginx

Aunque podemos apuntar directamente el nombre de dominio a la dirección IP de su servidor para acceder a Mattermost usando un dominio completamente calificado, sin embargo, para mejorar la seguridad, instalemos Nginx como un proxy inverso.

sudo dnf install epel-release
sudo dnf install nginx

Habilitar y comenzar

sudo systemctl enable --now nginx
sudo systemctl start nginx

Crear archivo de configuración 

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

Pegue el siguiente código y reemplace mattermost.how2shout.com con el nombre de dominio que desea utilizar…

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;
}
}

Guarda el archivo- Ctrl+X , presione Y, y pulsa Intro clave.

Compruebe que el archivo de configuración funciona sin ningún error-

sudo nginx -t

Reiniciar servidor Nginx

sudo systemctl restart nginx

Abrir los puertos 80 y 443 en el firewall del servidor

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

Ahora, si ha apuntado su dominio a la dirección IP del servidor, podrá acceder a él en el navegador. Sin embargo, habrá un error de certificado SSL. Por lo tanto, para eliminar eso, instale uno usando Let's Encrypt.

Para obtener más información, consulte la documentación oficial de Mattermost.


Rocky Linux
  1. Cómo instalar Mattermost Server en Rocky Linux 8

  2. Cómo instalar Python 3.9 en Rocky Linux 8

  3. Cómo instalar Rocky Linux 8.4

  4. Cómo instalar el servidor MariaDB en Rocky Linux

  5. Cómo instalar Redis en Rocky Linux 8

Cómo instalar el servidor MariaDB en Rocky Linux 8

Cómo instalar PHP 7.4 en Rocky Linux 8

Cómo instalar Mattermost en Rocky Linux 8

Cómo instalar Python 3.9 en Rocky Linux

Cómo instalar PHP 8 en Rocky Linux 8

Cómo instalar Nginx en Rocky Linux 8