this post was submitted on 16 Jun 2024
132 points (95.2% liked)

Selfhosted

40415 readers
365 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:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

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

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

I am searching for a selfhosted and secure (end to end encryption) chat platform for my family (5-20 users), possibly one i can host on a raspi.

Is matrix a good choice, or should i try something else?

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 39 points 5 months ago (3 children)

I've been using matrix for years to this purpose, but moving to xmpp/prosody now

[–] [email protected] 13 points 5 months ago (1 children)

Can I ask why you're switching?

[–] [email protected] 31 points 5 months ago (2 children)

No.

Yeah ok. First of all, because I can 😁. I mean z what's good being an IT nerd if I can't change stuff when I want?

Jokes aside, I've been reading more recently on matrix and looks like there are some security issues in the design of the app/protocol. I'm on mobile now, I'll look for sources when I'm on pc. Also I don't like that it is a server centric system (so data is primarily on the server instead of the clients). Also it takes more resources than I was expecting. For less than 10 users I can't have less than 4gb of ram (on a dedicated debian server, running docker) or it swaps so much it kills the system.

So basically I'm testing out if xmpp is a better system for those issues.

load more comments (2 replies)
[–] [email protected] 6 points 5 months ago (2 children)

What clients will you use for xmpp/prosody?

[–] [email protected] 8 points 5 months ago

The easiest is to use the clients officially rebranded for Snikket, but there is a good overview on modern clients on https://joinjabber.org

[–] [email protected] 4 points 5 months ago

Gajim on pc (I use arch btw - well endeavourOS because I can't be bothered) and don't remember what on android (there is the full list or clients and capabilities on xmpp.org)

[–] [email protected] 5 points 5 months ago (2 children)

How do you convince your family/friends to switch to a new app on their smartphone and use one just to talk with you/others in the crew?

@[email protected]

[–] [email protected] 5 points 5 months ago (3 children)

Frienda no, but I do use whatsapp bridges so I can have all conversations in one place.

Family with extreme nagging, and because I'm the IT guy of the house so they kinda trust me/can't be bothered to try and out-talk me.

load more comments (3 replies)
load more comments (1 replies)
[–] [email protected] 38 points 5 months ago* (last edited 5 months ago)

Any Reason Signal doesn't do it?

Selfhosted isn't always the Best option

[–] [email protected] 31 points 5 months ago (1 children)

Edible paper, lemon juice, and hair dryers.

[–] [email protected] 9 points 5 months ago (1 children)

My threat model is not that big :)

[–] [email protected] 5 points 5 months ago (1 children)

I guess you're not a furry then.

load more comments (1 replies)
[–] [email protected] 26 points 5 months ago* (last edited 5 months ago) (13 children)

three main ones I've seen in this comment section are

• XMPP

• Matrix

• SimpleX

load more comments (13 replies)
[–] [email protected] 25 points 5 months ago* (last edited 5 months ago) (10 children)

XMPP. It just works, requires very little resources, is stable and has decent clients.

I would go with Snikket instead of Prosody if I had been starting now.

Conversations on phones, Dino or Gajim on PCs, plus a conversejs install on the xmpp server, to allow web access when needed.

Conversations is easy for the family to figure out.

[–] [email protected] 14 points 5 months ago

This is what my family (and a few friends) use. We have been using it for a while now because it just works. Also, the kids have never complained about using Conversations, or about using it only for us (like if you have that one family member who won't leave SMS behind - we're that guy, I guess), and we can make as many channels as we need for the house, the kids, with each kid individually, for our MTG cards, with our couple of friends that use it, etc…

I don't personally do the hosting, so I can't speak to that. That's the hubby's thing
¯\_(ツ)_/¯

load more comments (9 replies)
[–] [email protected] 24 points 5 months ago

https://snikket.org/ (xmpp based) is perfect for that. Matrix will work, but you will likely reach the limits of your Raspi with it fairly soon if you allow federation with other servers.

[–] [email protected] 19 points 5 months ago (2 children)

E2E is complicated, if you self-host for a group, having TLS and encrypting data at rest (storage) may be enough. Get a threat model. That being said, I would recommend snikket.org which is a superset of extensions over XMPP which is the open source IM that was the base of almost every app out there. Matrix and Rocket are both alright too. Depends too on your resources, synapse requires too much RAM (or so I heard)

[–] [email protected] 12 points 5 months ago (1 children)

Yes, XMPP with proper TLS on the server side and Conversations or one of its forks (preferably fetched from F-Droid) using OMEMO encryption should be good enough. If you are brave or paranoid, give Tox a try: https://tox.chat/

load more comments (1 replies)
load more comments (1 replies)
[–] [email protected] 17 points 5 months ago* (last edited 5 months ago) (7 children)

Ideally, SimpleX (https://simplex.chat/). Session is nice, but less secure (https://getsession.org/). Delta Chat (https://delta.chat/en/) will be secure enough, and the most familiar visually. Lastly, XMPP is a great solution as well.

load more comments (7 replies)
[–] kugmo 15 points 5 months ago (2 children)

I know it's not self hosted but why not Signal? Matrix is demanding on a SBC and your family would probably get the 'unable to decrypt message, please re-verify keys' error that happens in encrypted matrix group chats and Element does not have the best UI especially if you want your grandma to use it.

[–] [email protected] 7 points 5 months ago

Very unlikely by now, these issues have been adressed a while ago.

[–] [email protected] 5 points 5 months ago* (last edited 5 months ago) (1 children)

What's your source on the reverify thing? I use matrix a lot, and this hasn't been an issue I ever experienced anymore since they introduced cross-signing a couple years ago.

Same goes for the common clients such as element. It has been clunky in the past, but after the past major overhauls ( also years ago now) everything has been silky smooth for me, if not better than others. The one thing left I prefer from Signal is the one-time photo share.

Matrix is great, clients are great too, only the server part still is annoyingly complicated and messy. Would only recommend that for tinkerers, on that case it's a great path to learning about the complexity of addressing lots of security concerns that others gloss over.

Edit: to add - there's a reason why the French government and the German military decided to build their secure internal IM infrastructure on Matrix. Obviously they are hosting their own private network, but if the concept is good enough for European government and military, it is an indicator for quality especially in terms of security and privacy.

load more comments (1 replies)
[–] [email protected] 15 points 5 months ago (5 children)
load more comments (5 replies)
[–] [email protected] 15 points 5 months ago* (last edited 5 months ago) (2 children)

I just have my kids, wife, close friends and in-laws on SimpleX.

Sure, some of them use mainstream stuff as well, but if they want to reach me, that's their only option.

Matrix is a pretty good choice for self-hosted. The reason I don't do it is because I've become lazy lately.

load more comments (2 replies)
[–] [email protected] 15 points 5 months ago (1 children)

Still no suggestion that has wide cross platform and it’s just simple . Matrix has that all . So for now I choose matrix and clients

[–] [email protected] 17 points 5 months ago (6 children)

Lol, Snikket/xmpp has been suggested multiple times, and it is as good if not better regarding "wide cross platform" support. To get the same with Matrix you basically have to use a web-client or Electron, while XMPP has very efficient native clients.

load more comments (6 replies)
[–] [email protected] 12 points 5 months ago (4 children)

I recommend Matrix with the Conduit server. This server requires almost no resources and even runs on a Raspberry Pi.

Cinny works perfectly as a desktop client (in case you want to escape from the ubiquitous Element). And for mobile I would use Element for Android/iOS although FluffyChat also works very well.

load more comments (4 replies)
[–] [email protected] 10 points 5 months ago (1 children)

For me you can try to host a SimpleX server and then connect to it (with SimpleX it is pretty as much secure to run its one server than use a public one).

Or maybe use XMPP but try to use a good encryption protocol. This option is great in term of power efficiency, XMPP would run great on a RasPI

load more comments (1 replies)
[–] [email protected] 10 points 5 months ago (2 children)
[–] [email protected] 8 points 5 months ago (1 children)

matrix should cover everything you need with the added bonus that you can chat with people from other instances

load more comments (1 replies)
[–] [email protected] 7 points 5 months ago

You could try Jami. It's peer to peer, so essentially any participants are self-hosting it. Its E2E encrypted, supports group messaging, voice and video calling, has easily 'linkable' mobile and desktop apps for all platforms and requires no email address or phone number to use. It's also the only messenger I'm aware of which is endorsed by the Free Software Foundation. I highly recommend it 👌

[–] [email protected] 6 points 5 months ago (1 children)

Matrix is good, secure, very versatile, Foss, and easy to use, but I think not easy to set up or manage.

load more comments (1 replies)
[–] [email protected] 4 points 5 months ago (3 children)

Rocket chat is like slack but FOSS.. haven't tried it myself but it could be something

load more comments (3 replies)
[–] [email protected] 4 points 5 months ago* (last edited 5 months ago) (3 children)

Simplex chat would work

However, I wouldn't host on a Raspberry Pi or even at home for that matter. Get a VPS and host it there. Linode even has a one click app install for Simplex Chat

load more comments (3 replies)
load more comments
view more: next ›