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 / 问题 / 8936
In Process
Paul Tomblin
Paul Tomblin
Asked: 2009-05-17 07:44:09 +0800 CST2009-05-17 07:44:09 +0800 CST 2009-05-17 07:44:09 +0800 CST

在 Postfix 中的 virtual_alias 上运行 SpamAssassin

  • 772

自从我开始使用 Postfix virtual_alias_maps 将我所有的电子邮件转发到 gmail 以来,我收到的垃圾邮件比我在本地发送邮件并使用 SpamAssassin/spamd 过滤它时多得多。我已经在使用smtpd_recipient_restrictions标准的垃圾邮件过滤器了。

smtpd_recipient_restrictions =
                reject_invalid_hostname,
                reject_non_fqdn_hostname,
                reject_non_fqdn_sender,
                reject_non_fqdn_recipient,
                reject_unknown_sender_domain,
                reject_unauth_pipelining,
                permit_mynetworks,
                reject_unauth_destination,
                reject_rbl_client zen.spamhaus.org,
                reject_rbl_client list.dsbl.org,
                reject_rbl_client korea.services.net,
                permit

无论如何在virtual_alias_maps转发之前通过 SpamAssassin 运行邮件吗?

postfix spamassassin
  • 3 3 个回答
  • 1904 Views

3 个回答

  • Voted
  1. womble
    2009-05-17T16:18:59+08:002009-05-17T16:18:59+08:00

    您目前没有描述您如何进行 SA 过滤,但如果您目前没有通过它放置虚拟邮件,我假设您没有使用 content_filter,这是通常的方式挂了。SpamAssassin wiki 似乎很好地涵盖了这个设置,快速浏览一下:http ://wiki.apache.org/spamassassin/IntegratedSpamdInPostfix

    • 3
  2. Devdas
    2009-05-18T08:44:39+08:002009-05-18T08:44:39+08:00

    远程 MTA 通过 SMTP 将邮件发送到 Postfix。收件人列表是一系列 RCPT 命令。每个 RCPT 命令添加一个收件人地址。当 Postfix 在 vi​​rtual_alias_maps 中获取收件人地址时,它会用 virtual_alias_maps 查找的结果替换该地址。这发生在您的 smtpd(8) 进程中。

    关于如何连接您选择的垃圾邮件过滤机制,您有一些选择。

    您可以在扩展的收件人列表中使用 SpamAssassin。推荐的机制是使用 content_filter。有关详细信息,请参阅http://www.postfix.org/FILTER_README.html。最常用的过滤器是http://www.ijs.si/software/amavisd/

    Mailscanner 存在问题,因为它直接查看队列文件而不是使用标准机制。当您升级 Postfix 时,它可以而且确实会中断。

    第二个不太推荐的选项是通过 SMTP 代理 ( http://www.postfix.org/SMTPD_PROXY_README.html ) 或通过 milter ( http://www.postfix.org/MILTER_README ) 使用队列前过滤机制.html)。

    如果您只想过滤发往某些收件人的邮件,请通过 check_recipient_access 使用 FILTER 目标。见http://www.postfix.org/access.5.html

    如果你想在原始地址上运行 SpamAssassin,我会使用 amavisd-new 的 content_filter 方法。使用 master.cf 条目中的 -ovirtual_alias_maps 将您的 virtual_alias_maps 放入重新注入 smtpd。您可能需要在 smtpd_recipient_restrictions 中添加一个 check_recipient_access 映射,为您在 main.cf 中的有效地址返回 OK。

    • 1
  3. jns
    2009-05-18T03:50:35+08:002009-05-18T03:50:35+08:00

    很大程度上取决于您的操作系统和/或发行版,以及您想要运行 SA 的任何用户,等等......

    在 master.cf 中输入如下内容:

    # aa.bb.cc.dd == your IP
    # example.com == your hostname
    
    aa.bb.cc.dd:smtp      inet    n       -       n       -       -       smtpd
        -o content_filter=spamassassin
        -o myhostname=example.com
        -o smtp_bind_address=aa.bb.cc.dd
    
    # (note content_filter)
    #
    # -snip-
    #
    
    spamassassin unix -     n       n       -       -       pipe
      user=sa argv=/usr/bin/spamc -e /etc/alternatives/mta -oi -f ${sender} ${recipient}
    
    # change 'user=sa' to whatever user you have setup.
    # change '/etc/alternatives/mta' to whatever you're using to put
    # mail back into the queue. (eg: /usr/local/sbin/sendmail )
    # change /usr/bin/spamc to the location of your spamc binary, obviously. :)
    
    • 0

相关问题

  • 如何最小化 SpamAssassin (spamd) 内存使用

  • 我在哪里可以找到 postfix、saslauthd 和 courier 的调优资源 [关闭]

  • postfix 虚拟域是否接受通配符?

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

  • 如何使用 Postfix 将邮件中继到另一台机器?

Sidebar

Stats

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

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

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

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

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

    • 3 个回答
  • Marko Smith

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

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +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