Self hosting in 2023
Sorry to be the &quot;grumpy old man&quot;, but i don&#x27;t get it.<p>In my experience, self hosting usually falls into two categories, people that &quot;just want to host a simple static website&quot;, and &quot;host all the things&quot;, and both are usually served better by using the cloud.<p>Most are in the category &quot;i want to learn about self hosting&quot;, meaning they have (close to) zero experience, and while self hosting by itself isn&#x27;t hard, maintaining a secure environment is, and that&#x27;s where many people fail.<p>For the &quot;simple static website&quot;, you can host it for free pretty much everywhere you like. Github pages, Azure static web apps, and countless others all offer stable, professional cloud servies for free, without the risk of exposing your network to the internet.<p>For the &quot;host all the things&quot;, you see people attempting to mimic and entire data center at home, complete with monitoring, CI&#x2F;CD and everything, and while i appreciate the learning experience, most people are blissfully unaware of the chore it is to maintain such a thing. Most of these services are better off being in the cloud.<p>- email is a likely thing people will want to self host, which is also perhaps the most stupid thing to do. First of all, it is a chore to keep your server off of various block lists, and you gain nothing but pain by self hosting it. Email is insecure by design. Every email has at least 2 parties, the sender and the receiver, and with &gt;50% of the worlds recipients running on Google&#x2F;Microsoft&#x2F;Yahoo&#x2F;whatever, your email will get indexed. A much better alternative is letting someone who knows what they&#x27;re doing host your email, and use a personal domain. That way you can move your MX records if need be, still maintain your email address if changing provider, and let someone else deal with the problems of running the service. If it&#x27;s privacy you want, use something else, or use encryption. In both cases, self hosting gives you nothing additional.<p>- cloud storage is another contender, and the most common &quot;excuse&quot; is that cloud hosting is too expensive, and yes, if you plan to store 200TB in the cloud then it is, but maybe instead you need to look at which files are needed when away from home, and use the cloud for those, and leave the rest at home, accessible by VPN if need be. If you need privacy with cloud file hosting, something like Cryptomator (<a href="https:&#x2F;&#x2F;cryptomator.org&#x2F;" rel="nofollow">https:&#x2F;&#x2F;cryptomator.org&#x2F;</a>) is much easier&#x2F;better than maintaining your own server. (as a side note, you can get around 20TB of cloud storage for €20&#x2F;month, or roughly the price of the electricity required to run a 4 drive NAS for the same time, but not including cost of hardware).<p>Not matter your setup at home, you will never create something as resilient as the major cloud datacenters. i.e. OneDrive (paid version) stores your files across multiple geographically separated data centers, using erasure coding, so if one data center dies, your files are still available in another center, and hastily being replicated to a third center. It uses atomic writes (like CoW filesystems, ZFS, Btrfs, APFS, etc) to ensure data written is correct, and has checksumming (inherent in the erasure coding), as well as versioning of files (OneDrive has unlimited file versioning for 30 days rolling), meaning you get at least some ransomware protection.<p>So in the end, most people are way better served by putting their stuff in the cloud and encrypting it, than they are exposing insecure services from home.<p>By all means, build the cluster at home as a learning experience, but save yourself some trouble and keep it within your LAN. If you need to access it externally, use a VPN instead. With modern VPNs like wireguard, there is very little overhead, and your data will thank you for it (as will your family as you suddenly have a lot more time to spend with them!).