I’ve been using Signal for many years now, and it fulfils most of my messaging needs. But last year’s AWS outage, which took it offline for almost a day, showed one of its many flaws: Signal is highly centralised and reliant on big tech infrastructure.

I was therefore wondering if I shouldn’t start self-hosting my own messaging infrastructure - maybe not for my day-to-day needs, but as an emergency fallback for my closest friends and family, should Signal fail again or become unavailable or compromised (looking at you, EU Chat Control!).

My first thought was to self-host my own Matrix/Synapse server, which ticks a lot of boxes for me: end-to-end encryption, media sharing (pics, audio, videos, all that good stuff), high availability of mobile clients with modern UIs, potentially even audio/video calls. The latter is still giving me a headache since apparently, I need a TURN server to get this working properly, and I’m somewhat reluctant to open so many ports just for it to work…

What’s your perspective on self-hosting messengers: which ones do you prefer? What is your primary motivation to do it? And how have you set it up?

  • artyom@piefed.social
    link
    fedilink
    English
    arrow-up
    1
    ·
    8 minutes ago

    Matrix is the most popular one these days, and it’s worth considering just for that reason, but it is also extremely buggy and slow. I can’t tell you how many timed I’ve been booted and locked out of my own account, or someone sends me a message, only to receive “message cannot be decrypted” error.

    If you’re starting something new that you’re bringing other people to, I’d very much recommend DeltaChat/ArcaneChat (chatmail). It’s been far more reliable and easier to use.

  • lambalicious@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    9
    arrow-down
    1
    ·
    2 hours ago

    Self-hosted messaging was solved decades ago, it’s called XMPP or Jabber depending on who do you ask. There are a number of services for it, such as Prosody or ejabberd, and there are both client apps (eg.: Conversations for Android, Gajim or Dino for PC) and a number of webclients (such as converse.js which can actually be shipped via a ejabberd install).

    That said you could just set up an alternative Signal client that allows for custom servers, since the centralization of Signal only really exists at the level of the client only connecting to Signal’s servers… Signal’s people have pointed this out themselves, when offering bridge setups so that people could connect from Iran or other countries where those countries blocked Signal’s endpoints.

  • TheMightyCat@ani.social
    link
    fedilink
    English
    arrow-up
    1
    ·
    30 minutes ago

    I host a matrix tuwunel server and can recommend it.

    My motivations are that it gives greater control, and i think federated platforms are better.

    I have it set up on a hetzner vps running debian, which tuwunel provides an official package for.

  • ShredderFeeder@shredderfood.net
    link
    fedilink
    English
    arrow-up
    11
    ·
    2 hours ago

    Matrix/Synapse is pretty easy to set up… the encryption is a bit on the kludgy side, but it definitely works… I run it over a cloudflare tunnel (inbound) and perm-VPN tunnel (outbound)

    I can give you a sample docker-compose file I use if you’d like. ;-)

    • LewdLemon@sh.itjust.worksOP
      link
      fedilink
      English
      arrow-up
      5
      ·
      2 hours ago

      Thank you so much for your offer! I’ve actually set it up last night and it’s running fine so far. It’s just that it won’t relay any calls if either of the devices is not on my network. Tunneling back into the network via VPN might be an option, but make it more cumbersome to use for some of the less techy folks around me.

      What’s your primary reason to self-host Synapse? And who do you use it with?

      • ShredderFeeder@shredderfood.net
        link
        fedilink
        English
        arrow-up
        3
        ·
        2 hours ago

        Getting off corporate messaging…I use it for family and friends, people I know personally… But it is fully federated so I can get to some of the groups and such… matrix community servers and the like. :)

        Mostly I started investigating it when Discord started talking about age-verification… Figured it was a good idea to have an exit strategy…

  • drkt@scribe.disroot.org
    link
    fedilink
    English
    arrow-up
    5
    ·
    2 hours ago

    If you’re going with Matrix, consider looking at Synapse alternatives. Synapse is by a huge margin the heaviest of the backends to run and it doesn’t really get you anything extra.