Guía de despliegue

Migrar de Slack a Mattermost o Rocket.Chat en un VPS

Desplegar en un VPS Cloud →

Comparativa

Migrar de Slack a Mattermost o Rocket.Chat en un VPS

Comparativas9 min de lectura14 pasos

Cuando Slack reclama 50 000 $ al contado y luego 200 000 $ al año para no eliminar once años de historial —como le ocurrió a Hack Club—, la cuestión ya no es comparar planes, sino saber a quién pertenece realmente su historial de comunicación. Mattermost y Rocket.Chat responden a esa pregunta con el autoalojamiento: sus conversaciones, sus canales, sus integraciones, en un VPS que usted controla. Esta guía cubre los requisitos previos, la exportación de Slack, el despliegue con Docker y la importación del historial.

Contenido· Por qué migrar desde Slack se vuelve urgente1/10
  1. 01Por qué migrar desde Slack se vuelve urgente
  2. 02Los beneficios concretos de autoalojar una mensajería de equipo
  3. 03Mattermost vs Rocket.Chat vs Slack Enterprise
  4. 04Requisitos del servidor antes de empezar
  5. 05Exportar el historial de Slack
  6. 06Desplegar Mattermost en un VPS con Docker
  7. 07Importar el historial de Slack en Mattermost
  8. 08Alternativa: Rocket.Chat para un soporte al cliente unificado
  9. 09SSO y autenticación: aproveche el self-hosting
  10. 10Solución de problemas: los errores más frecuentes

Por qué migrar desde Slack se vuelve urgente

En 2024, Hack Club recibió una exigencia de Slack: 50 000 $ de inmediato y después 200 000 $ al año, so pena de que se eliminaran once años de historial comunitario. No es un caso aislado: es la lógica de un proveedor que sabe que su historial es un activo estratégico y que lo ha convertido en la palanca de su plan Enterprise. Dos mecanismos de bloqueo se acumulan. El primero es el historial: en los planes gratuito y Pro, Slack solo expone una ventana deslizante; acceder a la totalidad exige el plan Business+ o Enterprise Grid. El segundo es el SSO: la conexión a través de su proveedor de identidad (Okta, Azure AD, Google Workspace) está reservada al plan Enterprise, facturado en torno a 20 $ por usuario y mes. Para un equipo de cincuenta personas, son 12 000 $ al año por una funcionalidad que Mattermost y Rocket.Chat ofrecen de forma nativa desde la instalación. La pregunta que se plantea no es, por tanto, «¿es bueno Slack?» —lo es—, sino «¿a qué precio aceptamos depender de un proveedor para acceder a nuestras propias conversaciones con clientes?».

Los beneficios concretos de autoalojar una mensajería de equipo

  • Historial sin límite — todas sus conversaciones, canales y archivos adjuntos siguen accesibles indefinidamente y sin sobrecosto.
  • SSO y LDAP nativos y gratuitos — conecte su directorio corporativo sin desbloquear un plan enterprise en el proveedor.
  • Datos bajo su control — las conversaciones con clientes, los contratos discutidos por DM y los archivos compartidos permanecen en su infraestructura.
  • Costo previsible — un VPS mensual fijo, no una suscripción indexada al crecimiento de su equipo.
  • Integraciones a medida — webhooks, bots y API accesibles sin restricciones de plan.
  • Cumplimiento más sencillo — retención configurable, exportación bajo demanda y audit log para responder a las exigencias legales o contractuales.
  • Independencia frente a las decisiones del proveedor — sin cambios de tarifa sorpresa, sin una ventana de 30 días para adaptarse.

Mattermost vs Rocket.Chat vs Slack Enterprise

Desplace la tabla

CriterioMattermost (self-hosted)Rocket.Chat (self-hosted)Slack Enterprise Grid
LicenciaMIT (servidor) / Apache 2.0AGPL-3.0Propietaria
RAM mínima2 GB (equipo < 50)4 GB (replica set de MongoDB obligatorio)SaaS, sin servidor que gestionar
SSO / SAML / LDAPGratis en self-hostedGratis en self-hosted~20 $/usuario/mes (plan Enterprise)
Historial completoCompleto, en su discoCompleto, en su discoCondicionado al plan de pago
Omnicanal (live chat, email, WhatsApp…)Limitado (extensiones comunitarias)Nativo y completoNo (solo mensajería interna)
Importación desde SlackHerramienta oficial `mattermost import slack`Importación de Slack desde la interfaz de administraciónNo aplica

Requisitos del servidor antes de empezar

La elección entre Mattermost y Rocket.Chat se decide ya en los requisitos de hardware. Mattermost utiliza PostgreSQL y puede arrancar con 2 GB de RAM para un equipo de menos de cincuenta personas: un VPS de gama de entrada basta para una migración inicial. Rocket.Chat se apoya en MongoDB en modo replica set: incluso con un solo nodo, el replica set es obligatorio desde la versión 6, lo que eleva las necesidades a 4 GB de RAM como mínimo. En el plano del software, ambos requieren Docker y Docker Compose instalados, un subdominio dedicado (por ejemplo chat.votredomaine.com) con un certificado SSL válido, y un servidor SMTP para las notificaciones por email y las invitaciones. Abra el puerto 443 de entrada y compruebe que WebSocket no está filtrado por su firewall o su proxy: es el primer punto de bloqueo que aparece tras la instalación. Por último, prevea espacio en disco proporcional al volumen de archivos compartidos que piensa importar: el historial de Slack puede pesar varios gigabytes si su equipo comparte adjuntos con regularidad.

Exportar el historial de Slack

  1. Acceder a la exportación desde la administración de Slack

    Inicie sesión como administrador del espacio de trabajo y vaya a Configuración y administración > Gestión del espacio de trabajo > Importar/exportar datos. La pestaña Exportar está disponible en el plan Pro y superiores.

  2. Elegir el rango de fechas y lanzar la exportación

    Seleccione «Todos los mensajes» para exportar la totalidad del historial accesible. Slack genera un archivo ZIP que contiene un fichero JSON por canal público, los metadatos de los usuarios y la lista de los canales. Los canales privados y los DM solo se incluyen si dispone de un plan Business+ o Enterprise.

  3. Descargar el archivo y comprobar su contenido

    Cuando la exportación esté lista (de unos minutos a varias horas según el volumen), descargue el archivo ZIP. Descomprímalo localmente y compruebe que están las carpetas de canales, el archivo users.json y channels.json. Son los tres archivos que espera la herramienta de importación de Mattermost.

  4. Transferir el archivo al VPS

    Copie el archivo a su servidor con scp slack_export.zip user@votre-vps:/opt/mattermost/imports/. Evite descomprimirlo en el servidor antes de la importación: la herramienta de Mattermost trabaja directamente sobre el ZIP.

Desplegar Mattermost en un VPS con Docker

  1. Crear la estructura de carpetas

    En el VPS, cree el directorio de trabajo: mkdir -p /opt/mattermost/{config,data,logs,plugins,client/plugins,bleve-indexes,imports}. Estas carpetas se montarán como volúmenes Docker y contendrán la configuración, los datos de los usuarios y los archivos importados.

  2. Escribir el docker-compose.yml

    Defina dos servicios: postgres (imagen postgres:15) con un volumen con nombre para los datos, y mattermost (imagen mattermost/mattermost-team-edition:latest). Conéctelos mediante una red interna de Docker y monte las cinco carpetas creadas en el paso anterior. Pase la variable MM_SQLSETTINGS_DATASOURCE apuntando al servicio postgres. Exponga únicamente el puerto 8065 en loopback (127.0.0.1:8065:8065).

  3. Configurar el reverse proxy con Caddy

    Cree un archivo Caddyfile con la siguiente entrada: chat.votredomaine.com { reverse_proxy localhost:8065 }. Caddy obtiene y renueva automáticamente el certificado Let's Encrypt. Reinicie Caddy después de comprobar que el subdominio apunta realmente a la IP del VPS.

  4. Arrancar la stack y crear el administrador

    Ejecute docker compose up -d, espere unos treinta segundos y revise los logs con docker compose logs -f mattermost. Abra https://chat.votredomaine.com en su navegador para crear la cuenta de administrador inicial mediante el asistente de configuración.

  5. Configurar el SMTP y las notificaciones

    En Sistema > Notificaciones > Email, indique su servidor SMTP (host, puerto, credenciales). Envíe un email de prueba antes de continuar: las invitaciones de usuarios y las notificaciones de mensajes dependen de esta configuración.

  6. Activar el SSO o LDAP

    En Sistema > Autenticación, active LDAP o SAML según su directorio. Ambos están disponibles de forma gratuita en autoalojado, sin restricción de plan. Pruebe la conexión con una cuenta de servicio antes de invitar a sus usuarios.

Importar el historial de Slack en Mattermost

  1. Preparar la importación con la herramienta oficial

    La herramienta mattermost import slack viene integrada en el binario de Mattermost. Desde el contenedor Docker, ejecute: docker compose exec mattermost mattermost import slack /mattermost/imports/slack_export.zip --team nomdevotreequipe. La herramienta convierte el formato JSON de Slack al formato Bulk Import de Mattermost y señala las posibles incompatibilidades.

  2. Lanzar el Bulk Import

    Una vez hecha la conversión, Mattermost genera un archivo de importación en formato JSONL. Lance la importación real con docker compose exec mattermost mattermost import bulk /mattermost/imports/mattermost_import.jsonl --workers 1. La opción --workers 1 evita los conflictos de escritura en bases de datos de tamaño modesto.

  3. Comprobar los canales y usuarios importados

    Cuando termine la importación, entre en la interfaz de Mattermost y compruebe que los canales públicos aparecen en el equipo, que los mensajes históricos son visibles con sus autores correctos y que los usuarios importados pueden iniciar sesión (recibirán un email de invitación para definir su contraseña).

  4. Corregir los archivos adjuntos que falten

    La exportación estándar de Slack no incluye los archivos adjuntos en los planes inferiores a Business+. Si faltan adjuntos, los mensajes aparecen con un enlace roto. Documente los canales afectados e informe a sus usuarios: los archivos críticos deberán adjuntarse manualmente.

Alternativa: Rocket.Chat para un soporte al cliente unificado

Si su necesidad va más allá de la mensajería interna e incluye un soporte al cliente en tiempo real, Rocket.Chat es una elección coherente para ese caso de uso. Su módulo omnicanal permite centralizar en una misma interfaz las conversaciones procedentes de un widget de live chat en su sitio, los emails entrantes, los mensajes de WhatsApp Business y los canales de Telegram. Los agentes de soporte ven una cola de tickets unificada, con el historial completo de cada contacto. Este posicionamiento distingue con claridad las dos herramientas: Mattermost es una mensajería de equipo estructurada, cercana a Slack en sus usos; Rocket.Chat es una plataforma de comunicación que absorbe además los canales de clientes externos. La contrapartida es una mayor complejidad en la instalación: el replica set de MongoDB es obligatorio, los recursos mínimos son más altos y la configuración omnicanal exige un ajuste cuidadoso de los enrutamientos y de los agentes. Para una agencia que gestiona intercambios con clientes y quiere consolidar mensajería interna y soporte en una sola plataforma, Rocket.Chat es el candidato natural. Para un equipo técnico que solo busca reemplazar Slack sin complejidad añadida, Mattermost es el camino más directo.

SSO y autenticación: aproveche el self-hosting

En autoalojado, LDAP, SAML 2.0 y la autenticación por certificado de cliente están disponibles sin restricción de plan ni sobrecosto. Configure desde el principio la conexión con su directorio (Active Directory, FreeIPA o su proveedor de identidad en la nube) para que sus usuarios no tengan que gestionar una cuenta más. Active también la autenticación de dos factores (TOTP) en los parámetros de seguridad: tanto Mattermost como Rocket.Chat la integran de forma nativa. Si pasa por un proxy de autenticación como Authelia o Authentik, compruebe que su reverse proxy transmite correctamente las cabeceras X-Forwarded-For y X-Real-IP antes de forzar la autenticación externa.

Solución de problemas: los errores más frecuentes

Cuatro problemas se repiten con regularidad tras una instalación correcta. El primero afecta a MongoDB y Rocket.Chat: si el contenedor arranca y luego se detiene con el error MongoServerError: not master, es que el replica set no se ha inicializado. Conéctese al shell de MongoDB con docker compose exec mongodb mongosh y ejecute rs.initiate(), una sola vez, en el primer arranque. El segundo problema afecta a los WebSockets: si Mattermost muestra «Conexión WebSocket perdida» en bucle, compruebe que su reverse proxy transmite las cabeceras Upgrade y Connection. Con Caddy es automático; con Nginx, añada proxy_http_version 1.1, proxy_set_header Upgrade $http_upgrade y proxy_set_header Connection upgrade en su bloque location. El tercero tiene que ver con las notificaciones móviles: las apps iOS y Android de Mattermost se conectan por defecto al servicio de notificaciones de Mattermost Inc. Si su política de seguridad lo prohíbe, compile su propio servidor de push o desactive las notificaciones móviles en los parámetros del sistema. El cuarto está ligado al SMTP: un envío de prueba que funciona pero invitaciones que nunca llegan suele indicar un problema de SPF o de DKIM en su dominio remitente. Compruebe sus registros DNS y pruebe el envío con mail-tester.com antes de migrar a sus usuarios.

Su mensajería de equipo, en su propia infraestructura

Con un VPS Cloud ServOrbit y la opción de administración, despliegue Mattermost o Rocket.Chat sin ocuparse del bajo nivel. Historial completo, SSO nativo y sus datos en su propia infraestructura.

¿Necesita ayuda?

Consulte nuestro centro de ayuda y nuestra FAQ, o contacte con nuestro equipo: llamada, WhatsApp o correo electrónico. Soporte en francés, inglés y árabe.

Escribir por WhatsAppse abre en una pestaña nueva