Introduction

Introduction to this Self Hosting iniative.

Foreword

I started this project because I noticed that many people are currently trying to get away from Big Tech corporations like Google, Meta, X, etc. Many of these people lack the expertise to host their own systems.
After musing my idea about a self hosting project on the Fediverse ("Mastodon") I got an overwhelming amount of positive reactions.
So here we are, with the SelfHosting4All project.

I have my roots in the data security business. If you Google SearX on my name you might find some more info about this.
I have self hosted some large volume systems myself for two decades, so I have some experience.

At this moment, we are still in the brainstorming stage. Not much is set in stone.

A VPS can run a variety of things, of which not all of them are of interest to everyone. Therefor I want to present the installation of independent services in individual "books". Setting up an email server would be such a book, that can be skipped if you don't want to run your own email server.

This selfhosted "wiki" environment looks great to present my books, it has the additional benefit that we can allow guest writers later on, and/or allow knowledgeable people to update and/or enhance the existing "books".

Goals

My goal is to help as many people as possible to get away from Big Tech and assist them in self hosting their own stuff, and showing them that it is not so hard as they think.

A proven recipi

If you follow one of the many "howto's" on the internet, it often requires some fiddling, because in the nowto they use a different provider, a different operating system (version), differeent software versions, and so on. Often these "howto's" are made on an already existing system with a lot of software already installed and running that the author forgets to tell about.

My idea is that with a bunch of people we all hire a VPS at the same provider, use the same software, the same versions, etc. For this goal I will hire myself a new VPS, setup a new domain name, and record every single step and command. If one follows this exactly, you will end up with the same system and the same reliable functionality.

Educational

You could just copy all the steps I take during the installation, but I will also explain every step so that you might understand why and what it does, so along the line you will learn a few things. Hopefully it will give you enough background to later self host a few more things than I cover.

Low maintenance

Some people who once ventured into self hosting compain that it was so much work to keep everything working. I don't have that experience, but that is maybe because I follow a different approach than most of them.

You see, if you look into my biography, that I live on a sailing boat. I earn my money via the internet, but I can't afford any down time when I'm somewhere on a multi-day ocean passage or at some uninhabited island without internet connection. This made me very conservative in the software I use and how I set it up. I don't want any suprises at unwelcoming moments. Typically, I run my services without any intervention for years on an end.

So I always aim to set everything up with low maintenance requirements in mind. It also means that I'm not updating stuff everytime there is a new update. If things work to satisfaction, why try to fix something that ain't broken? I typically run my servers for years without any updates (with the exception of security updates, which only very rarely break stuff). Software doesn't stop working by itself. Once you have setup a stable system, if you don't mess with it, it will function for a long time to come.

If, in a couple of years, you feel you are getting behind and/or really want to make use of some new features, it is always better to hire a new VPS besides the old one, install everything from scratch (while peeking into your old setup to keep as many settings that proved to work), and only once you are satisfied with the new VPS, you cancel the hire of the old one.

Low Cost

The system is going to run on a VPS of 5 Euro's per month, which you can cancel any time. You also need a domain registration, but these run typically for a year. We are only going to use free software.

Software

I will focus on software I used myself, which has proven to be stable and providing functionality that makes it worth installing and using it. I'm open for suggestions though.

Books

Books 1 and 2 will be mandatory, the rest is optional. Just a rough scetch of the books I have in mind:

Book 1: Infrastructure

In this book we will setup the infrastructure. We need to hire a VPS, register a domain name, and to get it all working together and accessible from your home system.

Book 2: Essential software

Book 3: Cloud

Book 4: VPN

In this book we are going to setup our own multi-user VPN.

Book 5: Joplin

In this book we are going to setup our own notes system (evernote replacement)

Book 6: E-mail

This might be the holy grail for some of you. Your own email server on your own domain name.

And of course we will setup all the stuff that is required today to get your mail working reliable, such as DMARC, DKIM, etc. and we will also take some very effective measures against spam.

Other books

Many other books will follow. Pixelfed? Friendica? Lemmy? Pleroma? Mastodon? Let me know which of those would be your favorites.

Community

I can use some help

In the long run I can't do this alone. This is why I have chosen for this BookStack Wiki. Some knowledgeable people can contribute this way and publish their own "books" and/or provide updates on existing ones.

Graphics, anyone?

Also, I'm bad with graphics. It is nice if someone can design a few icons for the books we're putting together.

Matrix

To communicate with each other, I would like to give everyone a matrix account on my (self hosted) Matrix instance. You don't have to install any software yourself, you can just participate via my Element web interface although it might give a more satisfying user experience if you also install the mobile phone apps and/or desktop clients.

Why Matrix? Because I think it is most suitable for a project like this. It is like Whatsapp/Signal but it also allows "threads" so we can get things a little more organized. And last but not least, it is more secure because it is decentralized.

Donation

Everyone can read the books without any obligation to me. But I kindly request a donation for the following purposes:

Except for encouraging me to run this project, I can give some technical support in return. People who have contributed will get access to my Matrix Support Group. And if you don't already have a Matrix account, you can get one for free on my Matrix instance.

You can find my banking info (and Paypal donation link) on my Contact page.