Is it possible to do it? Is it less hassle than trying to play nice with Google or Microsoft in order not to have your email sent to spam or not received at all?
Email hosting is hard for two reasons. The first is that there are too many parts to configure - MTA, MDA, DKIM, RDNS, spam filter, webmail, etc. The viable solution is to use a turnkey solution like mailinabox, mailcow or mailu.
The second problem is deliverability. At the minimum, you will have to ‘warm up’ the server. You will have to send a few dozen mails to others and ask them to mark as not-spam. Even then, a lot of other factors come into play - like the IP address block (for example, mails from AWS always gets blocked), domain name and even the top-level domain - they all influence the spam filter score.
Meanwhile, deliverability with Google and Microsoft (incl google workspace and ms 365) are lost causes. Google sends your mail to the spam folder irrespective of your spamassasin score. They provide no viable solution to this. MS on the other hand just drops mail silently. This isn’t a bug. Both of them are trying to destroy the federated nature of email and consolidate all email business to themselves.
Meanwhile, the big players like fastmail and migadu get better treatment. Especially, migadu is a good choice if you want unlimited aliases.
Finally, talking about aliases. Most services (except migadu) offer only a few aliases. That limitation is not there for selfhosted email. An alternative to aliases is to use + addresses (eg: [email protected]). The advantage of this method is that you can make up multiple addresses on the fly (without registering) using a single alias/address. You can use this in combination with a filter like sieve (server-side) or notmuch (client-side) to sort and filter incoming mail.
@tesseract Yea, I was thinking about using aliases and alias providers as a middle-man to send&receive emails to&from providers that are known to be hard to tackle for people self-hosting their email. I understood from the article I linked that setting up an email server and maintaining it is a hassle itself, but I was wondering whether doing what I said above does make things easier for me or if it would be an extra burden.
Using a public service like proton or firefox for that has the advantage of you blending in with the crowd, i.e. the service doesn’t know who the account belongs to whereas the service knows exactly that it belongs to you because only you have the top level domain.
In theory … in the real world it doesn’t matter too much because noone will hunt you down.
I guess that it’s no more of a hassle than using one email with your own top level domain.
SimpleLogin has it’s selfhostable thing Not exactly sure how that works
I recently moved all my personal accounts to a VPS instance. I decided on Mailu’s docker compose setup because of its ease of use and it has been working great so far.
I used Oracle’s free tier cloud (4 ARM vcpus and 24GB of memory) and email delivery instances so it’s worth a try, but any other cloud provider offer similar options.
deleted
I could have had an x86 server running with that much RAM
You only get that much memory with ARM. With x86 I think you only get 2 vcpus and 4GB of RAM. But for containers, if they run on ARM, it’s great. And Mailu has been running very smoothly so far.
As of downsides… well, it’s Oracle. But other than that, I actually find Oracle Cloud interface and offerings much more intuitive and straightforward than other big providers such as AWS or specially Azure, at least for non power users.
@aguslr cool. Thank you for the tips!