When I get drunk, I have a habit of doing very silly or ill-advised things. So it was that I came home from my office party half-cut, and decided to get my own email server.
Now, I’m not starting from zero here. Before I was a lawyer I was an IT guy. I know how email works. But I’ve not actually run a mail server for the thick end of 15 years. I suspected things might have changed a bit.
Boy, have they changed. In my day, you pretty much set up the MX and PTR records, spun up your MTA, opened up port 25 and went about your day.
These days? It’s all about getting receiving servers to trust your domain and your box. I’ve had to learn about SPF, DKIM and DMARC. I’ve had to set special DNS records so that GMail will accept my messages. I’ve had to carefully and deliberately get my IP and domains off blacklists, and keep them that way. It’s been a real adventure.
Fortunately, the actual business of installing a mail server has got wildly easier over the intervening decades, thanks to the miracle of docker and a wonderful project called Mailcow. Once I had my DNS set up right, installing Mailcow was literally about 4 commands. For that, I get mail, calendar, contacts, easy domain routing, activesync, rspamd, clamav … the works.
I’m not using a residential IP, of course. I’ve spun up a Digital Ocean droplet to run all this. And slowly, I’m getting trusted by other servers.
It’s interesting to be learning again.