AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1042087
Accepted
chmike
chmike
Asked: 2020-11-11 11:32:38 +0800 CST2020-11-11 11:32:38 +0800 CST 2020-11-11 11:32:38 +0800 CST

Amavis 在主题中添加垃圾邮件标记,但邮件不是垃圾邮件

  • 772

我有一个带有 posfix、amavis 和 spamassassin 的 Debian 10 服务器。

我管理的另一台服务器每天都会发送一封邮件,其中不包含任何内容,只有一个 gif 作为附件。我已将 spamassassin 的 local.cf 中的发件人地址列入白名单。

收到的邮件的标头包含以下内容:

X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on ~~~.~~~.net
X-Spam-Level: 
X-Spam-Status: No, score=-93.2 required=5.0 tests=ALL_TRUSTED,BAYES_50,
    DC_GIF_UNO_LARGO,DC_IMAGE_SPAM_TEXT,MISSING_HEADERS,PYZOR_CHECK,
    SB_GIF_AND_NO_URIS,TVD_SPACE_RATIO,USER_IN_WHITELIST autolearn=no
    autolearn_force=no version=3.4.2

这表示邮件不被视为垃圾邮件,因为发件人地址在白名单中。

问题是主题字段包含[SPAM]哪个是垃圾邮件标记。这个垃圾邮件标记在我的 spamassassin local.cf 和 amavis 中定义。我还不知道两者中的哪一个正在添加此垃圾邮件标记。

根据amavis的配置,不应该放垃圾标签,因为我在配置里有这个

$sa_tag2_level_deflt = 5.0; #add spam tag to subject for score greater than this value
$sa_spam_subject_tag = '[SPAM]';

如我们所见,分数较低。amavis 不应添加此垃圾邮件标签。

那么如何在主题行中获取垃圾邮件标签?

我确定问题出在我的邮件服务器上,因为当我将该邮件发送到另一个地址时,我没有收到垃圾邮件标签。

另一个奇怪的事情是,当我从桌面发送具有相同发件人地址的完全相同的邮件时,它没有收到垃圾邮件标签。

编辑:我有另外两封邮件的 amavis 行为不一致。

通过一封邮件,我有这个: 

Received: from localhost by xxx.xxx.net
    with SpamAssassin (version 3.4.2);
    Wed, 11 Nov 2020 17:08:01 +0100
From: huixin0010 <[email protected]>
Subject: [*SPAM*] [~SPAM~]Re: Leather bags manufacturer with 14 years experience
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on xxx.xxx.net
X-Spam-Flag: YES
X-Spam-Level: ******
X-Spam-Status: Yes, score=6.3 required=5.0 tests=BAYES_50,DEAR_SOMETHING,
    FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,
    HTML_MESSAGE,HTML_MIME_NO_HTML_TAG,MIME_HTML_ONLY,PYZOR_CHECK,
    RCVD_IN_MSPIKE_BL,RCVD_IN_MSPIKE_L5,RDNS_NONE,T_SPF_HELO_PERMERROR
    autolearn=no autolearn_force=no version=3.4.2

[*SPAM*]spamassassin 添加[~SPAM~]的垃圾邮件标签和 amavis 添加的垃圾邮件标签在哪里。

规则设置为 amavis 在分数高于 5 时添加垃圾邮件标签。

出乎意料的是下面这封邮件,即使分数高于 5,amavis 也没有在主题中添加垃圾邮件标签。

Received: from localhost by xxx.xxx.net
    with SpamAssassin (version 3.4.2);
    Wed, 11 Nov 2020 18:08:24 +0100
From: liyulan029 <[email protected]>
To: xxx <[email protected]>
Subject: [*SPAM*] Re: new design eyeglasses frame and sunglasses
Date: Thu, 12 Nov 2020 01:10:33 +0800 (CST)
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on xxx.xxx.net
X-Spam-Flag: YES
X-Spam-Level: ******
X-Spam-Status: Yes, score=6.2 required=5.0 tests=BAYES_50,DEAR_SOMETHING,
    FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,
    HTML_MESSAGE,HTML_MIME_NO_HTML_TAG,MIME_HTML_ONLY,RCVD_IN_RP_RNBL,
    RDNS_NONE autolearn=no autolearn_force=no version=3.4.2

这两个邮件之间的服务器上没有任何变化。

postfix spamassassin amavis
  • 1 1 个回答
  • 1017 Views

1 个回答

  • Voted
  1. Best Answer
    chmike
    2020-11-17T07:06:08+08:002020-11-17T07:06:08+08:00

    有两个主要问题。

    第一个是我试图变得聪明并使用两组不同的规则配置 amavis。一个用于外部来源的邮件,另一个用于内部来源的邮件(提交到端口 587 或 465 的邮件)。这使得 postfix 和 amavis 的配置更加复杂。它可能有错误。

    第二个是那个,final_virus_destiny并且final_spam_destiny配置了D_PASS. 它们现在配置为D_DISCARD. 可能是在D_PASSmode下,amavis有问题。我不确定。现在,通过D_DISCARD, 邮件被隔离,并向邮局主管发送报告。

    这是存储在/etc/amavis/conf.d/99-local.

    use strict;
    
    # Place your configuration directives here.  They will override those in
    # earlier files.
    
    
    # -- General configuration options
    
    $myhostname = 'smtp.xxx.xxx';
    @local_domains_acl = (".xxx.xxx",".yyy.yyy");
    @mynetworks = qw(127.0.0.0/8 ::1/128);
    $X_HEADER_LINE = "by Amavis at $mydomain";          # Customize header line (don’t show version)
    #$log_level = 5; 
    
    # -- Parameters for anti-virus
    @bypass_virus_checks_maps = (
       \%bypass_virus_checks, \@bypass_virus_checks_acl, \$bypass_virus_checks_re);
    $final_virus_destiny = D_DISCARD;                   # Quarantine virus mails for science
    $virus_admin = "postmaster\@$mydomain";             # Where to send virus notification (the default)
    
    
    # -- Parameters for anti-spam
    @bypass_spam_checks_maps = (
       \%bypass_spam_checks, \@bypass_spam_checks_acl, \$bypass_spam_checks_re);
    $final_spam_destiny = D_DISCARD;                    # Quarantine spam mails for recovery if no spam
    $spam_admin = "postmaster\@$mydomain";              # Where to send spam notification
    $sa_tag_level_deflt = -999;                         # Add X-Spam headers when score is above that level
    $sa_tag2_level_deflt = 5.0;                         # Add spam subject tag when score above that level
    $sa_spam_subject_tag = '[SPAM] ';                   # Spam subject tag 
    $sa_kill_level_deflt = 5.0;                         # DISCARD mail when score is above that level
    
    
    # -- Parameters for banned mails
    $final_banned_destiny = D_DISCARD;                  # Quarantine banned mails for debugging
    $banned_admin = "postmaster\@$mydomain";            # Where to send notification
    
    # -- Parameters for bad header mails
    $final_bad_header_destiny = D_DISCARD;              # Quarantine bad header mails for debugging
    $bad_header_admin = "postmaster\@$mydomain";         # Where to send notification
    
    ... <skip dkim configuration> ...
    
    1;  # ensure a defined return
    
    
    • 0

相关问题

  • Postfix 在特定端口上接受邮件

  • 让 Postfix 以两种方式处理垃圾邮件

  • Postfix 或 exim:自动/程序化和转发电子邮件设置

  • 后缀电子邮件地址

  • 什么是最好的开源电子邮件解决方案包

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve