This reminds me, again, that I should look into setting up my own home mail server. Is there an off the shelf solution for this? I don't mind setting up another PC as a server for this, but how hard is it?
If, perhaps, you decide against self-hosting, but still want a reasonably good solution, consider owning your domain but buying a hosted mail service. You own the MX records, so you can point it to a service and change it in the future if you need to (without fiddling with setting up a new mail host). Say you use XYZ mail provider, but they shut down for business. You can buy mail hosting from someone else within a day, and all the undelivered mail (if senders follow spec) will be delivered to the new service. And, in most cases, you can import your whole mailbox if you have it synced locally. I find this to be a good balance between privacy and not fiddling with anything at all. I thoroughly respect someone who selfhosts their mail but for me it's too crucial to worry about an update bringing it down - outsourcing it to an expert with proper fallbacks is more safe to me.
I personally use migadu, $19/yr (they have a student discount as well) for unlimited domains, 200 emails in/20 out daily/5GB storage. That's the lowest plan and I don't think I've ever surpassed it (the limits are soft anyhow). I get surprisingly less actual important email than I thought. (I use my gmail for rewards cards, etc)
But, to actually answer you, mailcow.email seems pretty good :)
Thank you! I've owned my name in domains for over 20 years, it was the first domain purchase I ever made. I want to be able to store the mail etc. locally. OPs post reminded me of the guy who sent a photo of his child to their doctor and was locked out of his gmail account. I've heard of similar incidents with even less evidence and reason and it worries me. Making the switch to my own domain and hosted mail server would hopefully solve that.
Well, yes, it's something you are technically renting. There has to be a balance between cost and convenience. If there was a lifetime fee to own it, think of all the domains that would be already bought up - there'd be barely any left. However, in almost every case, there is nothing that will get your domain taken from you, unless you fail to pay or break the domain registrar's TOS (copyright infringement, etc). Far higher bar than Google's AI deeming you bad.
And regarding failed payments: My registrar at least emails me 30 days in advance, will email in case of failure, and will not put the domain up for sale until after a grace period (IIRC at least a week), during which they will repeatedly attempt to contact you.
Also, even if you can't own it: that's true of self-hosting also and doesn't apply to just purchasing hosting
I ran my own mail server from 2007 until 2021. I would highly recommend that you don't.
It takes little effort to setup a mail server to receive mail.
It takes a TON of effort to setup a mail server to send mail. Most ISPs will block your IP address, through various services you can get your IP unblocked but it's a slow and very time consuming process. And $god help you if your server ever gets exploited by a spammer. Your IP address will be permabanned by everyone.
It takes more effort to filter out spam
It takes more effort to deal with all the various email-related attacks. Like Joe Jobs [1], and DSN attacks [2].
You have to get reverse-dns setup on your IP which depending on ISP can range from impossible (comcast) to a pain in the ass (AWS).
You then have to worry about backups, firewall rules, server maintainance, power outages, and yada yada yada.
Then you'll get into it and have to figure out IMAP, SIEVE, and TLS. You'll spend more time managing your email server than any other thing you do in your life. You mail server will replace your family, your job, and all your hobbies.
Just buy a domain, pay for FastMail or ProtonMail, and setup or MX records. You'll be much happier.
Email is harder than you think mainly because of spam protection. The big four will just bin emails received from you if the server's IP doesn't have some reputation.
Instead use your own domain with whatever email provider suits you.
Much easier to setup and worry-free.
I would split it into two parts. First and most critical, is to set up your own address in a domain you control. As long as you control the address you can move it between providers. Then you can decide whether to self-host (which I would not) or use a commercial service.
The problem with home-hosted email is, as most folks said many times, that an email sent from a non-major provider would be marked as spam at best and dropped at worst.
My personal solution is to use my own domain, but have mail delivered by protonmail. This is an inexpensive option in a Swiss jurisdiction with generally sane laws. I maintain a copy of all emails on my home system, so if I wanted to switch from protonmail to a homegrown solution or another provider I can easily restore the same IMAP state there. And I would obviously keep the same email, so will not need to notify anyone of any email changes.
This is my setup too. One caveat w/ Proton Mail: you have to use their "bridge" software if you don't want to use Proton's client. Seems easy to configure, though I've never done it. Their web client is fine.
I use bridge and it is easy to configure and works great most of the time. And absolutely, completely and totally horribly a small fraction of the time.
Specifically, the bridge + Proton Mail combo reuses UUID. It is a known bug, which proton does not see as a big deal (we will fix it; someday; when we care enough). But what this means is that some messages may be mis-tagged, mis-labeled or mis-deleted between your mail client and the server.
I hit it when I was reorganizing my folder structure, freely adding and deleting subfolders from Thunderbird to create the structure I like. Then, the changes stopped reflecting and a fraction of my messages appeared gone. I finally was able to undo it through the web client, but the experience left me deeply suspicious of anything except the simplest operations with local client. And encouraged more diligence with making local backup copies of my emails.
there's mailinabox - but instead I would recommend just setting up your own domain with MX records, and using IMAP locally to store archives. Worst case scenario you lose a few hours of email if your provider kicks you, and you can flip to another one.
Wouldn't recommend this, you'll spend your life trying to get taken off reputation blocklists, and if someone like Google flags you then good luck ever getting unbanned. Email is the wild west, and hosting a mailserver (even a personal one) is a massive undertaking in time cost alone.