this post was submitted on 17 Sep 2026
30 points (100.0% liked)

Selfhosted

62187 readers
725 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

Detailed Rules Post

  1. Be civil.

  2. No spam.

  3. Posts are to be related to self-hosting.

  4. Don't duplicate the full text of your blog or readme if you're providing a link.

  5. Submission headline should match the article title.

  6. No trolling.

  7. Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.

  8. AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 3 years ago
MODERATORS
 

I work with a mutual aid group that currently handles communications with Signal. This is acceptable from a security and privacy perspective, but severely lacking from a discoverability and reference perspective.

I'm looking for a text chat (it's okay if it also supports voice and or video, but we don't really need that) that is kinda similar to Slack or Discord regarding rooms, but that can be self hosted (obviously). Our general workflow is to allow new volunteers to join our "General chat" and then either be invited or join via open link any of the working groups they fancy. What I'm hoping for is a software that can allow us to have all those working groups in a side bar to increase engagement with some of the more behind the scenes options. I'd also love to have the ability to easily retain posts or bookmarks so we can build up quick references where we actually communicate. I haven't found a clean way to handle the general chat for 2 reasons: 1) we would like to keep it open in such a way that anyone who wants to can join, and 2) there's currently over 800 people and we regularly add more.

All told that makes the bulleted requirements for what I'm hoping for be:

  • text chat software
  • rooms/channels
  • ability to pin posts
  • ability to add arbitrary bookmarks or links
  • ability to have rooms either public or private
  • ability to have at least one room anyone can join without prior approval or invite
  • ability to support at least 1000 users (not necessarily concurrent client connections--that can probably be about 50)
  • ideally the communications can be encrypted

What I don't need but might be nice:

  • voice
  • video
  • file share
  • polling
  • reminders
  • plugins

We value data ownership extremely highly hence looking for self hosting options over Slack or Discord. It's okay if the general chat exists in a separate server so long as the main server with all the other rooms can federate with it somehow.

We do have some people with IT experience, and I am software engineer of over a decade so technical barriers in setting it up shouldn't be an issue, but account creation and use for volunteers needs to be dead simple.

If anyone knows of something like this (or even a FOSS tool we may be able to extend functionally to fit the last 1 or 2 bullet points) I would love to hear your suggestions.

Thanks so much!

you are viewing a single comment's thread
view the rest of the comments
[โ€“] litchralee@sh.itjust.works 1 points 2 days ago (1 children)

I think Signal tries to be E2EE but has other problems, including that MLS (the E2EE mechanism) inherently requires a client app instead of being usable with just a browser.

I'm having trouble imagining what in Signal's implementation of the Double Ratchet, or any part of RFC9420 Message Layer Security, would inherently require a client app. Perhaps you mean that there is no readily available browser-implemented API for carefully managing secrets? Even in that situation, all the libraries needed to implement the RFC can be compiled as WebAssembly or to JavaScript (with the assumption that the browser and OS are outside a malicious actor's capabilities) and ran that way.

To be clear, I'm not suggesting Signal is perfect, and papers about problems found in Signal and other apps are readily found, like this one from last month. But with that said, it does appear that OP's described use-case involving hundreds of users in group chats is very much not what Signal was designed for,.

[โ€“] solrize@lemmy.ml 1 points 16 hours ago

Maybe you're right and you could implement something like MLS in JS and/or WASM. I don't know if those can open raw socket connections instead of using websockets. You'd need a raw socket connection to interoperate with other apps like Signal, but with websockets you could implement similar functionality non-interoperably, maybe even using a server side proxy to route to a Signal server (the proxy would never see plaintext).

There's still the matter of making sure that the JS or WASM download isn't tampered with. You have to trust the server that send it to you, which is in conflict with the E2EE notion of not trusting the server. There could possibly be a MITM attack by someone with a signed TLS certificate. Worst is if it's served from a CDN. CDN's have alway seemed to me like supply chain attacks waiting to happen.