You're about to dig in self-hosting universe. This manual is written to help you host, at home or on a rented server, services too often left to to third parties. The goal is to guide you throught this journey as simply as possible. Of course, sometimes shortcuts are made : most thorough readers will certainly want to dig a little more afterwards, and that's a good thing.
You can read in any order, links are added to go back if necessary.
We will describe and use OpenBSD in its last stable version. This OS is well known for its security-oriented development. It is also easy to administrate because a lot of useful tools are included in base and can be configured with the same syntax. See why openbsd rocks.
You'll see hosting a server isn't that difficult and is mostly editing text files. Anyone should be able to learn it.
Self-hosting : pros and cons
Most website you're used to read are hosted on computers somewhere in the world. They're called “servers” because they just serve data for other computers. They often don't have a screen, whereas desktop computers are useless without one.
When you want to read your emails, your software look for them on a server. A copy of your message are downloaded on your computer. It's like asking the mailman:
Do you have any mail for me?
Yes, wait a minute. I make a copy and give'em to you.
The post office had your mail, and still have them when you read your mummy postcard : this postcard is just a copy. The post office is like a mail server here. Imagine someone else read your postcard…
Of course, you can ask the mailman to delete the original mail. Let's hope nobody made another copy somewhere else. You have to trust the post office. If you become your own post office, there is no need to trust somebody else. 😉
Centralizing services in one place is a bad idea because somewone will eventually use data for its own profit. Scanning emails to display ads that might please you is quite common for Google actually (it's not the only one).
This isn't how the web should look like. Everyone can add it's node to the web.
Self-hosting your server comes with some benefits:
- Data stay at home. You keep control on it. If you used to share pictures, administrative documents, or videos with third party website (Youtube, Wetransfer…), you might consider keeping your data next to you. Therefore, you are sure sensitive data isn't trashed somewhere with a hard drive when someone renew them, or event sold to affiliates.
- Better privacy, no need to trust someone else about your habits and contacts, even if you think you have nothing to hide:
Arguing that you don't care about the right to privacy because you have nothing to hide is no different than saying you don't care about free speech because you have nothing to say. E. Snowden
- You can host service that fit exactly your needs/
- You can use second hand hardware or low power hardware to be environmentally friendly. See which hardware should I use?.
- It is fun and interesting to understand how Internet works and contribute to its quality.
Self hosting has its drawbacks:
- It's time consuming (at first)
- Private bandwidth is not always enough. It is only an issue for big data like videos, but isn't a problem for mail or a static website.
- You're in charge of security. It requires attention. At least, you know it's not made carelessly by unknown person.
About this doc and its syntax
To understand each other, I suppose in this document that:
- Your server openrating system is OpenBSD.
- Check if code is to write in a file or to enter in a prompt.
If it must be run as root, I write a “
#” before, or a “
$” otherwise. i.e.:
# echo "I am root"
- This char :
*” should be replaced by what suit your needs. It can be a version number as example.
Next page →