Hello. Let’s say I want to selfhost an email server (smtp + imap) that only will be used to receive email.
I only will send email internally (from my domain to my domain) and receive from 3rd parties.
Should I setup DKIM, DMARC, SPF and reverse IP lookup?
To be honest, I’m having a bit of hard time understanding the madness of email authentication. So I can’t figure it out by myself if those mechanisms are needed in my case.
I haven’t deployed anything, but probably will use Stalwart. It looks like it’s easy to deploy. Is there any other beginner-friendly email service I should read about?
Thanks!
You should definitely set up a DMARC record to prevent other people from using your email domain to send spam. If you don’t have DMARC configured, other email servers will give any senders the benefit of the doubt and accept mail that claims to be from your domain.
You can just set the DMARC record to reject 100% of unverified mail and call it a day. Since you aren’t sending anything it won’t affect you.
I would also set up SPF to disallow all IPs to send mail for that domain in case some system supports SPF but not DMARC.
Thanks to both of you.
I had the hope that DMARC, SPF and DKIM was stuff I could just ignore if not sending email. It seems I was wrong about that.
Those three are really not all that complicated, basically (apart from DKIM which you can ignore when not sending) they are just a couple of TXT DNS records you need to set once for your domain. Even if you were using DKIM it is just a keypair you generate and then put the public key into a DNS TXT record and configure your mail server to use the private key.
Just to flesh that out a bit… All you need is to add a TXT record to your DNS records:
Name:
_dmarc.yourdomain.com
Value:
v=DMARC1; p=reject; pct=100
You misspelled “black-hole your domain forever”.
Some strict mail servers even blacklist you if the DMARC record is missing.