Intro
Recently, I have heard several podcasts and keyboard warriors declare that self-hosting email is:
- Not worth your time.
- Very very hard.
- a very fragile setup.
- very unsafe.
Yes, self-hosting email is possible. Done right, I think it can be very much worth your time. It can be hard, but its not the hardest thing I’ve done for sure. As well, for all its “fragility”, email was made for a time when the internet was not even always on, nor did we all have highly available mail services. Delivery is retried for quite a while on most mailservers, so even if something unforseen happens, generally, it all gets better rather quickly, and you have to make some pretty big mistakes to lose email.
The biggest problem though isn’t actually getting on blocklists, or losing emails (though these can be challenging)… the biggest problem with self-hosting email is actually understanding the flow of email, and what each part of this interdpendent system you are building actually does. Without this understanding, its going to be very hard to troubleshoot emails stuck in your mailqueue. You might follow a tutorial and get it setup and working for that first test email, only to find you have been missing things for a month.
The Pitch
I host email now for 4 different domains, on a single mail server. I haven’t lost an email yet, nor have I been on any blocklists. I did have some issues with a couple emails going to spam folders in the beginning, but I am several months in now, and I really haven’t had many issues. Even when sending an email to google.
The Inconvenient Truths
Hosting your own email takes time to understand (fully and properly) and time to build trust. You are going to have a bad day when you can’t get a password reset email because your mail server is down. So here’s the deal, the risk is on you, but so is the reward. Its going to take time to learn to trust your mail server, learn its in and outs. You are probably going to make some mistakes, its ok, brush yourself off and keep going.
Spoilers: unless all your email is encrypted, its pretty much guaranteed someone is collecting all the email data they can get. Your ISP, your VPS provider, and probably even the hosts and ISP’s of the addresses you are emailing. This is a problem for anyone using unencrypted email.
Why do it?
For fun? For glory? Perhaps. But maybe just to reduce your reliance on big name companies who read your every email. We can at the very least make it harder for them to follow our converstations, read our reciepts, and track our every waking moment.
I don’t even know where to start!
Thats the biggest part, if you are already overwhelmed, it might be time to take a break or work on something else. These tools are a little old, esoteric, and niche. People are not going to run to your aide when you make a mistake (but you should be greatful for any help you can get). At the end of the day, if you are committed to it, go ahead. What’s the worst that could happen? I will be publishing a guide (not tutorial) to understand and build(and maintain) your own email server architecture. Stay tuned!