Selfhosted
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:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
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.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
From my experience (with Dendrite, not synapse, so keep that in mind), bridges create "fake" users to replicate your contacts on these platform as matrix users, and they are visible on the whole instance by all their users (but you might not be able to talk to them). Also, in puppeted mode (which is what you want to "replace" your app with matrix), only a single user can use the bridge at a time, so the other users cannot use it.
This is true but if you're self-hosting it's not that much bother to add additional copies of a bridge for other users (granted, it's not ideal).
Bridges were not that easy to manage in my case (regarding process management, and ease of config deployment/reproductibility). It was on OpenBSD though, so your mileage may vary. And still, it leaks all of your contact informations to the other users of the server (like their phone number eventually), so definitely not suited for public instances.
I'm on Signal (obviously not self hosted) and even if I really wanted to move to another platform be it self hosted or yet another privacy focussed one, I can't ask my friends and family to move to another platform again. I already asked them to move away from WhatsApp, can't do it again..
💯 this. It took me several years to get most of my friends, co-workers and family to Signal...
I host my own matrix instance for my wife, a few friends and I. It has worked great for us. They can either use a web app, or an app on their phone.
Hey , do you have a guide on how to host my own matrix server?
I used the official docker image: https://hub.docker.com/r/matrixdotorg/synapse/
My compose file looks like this: https://pastebin.com/3JYzAPr2
Pretty sure I just followed the instructions there.
how have you secured your server when opening your network to the outside?
I'm using a cloudflare tunnel for it. I also have crowdsec installed, only allow ssh keys and only from my IP (I have a static from my ISP), and no ports open other than the ones needed.
Thanks for sharing. Couldn't get it to work but I'll try again with your compose file.
Matrix.
Also a vote for Matrix and Synapse. Works great and you can decide if you federate or not.
We use Matrix (Synapse) and it works extremely well. I just wish I could get a STUN/TURN server working...
My family has been using Synapse since before Covid hit, including TURN server (coturn) for audio and video calls. No complaints about the UI so far, except for Element on iPhone reportedly "freezing" for a few moments when sending messages - and that was over a year ago.
What problems do you have getting TURN to work?
I tried setting up coturn with docker but I can't remember offhand what I had issues with. I am running a reverse proxy (Traefik) with wildcard certs. I should dig into it again. Do you happen to have any pointers or any good guides I could try following?
Matrix (synapse server) probably fits the bill.
If you're already using Nextcloud, it has a chat w/ video chat as well.
Matrix / Synapse / Element.io is also pretty cool. The UX might not be on par with what some family expects though. I don't know if voice/video chat is built-in yet or not, but it was at least an option before.
aa
Voice / video requires a separate TURN server, IIRC.
I like Matrix (I mostly use it with my sister) though XMPP might be a good option too if it's just for family.
Just for a family and friends I'd go for xmpp. Matrix is still an enormous greavy piece of software, hard to self host if you don't want to pay for a gigantic server just for it. Also the UI is more like gamer/company chat (discord, slack...), what may not be what your family expect, coming from whatsapp, telegram, or plain sms. In the contrary xmpp is very light and nowadays a lot of tutorial exists on how to configure it, even with voice/video. Plus mobile apps like conversation match the habbits of other messengers.
This is outdated info. Matrix doesn't need lots of resources these days. "for instance Synapse uses 5-10x less RAM than it used to (my personal federated server is only using 145MB of RAM atm!" - https://matrix.org/blog/2022/08/15/the-matrix-summer-special-2022/#making-it-fast
Host it for free https://paul.totterman.name/posts/free-clouds/ & https://paul.totterman.name/posts/matrix-server-guide/
Another Nextcloud user here. If you setup a Nextcloud server you will see many benefits, with the Talk app being just one of them. Install OnlyOffice and you can even collaboratively edit documents in the web browser similar to Google Docs or o365. I really can't recommend Nextcloud enough. Anyone who is into self hosting should at least give it a try.
I've tried setting it up three times now but I keep getting permission errors before I can even get into it. Is there a good guide to it somewhere?
Try this tutorial if you are on x86 architecture:
https://www.howtoforge.com/how-to-install-nextcloud-on-debian-11/
Are you comfortable installing Linux and using the terminal?
Yes, and I plan on doing that. I'm currently using my old gaming computer as a catch-all server. I plan on upgrading the CPU to something like a 12400 or whatever is reasonably priced at the time. I'm on an overclocked i5-4690k with 16 GB RAM, so it struggles a little bit sometimes, especially with transcoding in 4k with Plex.
I want to eventually move to a completely headless setup with everything hosted via docker.
Since we use Nextcloud, we just use Talk. It works well enough for us, but you should also host a TURN/STUN Server with that.
DeltaChat works with encrypted e-mails.
We use Rocketchat and love it. Been thinking about moving to Matrix but, at this point I've got my whole family hooked on Rocket
Don't listen to all the Matrix fanboys here 😅 It's no fun having to manage the massive server application and the mobile apps pretty much suck.
I would go for https://snikket.org/ which is a lightweight all in one solution based on XMPP specifically designed for what you want.
Massive server application? Running on a PI 3? If you don't want to federate with massive servers it's super lightweight!
"for instance Synapse uses 5-10x less RAM than it used to (my personal federated server is only using 145MB of RAM atm! " https://matrix.org/blog/2022/08/15/the-matrix-summer-special-2022/#making-it-fast
I run synapse myself, so yes I am aware that it got more lightweight. But it very much depends on your usage pattern and XMPP is still easily 10x less resource heavy.
Nextcloud looks really great and it has a chat / video chat too, I want to give it a spin in the future, as it also allows you to self-host a lot of things that people usually outsource to Microsoft, Google or Apple.
The video calls in nextcloud are a bit....hard to make work flawless, lol. You also need some amount of ram and cpu in the server.
I think you always need some amount of ram and cpu in a server... ;D Well, it's a shame if those video calls aren't working nicely without some fiddling. I'll still set up a Nextcloud at some point, for all that other stuff like calendar, contacts, office, chat and file sync. Kinda enjoying the benefits of cloud synced data, but without a corporation hosting my information and selling me to the advertisement hyenas.
Heh true that. AFAIR Nextcloud Talk Video calls need few additional stuff to be installed for working outside a LAN. You can check some details here: https://nextcloud-talk.readthedocs.io/en/latest/TURN/
I use Nextcloud Talk video calls outside my local LAN and I didn't do anything special other than install the Talk app.
Nice. Either you are lucky or I'm unlucky :). I have used it with my previous vps which only had 2 GB ram (%94 always full with services and stuff) and 1 core. The experience was not very...convincing. I have yet to test it with my new server though.
My ODroid H3+ running my Nextcloud instance is pretty over-specced, with 32 GB RAM and a 2 TB m.2 SSD, so that might explain the differing results. I'm surprised it runs so poorly on less capable hardware though. I actually have another Nextcloud instance running on a minimally specced VPS. I'll test Talk on that instance this evening and see if my results are similar to yours.
That will be a good test. It will be greatly appreciated if you post your results here or on a separate thread.
I was working on this last night. I had a video call going from my phone on a wireless carrier and my laptop on my home internet using a video call from a Nextcloud instance running on a GoDaddy 1GB RAM 1 core VPS. I left the call running for a good while and was monitoring the server resources. It was using most of the RAM, but with only 1GB that's really not surprising. The CPU usage was pretty low. I would have taken a screenshot but then I managed to crash my laptop working on some other things than the video test at the same time which was dumb on my part. I'll test it more though and let you know how it goes. From what I can see it seemed to work OK but this was just one video call. For multiple simultaneous calls it would probably struggle I guess. Maybe I'll test that too, or at least add another camera into a call.