About 2 years ago I had a customer that required their own private mail server. I set up Mail-in-a-Box on a $5 Digital Ocean droplet, and they've been happy with it ever since.
The integration with Let's Encrypt and a relatively smooth upgrade process has made it one of the more enjoyable services I manage. I would highly recommend it.
Came here to suggest MiaB or co-sign. I've been curious about running my own mail server from scratch since you can't run MiaB on the latest Ubuntu flavor.
Another happy mailinabox user here. I love have total control over where my data goes. If you use third-party no-installation-required server monitoring (with Pingdom or something), you can get mobile notifications if your server ever goes down, which for me has only ever happened due to kernel upgrades.
I also have no trouble sending email to Gmail users after carefully following all the steps in the manual! The only sticky point I had was that it required fancy DNS records that Namecheap doesn't support -- I think if I were doing it all over again I'd transfer domains over to a better nameserver.
> Please note that the goal of this project is to provide a simple, turn-key solution. There are basically no configuration options and you can’t tweak the machine’s configuration files after installation.
Can't configure post-install? At all? This seems like it would be a showstopper for some.
I've been running my own mail server with https://mailinabox.email for ~2 years and can heartily recommend it.
Still, even with that there are gotchas if you want to be able to send messages from your server to Google et al, eg. reverse-DNS-records, DKIM, SPF.
Not for the pressed-for-time.