Email Cerebus and the Three-Body Problem

BLUF: Many people find it difficult to run small, independent email servers due to the behavior of the three largest providers. This post will give some thoughts on email’s three-body problem and on alternatives to Email Cerberus.

Email was originally intended to be a set of decentralized protocols that would have each have multiple implementations, that would each have multiple instances; a hundred implementations would bloom, thousands of servers would provide. Over time, the market of email providers has shrunk, with the Email Cerberus (GMail, Microsoft and Yahoo) having enormous sway over the email landscape. They have the power to reject email from particular domains, and it is hard to get them to reverse their decisions. If you are blacklisted by a provider, you can still get email from other domains, but domains hosted by that provider do not get your emails. Two-way conversations become sources of frustration. This has made it very difficult for small firms and individuals to run their own email servers. Many of them give up and outsource, either to one of the big three, or to a specialized provider.

When you check your email, you are using either POP to get emails from the server to your local machine, or IMAP to read them on an email server. When you send an email, your client sends your message to an SMTP server, which is how servers communicate with each other. For web-based email like Gmail, the web application is just a wrapper around these email protocols.

Over time, more protocols were added to reduce spam, like DomainKeys Identified Mail (DKIM), Sender Policy Framework (SPF) and Domain-based Message Authentication, Reporting and Conformance (DMARC). If your domain gets blacklisted by Email Cerberus, usually it is because you did not set up your DNS entries and email server to conform to these protocols to their satisfaction. One of the more insidious “innovations” by the techbros in Silicon Valley is that is it next to impossible to talk to an actual human to solve your problem. Once the algorithm has decided, your fate is sealed.

If you decide to take your life into your own hands and run your own email server, there are a couple of projects that make it easier to self-host: iRedMail and Mail-in-a-Box (project homepage here, Wikipedia page here). Each protocol is handled by a different application, and there is also a database script to handle the storage of messages. Mail-in-a-Box lists the different components on their Github page. These projects have their own support channels. You can also check out the /r/selfhosted subreddit (self-hosted email is only one topic amongst others on that sub). I do not think either of them can support sending emails from multiple domains.

There are companies that specialize in webmail. Wikipedia has a list here. Based on comments/blogs/toots, some favorites are Fastmail, Hushmail, Protonmail and Tutanota. I think you can use either their web interface or your own client for most of the services on that page. Avoid Mail.ru (now VK) and Yandex.

I found a few others mentioned on the /r/webhosting subreddit: MX Route, Great Mail, 25 Mail St, Roller and Migadu. I have not looked at these too closely, but I assume they are not just front-ends for one of the larger providers. There is a company in Austin called MxToolbox (which is very close to where I live). It looks like they do not provide email hosting. I think they help with setup and monitor your email traffic to ensure your emails are going where they need to go and help you avoid getting blacklisted.

You could also use your shared web host as your email provider. Some of the comments on /r/webhosting were that using your webhost for your email is a bad idea, but I am not a business, and so far it seems to be working out. You can find an incomplete list here.

Sometimes a web host will just outsource email to one of the big three; I think both Dreamhost and Bluehost use Gmail under the hood, and Rackspace uses Office 365.

I use InMotion webhosting. They use Exim based on what I can see in the headers. For a month I have able to send emails that did not get rejected. They use CPanel, and it had links for all my domains for DKIM and SPF and buttons to fix them. The SPF is there. I did not do anything with DMARC. Yahoo said that the DKIM was unknown. Perhaps InMotion needs to restart their mailserver, or CPanel is not hooked up correctly.

There are a couple of forum sites about email: Email Questions and Email Discussions. They have posts about setting up servers and news and trends in the industry.

This post was created in Emacs with Org Mode and Love. You’re welcome.

But do not forget this site has a disclaimer.

Image from the Adysh Gospel, a 9th-century Georgian manuscript housed at the Svaneti Museum of History and Ethnography; image from The Gabriel Millet Collection (image page here, collection page here), assumed allowed under public domain.

Leave a Comment