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 / 问题 / 683044
Accepted
Richard T
Richard T
Asked: 2015-04-16 15:24:41 +0800 CST2015-04-16 15:24:41 +0800 CST 2015-04-16 15:24:41 +0800 CST

使用 Postfix 在 Fedora 21 上配置 spamassassin

  • 772

在现代 Fedora 系统上安装 spamassassin 时,我无法在任何地方找到任何帮助。那里的所有建议都是旧的并且不适用 - 反正我发现。官方文档与 Fedora 无关——它过于笼统并且缺少重要的 Fedora 实现细节。

而且,它是如何完成的还不够直截了当,我知道该怎么做!最重要的缺失环节似乎是我告诉Postfix如何调用spamassassin. 但是,在哪里定义配置选项也完全不清楚。

接下来还有很多,但也许这一切都归结为没有人愿意提供有关 Postfixsmtpd_milter条目应该是什么的适当信息。而且,我尝试过的条目是基于在“/usr/share/doc/spamass-milter-postfix”中找到的数据,这个文件说正确的值是 unix:/run/spamass-milter/postfix/sock 但是目录存在,套接字条目不存在,并返回下面引用的错误消息。

...好吧,更长的故事:

我已经安装了这些版本:

spamass-milter-0.4.0-1.fc21.x86_64
spamass-milter-postfix-0.4.0-1.fc21.noarch
spamassassin-3.4.0-13.fc21.x86_64

同样,这是 Fedora 21。安装的 Postfix 是:

postfix-2.11.3-1.fc21.x86_64

当我运行“man spamassassin”时,它指向我/var/lib/spammassassin/3.004000,其中包含“updates_spamassassin_org.cf”和一个同名的子目录(减去 .cf),该子目录又包含大量 (65) 个 .cf 文件。手册页还指向我,/usr/share/spamassassin其中又包含大量 (63) 类似名称的 .cf 文件,这些文件并不完全相同。

我当然希望我不必为了让 spamassassin 工作而学习所有这些知识!值得庆幸的是——但还不够——手册页还指向我,/etc/mail/spamassassin其中包含一个名为local.cf. 在那里,我找到了一个关于如何安装 spamassassin 并将其与后缀集成的页面的链接 - 此处 (),但该建议还不够,而且似乎不是那么有头绪。例如,它建议的第一件事是创建一个名为“ spamfilter”的组和用户帐户,当然,股票yum安装已经创建了帐户sa-milt,其条目似乎是正确的:

sa-milt:x:982:477:SpamAssassin Milter:/var/lib/spamass-milter:/sbin/nologin 

我想需要在 Postfix 的 main.cf 中创建一个条目来创建或添加一个名为的条目smtpd_milters,以包含告诉 Postfix 如何调用 spamassassin 所需的任何链接。目前我有一个条目openDKIM:

# This is for openDKIM - missing are clamav and spamassassin:
smtpd_milters = inet:localhost:8891

因此,在我看来,创建这些用户帐户是错误的。此外,如果需要这些帐户,为什么安装脚本没有创建用户和组?此外,它还谈到了使用“ service”来启动 spamassassin,但是,正如任何称职的 Fedora 21 系统管理员所知道的那样,您不使用“服务”,而是使用systemctl!

……无视……

该服务确实开始 - 并保持 - 使用:

systemctl start spamassassin

但是,它不起作用。

特别是,在我看来,显然需要在 postfix 中添加一个钩子,但也很明显,非 Fedora 21 的策略失败了。我们被指示更新 Postfix 的 main.cf smtpd_milters 条目 - 这是他们的建议:

# First entry is for openDKIM 
smtpd_milters = inet:localhost:8891, unix:/run/spamass-milter/postfix/sock

但问题是,这行不通。我们在日志文件中得到这个:

postfix/smtpd[18151]: warning: connect to Milter service unix:/run/spamass-milter/postfix/sock: No such file or directory

但是,我似乎找不到smtpd_milters此版本组合的正确条目!

很明显,某处应该有安装说明,但我发现的所有内容都与这些版本无关。请告诉我应该如何做,或者指出我在哪里可以找到适用的合格文章!特别是,什么是合适的smtpd_milters条目或者,我如何创建一个有效的配置组合(smtpd_milters / spamassassin 配置)?

postfix
  • 4 4 个回答
  • 2785 Views

4 个回答

  • Voted
  1. masegaloeh
    2015-04-18T00:51:29+08:002015-04-18T00:51:29+08:00

    您还需要启动垃圾邮件服务。

    systemctl start spamass-milter
    

    并验证了它的工作原理

    systemctl status spamass-milter
    

    和

    netstat -an | grep spamass-milter
    

    默认情况下,spamassassin 仅附带spamd二进制spamc文件。Do daemon 包含在包中。这就是为什么您需要使用bash script、amavisd或 spamass-milter 之类的集成器(例如这种情况)

    • 1
  2. Best Answer
    Richard T
    2015-04-18T15:21:12+08:002015-04-18T15:21:12+08:00

    事实证明,在咬牙切齿之后,我注意到我安装了一个包,到目前为止,NOBODY 引用了我所见过的包。它被称为spamass-milter-root。

    所以,在检查了我能想到的一切之后,我想,为什么不呢?...(“#”是系统 root 帐户的 CLI 提示符。)

    # systemctl enable spamass-milter-root.service
    Created symlink from /etc/systemd/system/multi-user.target.wants/spamass-milter-root.service to /usr/lib/systemd/system/spamass-milter-root.service.
    # systemctl status spamass-milter-root.service  -;
    ● spamass-milter-root.service - Mail filter for SpamAssassin
       Loaded: loaded (/usr/lib/systemd/system/spamass-milter-root.service; disabled)
       Active: active (running) since Fri 2015-04-17 15:53:41 PDT; 1min 3s ago
      Process: 2353 ExecStartPre=/bin/chown -R root /run/spamass-milter (code=exited, status=0/SUCCESS)
     Main PID: 2356 (spamass-milter)
       CGroup: /system.slice/spamass-milter-root.service
               ├─2356 /usr/sbin/spamass-milter -g postfix -p /run/spamass-milter/...
               └─2370 /usr/bin/spamc
    
    Apr 17 15:53:41 ms1 spamass-milter[2356]: spamass-milter 0.4.0 starting
    Apr 17 15:54:00 ms1 spamass-milter[2356]: Could not retrieve sendmail mac...s
    

    而且,当我在一个窗口中向上时,当我突然(!!)这一切刚刚开始在我眼前tail -f /var/log/maillog处理数百封邮件时,我感到震惊!spamd耶!

    现在还有其他问题,例如,对这些消息的分析会产生什么影响......

    为了清楚起见,这里有两个命令解决了这个问题......请记住,这是完成所有其他配置工作:

    # systemctl enable spamass-milter-root.service
    # systemctl start spamass-milter-root.service
    

    完毕。

    • 1
  3. zbyszek
    2022-02-06T01:37:33+08:002022-02-06T01:37:33+08:00

    使用默认配置,postfix 无法连接到 spamass-milter,因为它无法访问/run/spamass-milter/spamass-milter.sock

    要允许它连接:

    1. 加入SOCKET_OPTIONS='-g mail'(/etc/sysconfig/spamass-milter这使得组拥有的套接字mail)
    2. 呼叫usermod -a -G mail sa-milt(sa-milt在邮件组中,可以将组设置为所有者)
    3. 重启服务:systemctl restart spamass-milter.service
    • 0
  4. shodanshok
    2015-04-18T01:31:03+08:002015-04-18T01:31:03+08:00

    我不会通过 milter 使用 spamassassin。我觉得 amavisd 是一个更好的选择(例如:它通过 clamav 提供防病毒保护)。

    在这里您可以找到 RedHat/CentOS 的一些集成步骤;对于 Fedora,它们应该是比较相似的。

    • -1

相关问题

  • 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