Running My Own XMPP Server
Choosing a Messaging Platform: UX vs Security vs Control
- Several commenters recount moving from self-hosted Matrix/XMPP to Telegram or Signal because of poor UX, accessibility, or mobile/desktop sync issues.
- Telegram is praised for UX, stickers, and feature richness, but heavily criticized as “deeply insecure” (home-rolled crypto, E2EE not default, no group E2EE, scams/ads).
- Signal is seen as more secure but criticized for: phone-number requirement, mobile-first account model, weak desktop integration, and non-federated, single-operator control.
- Some explicitly want something “like Signal but federated,” others accept centralization for convenience.
Matrix vs XMPP: Complexity and Resource Usage
- Multiple experiences: Matrix/Synapse is resource-hungry, fragile on upgrades, and dominates VPS resources; some abandon self-hosting Matrix for lighter XMPP.
- One detailed comparison:
- XMPP: simple core, many optional XEPs → fragmentation and feature mismatch across clients.
- Matrix: heavy complexity in the core (DAG event graph, full room history) → good consistency guarantees but expensive to run.
- Question raised why “we ditched XMPP” for Matrix; responses say big tech abandoned federated XMPP for business reasons, not because it was technically worse.
XMPP Self-Hosting and Tooling
- Long-term XMPP admins report ejabberd/Prosody “just work” for years with minimal resources.
- ejabberd seen as more monolithic and admin-friendly (bundled TURN, ACME), Prosody as flexible but needing more protocol knowledge.
- Snikket is highlighted as a preconfigured Prosody-based stack aimed at “self-hosted WhatsApp/Signal for family,” with invites, bundled TURN/STUN, and branded, tested clients.
- Bridges like slidge (Signal/WhatsApp/Telegram → XMPP) and jmp.chat (phone ↔ XMPP) are suggested, with explicit warnings that bridging can nullify E2EE.
Client Quality and Mobile Pain Points
- Matrix: clients often buggy; some report months-long broken image sending in FluffyChat and heavy Synapse; Linux Matrix clients described as poor.
- XMPP: Android’s Conversations strongly praised; Movim liked for web, GIFs, and AV calls; Dino and Gajim noted as improving.
- iOS XMPP clients (Monal, Siskin) criticized for UI bugs and especially unreliable notifications, making them unusable as primary phone/SMS replacement for some.
Encryption and Trust
- OMEMO is described in the article as “Signal-like”; commenters share links criticizing OMEMO’s design and warning that similarities to Signal are overstated.
- Others argue those critiques are opinionated and partially corrected, but agree that current XMPP+OMEMO ecosystem is not a drop-in “Signal competitor.”
- Signal’s explicit hostility to federation and third‑party clients is viewed by some as a trust and longevity concern compared to open protocols like XMPP.