2.5 years ago, I migrated all my services hosted on a cloud provider to a homeserver.
This homeserver is also my workstation/gaming/dev/everything. I use QubesOS (an operating system based on the Xen hypervisor), and wrote some document about it: https://neowutran.ovh/qubes/articles/homeserver.pdf
Basically, I am hosting:
- DNS
- Matrix
- Jitsi
- Mumble
- Peertube
- Screego
- Nextcloud
- Searxng
- Tor
- Wireguard VPN
- Copy of wikipedia
- Personal website And others.
And for TLS, to have better security, and to avoid relying on third party company/providers, I am using DANE.
https://en.wikipedia.org/wiki/DNS-based_Authentication_of_Named_Entities
https://sr.ht/~yukikoo/dane_without_root/
https://github.com/buffrr/letsdane
The “dane_without_root” is one of my projects and I am welcoming review / feedback on it
( I also posted about it on the QubesOS forum: https://forum.qubes-os.org/t/highlighting-neowutrans-technical-doc-about-qubes )


IMO when reading random articles on the internet you already have to worry about untrusted scripts. I just use NoScript, and if the website requires Javascript I move on
I don’t agree, I think there is a difference in likely outcomes. but even without scripts, you don’t want you article’s content (text, images, statements or names) be falsified by an attacker. Unless you are just reading the article to waste time, and magically what you read will not influence your views.