I have had several shots at self hosting email over the years and my last attempt failed due to my home IP being in a dynamic pool. I thought I might try again, this time with a basic web hosting provider that I could set up email on. Any suggestions for a free/cheap provider with decent uptime?
I hate to say this but even for dedicated self hosters it’s almost never worth it to self host email, either at home or hosted on some rented server or via some IP tunnels.
The reason being is that even after you set up DKIM and SPF and DMARC perfectly you will still need to fight to keep your IPs off of spam lists.
It’s somewhat doable but at the cost of:
Your email being unreliable and not making it to the destination inbox, AND you not knowing if it went to spam or the inbox.
You will need to dedicate a few hours a week to appeal and scan spam lists for your IP.
If anyone in the /16 that your IP lives in sends spam you get re added to the list.
Self hosting email is almost never worth it. I self host everything except for email and maps. Those two just are not worth it.
In my experience the problems with self hosting email mostly occur when something is misconfigured. I think it’s good for people to try to self host it, and if you pull it off it’s great (I love having mine self hosted, and it’s convenient to be able to have as many email addresses, storage, and accounts as I want). It is difficult to get right and debug when something is going wrong, but it’s far from impossible. If you set up SPF, DKIM, and DMARC and have rDNS pointing to your mail server’s domain name you’ll likely find success. It’s possible I’ve just gotten lucky, but I have never had a problem with IP ranges getting banned.
I encourage homelabers to set up email servers and to play with them. Doing all of that will help a lot and you will learn a lot for sure.
It’s mostly the bureaucratic stuff that’s the killer here I think. Without putting in an effort to do the constant spam list appeals you can never be confident that your email makes it into people’s inboxes. Sure you could test with Gmail, but you can’t test for all of the smaller email hosting providers that mostly use a combination of spam assassin and spam lists.
Without confidence I don’t think it would be wise to use email in “production”. If you only use email to receive notifications it might make sense to self host. But if you need to reliably, timely, and confidently send out messages the downsides of self hosting are rough.
The most important thing, if you intend to do outgoing email, is to get a reputable hosting service, where you'd have few/none bad neighbours. Unfortunately that often doesn't come together with cheap, as cheap solutions often attract a certain clientele. I've also had more luck with slightly smaller (but still reputable) providers, i.e stay away from OVH / Hetzner and the like. If you want something cheap, it'd probably not be a good experience to self-host.
With my self hosted solution I have no concerns about deliverability, and only very few occasions had blacklisting issues (due to neighbours in the /16 range).
The recommendation to use a reputable email provider host is much better, but if you want to go it yourself the Google Cloud free tier includes an instance with a public IP address. Snapshots are not included in the free tier or any other backup, so use at your own risk - this besides the complexity of email security.