兄弟,最近是不是被销售部门投诉炸了?客户说你们发的报价邮件要么进了垃圾箱,要么干脆收不到。你查了三天日志,IP没被拉黑,服务器也没垮,最后发现是“自己人”把自家邮箱当成骗子了。
这种憋屈我太懂了。干IT十来年,最烦的不是机房断电,而是邮件服务器被人当成“发垃圾的”。今天咱们就唠唠怎么用SPF、DKIM、DMARC这三板斧,让主流邮箱别再把你当敌人。
先聊聊为什么会被当成垃圾
打个比方:你公司邮箱好比是你开的一辆正规出租车,有顶灯、有工号。但你发邮件时,邮局(就是Gmail、Outlook那帮系统)一看:这车没装牌照、副驾驶也没挂服务监督卡,司机还长得像通缉犯。邮局心想“这八成是黑车”,直接连人带车扣了——喏,你的邮件就进了垃圾箱。
SPF、DKIM、DMARC就是给这辆出租车装牌照、监督卡和承诺书。装齐了,邮局才放心让你上路。
SPF:告诉邮局“这辆车是我家公司的”
SPF全称发件人策略框架,说白了就是你公开宣布:哪些IP地址可以冒用我的域名发邮件。
比如你们公司域名是abc.com,你在DNS里加一条记录:
v=spf1 ip4:192.168.1.0/24 include:_spf.google.com ~all
意思是:只有来自192.168.1.x网段,或者经过Google服务器转发的邮件,才算是我abc.com发出的。其他的?爱谁谁,直接标记可疑。
真实案例: 有次我们销售总监去上海出差,用酒店Wi-Fi连VPN后发了封紧急报价单给客户。客户那边直接退信,理由是“SPF检查不通过”。查了半天,原来是VPN的出口IP不在我们的SPF列表里。后来在SPF里加上了公司VPN的IP段,顺便把阿里云、腾讯云等常用办公地点的IP也加了进去。
常见坑: 别把SPF写成v=spf1 ?all或v=spf1 +all——前者是“随便吧”,后者是“谁都行”。等于告诉邮局“我放弃治疗”,还不如不写。
DKIM:给每封邮件贴个防伪标签
SPF解决的是“谁发的”,但解决不了“内容被改”。想想看,就算出租车是正规公司的,但司机在中途把乘客的包换了,怎么办?DKIM就是给每封邮件盖上加密印章。
工作原理像寄快递: 你把邮件放进一个带锁的箱子(私钥加密),箱子上贴着你的公钥(写在DNS里)。邮局收到后,用你DNS上的公钥打开箱子,如果能对上印章,说明这封信从你发出到到达没被人动过。
具体操作: 在你的邮件服务器上生成一对密钥,把公钥发布到DNS记录里。比如:
default._domainkey.abc.com TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQ..."
然后在邮件服务器配置里指定这个密钥。现在主流邮件服务商(Exchange Online、腾讯企业邮、阿里企业邮)都有自动生成DKIM的功能,别手写,用他们的UI点几下就行。
真实案例: 有家做跨境电商的客户,订单确认邮件经常被Hotmail拦截。他们用的第三方邮件营销平台,SPF配好了,邮件还是进垃圾箱。排查后发现是DKIM没配,那个平台默认用的是自己的域名签名,而不是客户的公司域名。后来在平台配置里改成“自定义域签名”,把DKIM公钥加到自己的DNS上,瞬间解决。
DMARC:告诉邮局“发现伪造邮件怎么办”
前两样好比是“我有牌照”和“我有防伪标签”。但万一有骗子伪造你的公司名,寄出了一封假邮件怎么办?邮局得有个处理办法吧?DMARC就是你的“强制执行标准”。
格式比如:
_dmarc.abc.com TXT "v=DMARC1; p=quarantine; sp=none; rua=mailto:dmarc-reports@abc.com"
p=quarantine:检查不通过的邮件,扔进垃圾箱(挺狠)p=reject:直接拒绝,连垃圾箱都不进(更狠)p=none:只收报告,不处理(先观察)
重要: 开始别直接上reject,先用none模式收几天报告。你会看到有多少假邮件在冒用你的域名。等确认SPF/DKIM配置无误了,再慢慢调到quarantine甚至reject。
真实案例: 有个同事刚上任就拍胸脯说“我直接上reject”,结果把老板从米国发来的会议邀请全拦了——因为那封邀请其实是老板的私人邮箱(不是公司域名)发的,但SPF里没有包含那个私人邮箱的IP。最后他连夜改成quarantine,第二天加了那条IP才敢调回去。
三件套上齐后怎么验证?
别急,先拿小号发几封试试。用这些免费工具测一下:
- MXToolbox的SPF、DKIM、DMARC检查
- Google的“Postmaster Tools”(管理员工具)
- 或者直接发一封信到
check-auth@verifier.port25.com,它会给你一份详细的报告
常见兼容性问题:用了第三方邮件平台(比如SendGrid、Mailgun)发营销邮件,记得在SPF里加上他们的include,DKIM用他们的签名方案,DMARC策略要一致。否则你配置再完美,第三方发出去的邮件还是会翻车。
最后说几句掏心窝子的话
这三样配置本身不难,难的是排查和协调。如果你是第一次搞,建议:
- 先配SPF(最简单,30分钟搞定)
- 观察一周,看报错减少没
- 加DKIM(可能需要联系邮件服务商提供密钥)
- 最后用DMARC的none模式收集报告
- 一个月后再决定要不要强制执行
记住,任何改动都先用小范围测试,别一上来就全局生效。不然你可能会收到老板的夺命连环call:“为什么我发不了邮件了?!”
要是觉得自己搞太费劲,或者域名太多想批量管理,市面上有些企业邮件安全方案能帮你一键部署。更多方案可访问 itfangan.com,我们团队整理了几种主流邮件安全的落地案例,包括Exchange Online、Google Workspace、自建Postfix的详细配置,免费下载。
希望你的邮箱再也不用当“冤大头”了。搞定了记得请兄弟们喝奶茶。