Outlook能否基于邮件头字段中的数值设置过滤规则?
Outlook能否基于邮件头字段中的数值设置过滤规则?
哎,这个问题太戳中痛点了!我之前也遇到过服务商垃圾邮件阈值太低乱标正常邮件的情况,告诉你个好消息:Outlook完全可以基于邮件头里的数值设置过滤规则,只是默认界面没把这个选项摆到明面上,得稍微绕个小弯操作~
先结合你的情况说:服务商让你看邮件头的X-DFN-Spam-Score而不是主题的[SPAM]标签,这个思路绝对是对的——毕竟主题标签是服务商基于低阈值生成的,而邮件头的分数才是最原始的判断依据,我们自己设更高的阈值就能避开误判。
具体操作步骤(手把手版)
- 打开规则编辑器:在Outlook的「邮件」选项卡找到「规则」按钮,选择「管理规则和警报」→「新建规则」,选「对我接收的邮件应用规则」,然后往下找「使用特定单词在邮件头中」这个条件(别选错成主题或正文哦)。
- 指定要匹配的邮件头字段:点击「特定单词」,在弹出的窗口里输入
X-DFN-Spam-Score:(注意要和邮件头里的写法完全一致,包括冒号),点击添加后确定。 - 细化数值匹配条件:这是最关键的一步!默认规则只会匹配包含这个字段的所有邮件,我们要筛选出分数超过你设定阈值的邮件(比如你想设成4.0,比服务商的3.0阈值高)。
- 在规则编辑界面点击「高级」按钮,打开高级查找窗口;
- 点击「条件」→「邮件头」,然后在「条件」里选「包含」,输入
X-DFN-Spam-Score: 4.(这样匹配所有4.x及以上的分数); - 如果要更精确,还可以添加多个条件,比如
X-DFN-Spam-Score: 5.、X-DFN-Spam-Score: 6.等等,覆盖你认为属于垃圾邮件的分数段; - 要是你的Outlook版本支持通配符,也可以用
X-DFN-Spam-Score: [4-9].来一次性匹配4到9开头的分数。
- 设置规则动作:比如选择「移动到指定文件夹」,选你的垃圾邮件文件夹;或者反过来,设置规则把分数低于阈值的邮件移回收件箱,直接纠正服务商的误判。
补充几个你可能需要的小技巧
- 查看完整邮件头:你说不知道怎么看原始邮件格式?打开任意邮件,点击「文件」→「属性」,在窗口最底部的「Internet邮件头」里就能看到完整的头信息,复制粘贴就行。
- 避免大小写问题:邮件头字段一般不区分大小写,但Outlook的匹配可能比较严格,最好直接从邮件头里复制
X-DFN-Spam-Score:的准确写法,别自己手动打错。 - 进阶方案(VBA脚本):如果觉得文本匹配不够精确,还可以写个简单的VBA脚本,把邮件头里的分数转换成数值,然后做真正的大于/小于比较。不过这个对普通用户有点门槛,先试试前面的规则方法基本够用了。
你的示例邮件头分析
你贴的这个误判邮件头很典型:
X-DFN-Virus-Scanned: Debian amavisd-new at mgw7-tub.srv.dfn.de X-DFN-Spam-Flag: YES X-DFN-Spam-Score: 3.833 X-DFN-Spam-Level: *** X-DFN-Spam-Status: Yes, score=3.833 tagged_above=2 required=3 tests=[BAYES_50=0.1, BOGO_UNSURE=0.1, BT_50=0.01, DKIM_SIGNED=0.1, DKIM_VALID=-0.01, DKIM_VALID_AU=-0.01, DMARC_PASS=-0.01, HEADER_FROM_DIFFERENT_DOMAINS=0.25, HTML_IMAGE_ONLY_16=3.3, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_NONE=0.01, SPF_PASS=-0.01] autolearn=disabled X-DFN-Spam-Report: * -0.0 SPF_PASS SPF: sender matches SPF record * 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record * -0.0 DKIM_VALID Message has at least one valid DKIM or DK signature * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * -0.0 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's * domain * 0.1 BAYES_50 BODY: Bayes spam probability is 40 to 60% * [score: 0.4892] * 0.0 BT_50 BODY: Test Bayes spam probability is 40 to 60% * [score: 0.5003] * 0.0 RCVD_IN_MSPIKE_H4 RBL: Very Good reputation (+4) * [85.222.158.197 listed in wl.mailspike.net] * 0.0 RCVD_IN_MSPIKE_WL Mailspike good senders * 0.2 HEADER_FROM_DIFFERENT_DOMAINS From and EnvelopeFrom 2nd level mail * domains are different * 0.0 HTML_MESSAGE BODY: HTML included in message * 3.3 HTML_IMAGE_ONLY_16 BODY: HTML: images with 1200-1600 bytes of words * 0.1 BOGO_UNSURE Bogofilter is unsure. * -0.0 DMARC_PASS DMARC pass policy
这个邮件明明有大量文本,却被HTML_IMAGE_ONLY_16规则误判,分数3.833超过了服务商的3分阈值,所以被标了[SPAM]。你只要把规则的阈值设成4.0,这类分数在3.x的正常邮件就不会被误移到垃圾文件夹了。
备注:内容来源于stack exchange,提问作者U. Windl




