Ubuntu环境下如何检查邮件来源的DMARC记录并验证邮件DMARC签名有效性(类似dkimpy的dkimverify命令)
Ubuntu环境下如何检查邮件来源的DMARC记录并验证邮件DMARC签名有效性(类似dkimpy的dkimverify命令)
嗨Christophe,我明白你想要一个像dkimverify那样简单的命令来验证邮件的DMARC有效性,不过先得澄清一个关键点:DMARC本身没有独立的签名哦!它是基于SPF(发件人策略框架)和DKIM(域名密钥识别邮件)的验证结果,再结合发件域的DMARC政策来判断邮件是否合规的。不过别担心,Ubuntu上有现成的工具能帮你完成一站式的DMARC合规检查,下面就给你详细说明:
1. 安装DMARC验证工具opendmarc
Ubuntu官方仓库里就有这个工具,直接用apt安装即可:
sudo apt update && sudo apt install opendmarc
2. 用类似dkimverify的命令验证邮件
安装完成后,你可以用opendmarc-testmsg命令来直接验证本地的eml文件,用法和你熟悉的dkimverify几乎一样:
opendmarc-testmsg < email.eml
执行后,命令会输出验证结果,常见的结果包括:
pass:邮件符合该域的DMARC政策(SPF/DKIM至少一个通过且对齐)fail:邮件不符合DMARC政策none:该发件域没有配置DMARC记录
3. 额外:单独查询发件域的DMARC记录
如果你想先确认发件域有没有配置DMARC政策,可以用dig命令查询:
dig +short TXT 你的发件域名 _dmarc
比如查询gmail的DMARC记录就是:
dig +short TXT gmail.com _dmarc
返回的内容里会包含该域的DMARC规则,比如p=reject表示不符合政策的邮件会被拒收,p=quarantine表示会被隔离。
小提醒
DMARC的核心逻辑是:SPF或DKIM验证通过,且其中至少一个的域和发件人邮箱的域名对齐,opendmarc-testmsg会自动帮你完成这些判断,不用你手动去核对SPF和DKIM的结果啦。
备注:内容来源于stack exchange,提问作者Chris
相关产品推荐
相关产品推荐

