Autoalojar Matrix en un VPS.
Synapse + Element. Federado. Cifrado de extremo a extremo.
Matrix es lo que sería el correo electrónico si hubiera sido diseñado para el chat en la era de los protocolos abiertos. Synapse como homeserver, Element como cliente, PostgreSQL como almacén, Caddy como puerta de entrada — y un grafo de salas federadas que no pertenece a nadie en particular.
- 01
Synapse es el homeserver predeterminado correcto en 2026 — la implementación de referencia probada en producción con todas las funciones. Conduit y Dendrite son válidos para casos de uso más específicos.
- 02
Cambie a PostgreSQL desde el primer día; el SQLite predeterminado es solo para pruebas y falla con más de un puñado de usuarios. Planifique disco para las subidas de medios — las salas federadas los acumulan rápidamente.
- 03
El registro cerrado es el valor predeterminado seguro. El registro público es trabajo de moderación real; solo actívelo si está dispuesto a asumirlo.
Matrix en cinco frases. Lo que está desplegando realmente.
Matrix es un protocolo abierto de comunicación en tiempo real. Un homeserver es un servidor que ejecuta el protocolo; los usuarios pertenecen a un homeserver cada uno, identificados como @alice:example.com — el mismo patrón que el correo electrónico. Las salas son las unidades de conversación; una sola sala puede tener miembros de muchos homeservers diferentes, y el estado de la sala se replica en todos los homeservers participantes. Las salas privadas cifran cada mensaje con claves por dispositivo (Olm/Megolm) para que el servidor solo vea texto cifrado. Toda la red es un grafo de homeservers que federan el estado de las salas entre sí.
Las propiedades interesantes: ninguna autoridad central puede apagar Matrix (el protocolo es abierto y funciona en todas partes), los usuarios en diferentes servidores se comunican de forma transparente (federación), las salas privadas tienen cifrado de extremo a extremo adecuado (no cifrado en tránsito de tipo publicitario), y un usuario puede cambiar de homeserver y mantener su identidad ejecutando el suyo propio. La contrapartida es la complejidad operativa — ejecutar un homeserver es más trabajo que iniciar sesión en Discord — y un ecosistema de clientes pulidos más pequeño que el de las plataformas propietarias.
Lo que despliega en esta guía: Synapse (el homeserver), PostgreSQL (su base de datos), Element Web (el cliente de navegador, alojado desde su propio dominio) y Caddy (el proxy inverso + TLS automático). Opcionalmente un backend de almacenamiento de medios y los endpoints well-known para el descubrimiento de federación. Todo el stack son dos archivos Docker Compose y una configuración de Caddy.
Dimensionamiento. Synapse tiene forma de memoria.
Synapse guarda el estado por sala en memoria, y unirse a una gran sala federada (como #matrix:matrix.org con 60.000 miembros) carga mucho de ese estado en su homeserver. El resultado es que incluso un Synapse de un solo usuario puede usar 2–3 GB de RAM de forma constante si el usuario está en salas federadas concurridas. Planifique en consecuencia.
Usuario único, federación moderada. 2 vCPU, 4 GB RAM, 40 GB SSD. El <a href="/es/vps/" class="text-nord-cyan border-b border-nord-cyan/40 hover:border-nord-cyan transition">nivel Ravelin ($5,90/mes)</a> de NordBastion está correctamente dimensionado. El disco crece aproximadamente 10 GB al año para un usuario único activo; tenga en cuenta ese margen al aprovisionar.
Equipo pequeño, 5–20 usuarios. 4 vCPU, 8 GB de RAM, 100 GB de SSD. El nivel Iron ($24.90/mes) lo maneja cómodamente. Ejecutar PostgreSQL en el mismo VPS; la base de datos cabe en la RAM y el disco disponibles.
Homeserver público, más de 100 usuarios. Con más de 100 usuarios activos, Synapse se beneficia de procesos de trabajo (trabajadores separados de envío de federación, lectura de federación, lectura de cliente) y un PostgreSQL optimizado. Los niveles Iron o Granite lo manejan, pero la complejidad operativa crece de forma no lineal — a esa escala es un administrador de Matrix además de un usuario de software.
Realidad del disco. Los medios subidos (imágenes, videos, archivos) de salas federadas se acumulan en su homeserver porque la federación de Matrix descarga los medios localmente para servirlos. Un homeserver público concurrido puede añadir 1 GB de medios por semana. La configuración media_retention de Synapse permite podar el contenido más antiguo; revísela una vez por trimestre.
La instalación con Docker Compose. Synapse, PostgreSQL, Element.
Inicie un VPS de Debian 12 nuevo, apunte tres registros DNS hacia él: matrix.example.com (el nombre de host del homeserver), element.example.com (el cliente web) y example.com en sí si desea el identificador corto @alice:example.com. Acceda por SSH como usuario sudo.
1. Instalar Docker y Compose. curl -fsSL https://get.docker.com | sh — Docker Engine incluye Compose v2 en el mismo paquete.
2. Generar la configuración de Synapse. mkdir -p ~/synapse/data && docker run -it --rm -v ~/synapse/data:/data -e SYNAPSE_SERVER_NAME=example.com -e SYNAPSE_REPORT_STATS=no matrixdotorg/synapse:latest generate — esto escribe homeserver.yaml. Edítelo: cambie la base de datos de SQLite a PostgreSQL, establezca la URL de medios, establezca enable_registration: false para empezar (por ahora cree usuarios vía el CLI de administración).
3. Escribir docker-compose.yml. Tres servicios: postgres (postgres:16, volumen persistente, locale C), synapse (matrixdotorg/synapse:latest, monta ~/synapse/data, depende de postgres), element (vectorim/element-web:latest, monta un pequeño config.json que apunta a https://matrix.example.com). Mapee solo synapse:8008 y element:80 a localhost; no haga bind a 0.0.0.0.
4. Poner Caddy al frente. Dos sitios en Caddyfile: matrix.example.com proxy hacia 127.0.0.1:8008 (Synapse) en ambos puertos 443 y 8448 (el puerto de federación); element.example.com proxy hacia 127.0.0.1:8001 (Element Web). Caddy obtiene los certificados Let's Encrypt automáticamente.
5. Descubrimiento de federación (.well-known). Añada dos archivos JSON estáticos en example.com: /.well-known/matrix/server que devuelva {"m.server": "matrix.example.com:443"} y /.well-known/matrix/client que devuelva {"m.homeserver": {"base_url": "https://matrix.example.com"}}. Esto permite que los identificadores cortos @alice:example.com se resuelvan correctamente. Verifique con el Federation Tester en federationtester.matrix.org.
6. Crear el primer usuario. docker exec -it synapse register_new_matrix_user -u alice -p <contraseña> -a -c /data/homeserver.yaml http://localhost:8008 — eso crea una cuenta de administrador. Inicie sesión vía https://element.example.com.
Element, marca, política de registro. Las decisiones que perduran.
Configuración de Element. Element Web lee un config.json que apunta a su homeserver, establece el tema predeterminado, la marca y la lista de «salas sugeridas» para las nuevas cuentas. Establezca default_server_config.m.homeserver.base_url en https://matrix.example.com, la marca en el nombre de su proyecto y deshabilite el campo brand_url que sugiere matrix.org. Los nuevos usuarios aterrizan en Element Web apuntando a su servidor, no al de otro.
Política de registro. Tres modos: cerrado (solo el administrador puede registrar usuarios vía CLI; la postura de moderación más limpia), basado en tokens (genera tokens de registro vía la API de administración y los comparte; mejor para un grupo pequeño), abierto (cualquiera puede registrarse; solo habilítelo si tiene intención de operar un homeserver público con herramientas de moderación). Empiece cerrado y solo relaje si tiene una razón.
Lista de bloqueo de federación. Synapse admite federation_domain_whitelist (solo lista de permitidos) y bloqueos por servidor a través de la API de administración. Para la mayoría de los homeservers públicos, el valor predeterminado es «federar con todo», con bloqueos reactivos de servidores abusivos según sea necesario. El bot Mjolnir automatiza esto si se convierte en un objetivo.
Copias de seguridad. Volcado nocturno de PostgreSQL + tarball de ~/synapse/data, enviado fuera del servidor vía rclone a un segundo VPS o bucket B2. Ambos son necesarios; la base de datos contiene el estado de las salas y las cuentas, el directorio de datos guarda las claves de firma y los medios. Pruebas de restauración cada trimestre, como con cualquier copia de seguridad.
La realidad de la moderación. Lo que el autoalojamiento significa realmente.
Ejecutar un homeserver de Matrix significa aceptar que el operador es responsable de lo que hace el servidor. En un homeserver privado solo por invitación, esa responsabilidad es pequeña — conoce a cada usuario. En un homeserver público, la responsabilidad escala con la base de usuarios.
Abuso entrante. Una sala pública federada puede verse involucrada en coordinación de abusos, volcados de imágenes o acoso. Synapse expone endpoints de la API de administración para vetar a un usuario (en todas las salas), bloquear un homeserver (sin más federación) y forzar a un servidor a abandonar una sala. El bot Mjolnir agrupa estas acciones en un flujo de trabajo de sala de moderación; el fork Draupnir es su continuación con mantenimiento activo.
Abuso saliente. Una cuenta de usuario comprometida puede publicar contenido abusivo en salas federadas, lo que daña la reputación del servidor ante el resto de la red. Dos medidas de mitigación: limitar la tasa por usuario (los límites por defecto de Synapse son razonables) y requerir verificación por correo electrónico para las nuevas cuentas (eleva el listón ante el registro automatizado).
Postura legal. En la UE, el rol de proveedor de infraestructura otorga fuertes protecciones de responsabilidad de intermediario (Artículo 14 de la Directiva de Comercio Electrónico, Artículo 6 del DSA) — no es responsable del contenido del usuario siempre que responda a las notificaciones de retirada. Las jurisdicciones nórdicas amplían esto con protecciones constitucionales explícitas de libertad de prensa. El mismo homeserver ejecutado en una jurisdicción sin protecciones de intermediario es operativamente más arriesgado; elija la ubicación del proveedor en consecuencia.
El valor predeterminado seguro. Registro solo por invitación, federación habilitada con bloqueos reactivos, Mjolnir / Draupnir instalado pero sin usar hasta que sea necesario, términos de servicio publicados en el sitio web del homeserver con una política de uso aceptable clara. Esa postura cubre al 95% de los operadores sin esfuerzo adicional.
Por qué importa el proveedor. El cifrado protege el contenido, el proveedor protege los metadatos.
El E2EE de Matrix protege el cuerpo de los mensajes — el servidor solo guarda texto cifrado en las salas privadas. Lo que no protege son los metadatos: qué homeservers se federan entre sí, qué usuarios están en qué salas, cuándo están en línea, con qué frecuencia envían mensajes, cuáles son sus dispositivos. Ese grafo de metadatos vive en el homeserver y en los homeservers con los que se federa, y está técnicamente fuera del alcance de la capa de cifrado.
Un homeserver ejecutándose en un VPS vinculado a KYC vincula el grafo de metadatos a la identidad legal del operador. Una orden judicial al proveedor revela no solo la base de datos cifrada, sino también el vínculo entre el identificador @alice:example.com y un nombre real. El cifrado sigue siendo válido; la capa de metadatos queda expuesta.
La postura de NordBastion es la inversa: <a href="/es/doctrine/" class="text-nord-cyan border-b border-nord-cyan/40 hover:border-nord-cyan transition">registro sin KYC</a>, pago en criptomonedas, jurisdicciones constitucionales nórdicas. El servidor doméstico es suyo; el vínculo entre el servidor y un nombre real no existe; el régimen legal que rige el disco cuenta con protecciones explícitas de libertad de prensa. La combinación encaja con el modelo de seguridad del propio Matrix: tanto la capa criptográfica de contenido como la capa operativa de metadatos quedan protegidas.
Preguntas, respondidas.
Ocho preguntas que surgen al ejecutar un homeserver de Matrix en 2026.
¿Qué es Matrix y en qué se diferencia de Discord o Slack?
Matrix es un protocolo de comunicación en tiempo real federado y de estándar abierto — piense en SMTP para el chat. Cualquiera ejecuta un homeserver (Synapse, Dendrite, Conduit), los usuarios en diferentes homeservers se comunican entre sí de forma transparente, cada mensaje en una sala privada está cifrado de extremo a extremo por defecto, ninguna empresa central controla la red. Discord y Slack son centralizados, propietarios, y la empresa aloja cada conversación. La contrapartida: Matrix tiene una complejidad operativa ligeramente mayor y un ecosistema de clientes pulidos más pequeño, pero usted es dueño de cada byte.
Synapse, Dendrite o Conduit — ¿qué homeserver?
Synapse es la referencia, escrito en Python, la opción más completa en funciones y probada en producción. Consume mucha memoria. Dendrite es la nueva reescritura en Go, mucho más ligera, falta alguna función de moderación avanzada pero cierra rápidamente la brecha. Conduit es la tercera opción, un homeserver en Rust centrado en un consumo de recursos mínimo, adecuado para un homeserver de usuario único en un VPS económico. Use Synapse por defecto a menos que tenga una razón específica — la documentación, las herramientas de moderación y los puentes de terceros asumen Synapse.
¿Cuánto VPS necesito para un homeserver de Matrix?
Usuario único federado a la red Matrix más amplia — 2 vCPU, 4 GB de RAM, 40 GB de SSD es el mínimo práctico. Equipo pequeño (5–20 usuarios) — 4 vCPU, 8 GB de RAM, 100 GB de SSD. Los niveles Ravelin o Iron cubren ambos casos. El recurso dominante es la RAM (Synapse mantiene mucho estado de sala en memoria) y el disco (las subidas de medios y el historial de salas federadas crecen continuamente).
¿Debo habilitar la federación?
Casi siempre sí — ese es el punto central de Matrix. La federación permite que sus usuarios hablen con cualquiera en matrix.org, mozilla.org, kde.org y los miles de otros homeservers. Las excepciones: un servidor privado interno de equipo donde no quiere que nadie descubra las salas; un modelo de amenaza de alto riesgo donde los patrones de tráfico de federación filtran información; un servidor que aloja contenido sensible donde desea un control estricto de membresía. Deshabilitar la federación más adelante está bien; volver a habilitarla lo hace descubrible.
¿Las salas privadas están cifradas de extremo a extremo por defecto?
Sí — todos los clientes Element habilitan E2EE por defecto para nuevos mensajes directos y salas privadas. El cifrado es Olm/Megolm por sala con verificación de dispositivos de firma cruzada. El servidor solo ve texto cifrado para el cuerpo del mensaje. Las salas públicas no están cifradas por diseño (dado que cualquiera puede unirse, el cifrado no protegería nada). Las salas públicas federadas son visibles para cualquiera — que es el punto de una sala pública.
¿Cuál es la realidad de la moderación al ejecutar un homeserver público?
Es trabajo real. Si permite el registro público, su homeserver se federará con salas de spam, será arrastrado a salas de coordinación de abusos y ocasionalmente mostrará contenido objetable de servidores federados. Administrar un homeserver público requiere la voluntad de aplicar baneos a nivel de servidor, bloquear servidores hostiles de la federación y responder a informes de abuso. Para la mayoría de los operadores, la postura correcta es el registro cerrado (solo por invitación) — cada usuario es alguien que conoce, y la superficie de abuso cae a prácticamente cero.
¿Puedo usar mi homeserver de Matrix como sustituto de Slack / Discord en el trabajo?
Sí — Element Server Suite y la combinación subyacente Synapse + Element Web cubren el conjunto de funciones de «chat de equipo con salas persistentes, hilos, reacciones, reuniones de voz/video». La principal brecha respecto a Slack son las integraciones de terceros (menos aplicaciones preintegradas); la principal brecha respecto a Discord son los canales de voz pulidos. Ambas son viables pero requieren algo de esfuerzo del operador. Para un equipo pequeño que valora la soberanía de datos sobre el pulido, el intercambio merece claramente la pena.
¿Por qué importa el proveedor al que alquilo el VPS para un servidor Matrix?
Porque el protocolo de chat federado crea metadatos persistentes sobre quién habla con quién y cuándo en el homeserver. Esos metadatos son ricos (grafo de salas federadas, eventos de federación, subidas de medios). Ponerlo en un proveedor con KYC vincula los metadatos a su identidad; ponerlo en un proveedor en una jurisdicción hostil significa que un actor estatal puede exigirlos. Un VPS nórdico sin KYC alinea la postura de metadatos del proveedor con la postura criptográfica del protocolo — ambas mitades de la historia de privacidad.
Un VPS nórdico para su servidor doméstico. Sin KYC, pago en criptomoneda.
Ravelin (2 vCPU, 4 GB, $5.90/mes) cubre un Synapse de un solo usuario con federación. Iron (4 vCPU, 8 GB, $24.90/mes) es la respuesta para equipos pequeños.
Última revisión · 2026-05-20 · Fuentes · Documentación upstream de Synapse, referencia de configuración de Element, especificación de Matrix, Artículo 6 del DSA de la UE · Cadencia · anual
Anonymous VPS hosting in 2026 — the cluster.
This guide is one spoke of a larger series. The pillar walks the three privacy layers end to end — the sibling spokes below dive into the specifics.
Three independent layers — signup, payment, network — explained, legal context included, common mistakes flagged.
Fediverse instance, Docker Compose, federation-ready in 90 min.
What “no KYC” actually means — and what it does not.
Why Sweden, Finland, Norway and Iceland — the legal floor of each.
XMR end-to-end — wallet, transfer, confirmations, change.