Spam

SpamAssassin 與 dovecot-antispam 培訓

  • July 2, 2015

我正在嘗試讓 dovecot-antispam 與 SpamAssassin’ sa-learn 一起工作。這是我的 Dovecot 配置:

antispam_backend = pipe
antispam_trash = trash;Trash;Deleted Items; Deleted Messages
antispam_spam = Junk
antispam_pipe_program_spam_arg = --spam
antispam_pipe_program_notspam_arg = --ham
antispam_pipe_program = /usr/bin/sa-learn
antispam_pipe_tmpdir = /tmp

但是,我似乎無法讓它工作。當我嘗試在我的 MUA 中將假陰性從/移到我的垃圾文件夾時,我收到以下錯誤:

[SERVERBUG] Failed to send mail

這是 dovecot-antispam 記錄的內容:

imap: antispam: mail copy: src spam: 1, dst spam: 0, src unsure: 0
imap: antispam: running mailtrain backend program /usr/bin/sa-learn
imap: antispam: running mailtrain backend program /usr/bin/sa-learn
imap: antispam: running mailtrain backend program parameter 1 --ham
imap: antispam: run program failed with exit code 2

顯然,sa-learn以程式碼 2 退出。但是,我不知道這意味著什麼。sa-learn 的文件沒有提到任何關於退出程式碼的內容,所以我不知道應該從哪裡開始調試它。

當您移動消息時,然後使用 dovecot 的 UIDdovecot呼叫,因此沒有足夠的權限來更新貝氏數據庫。sa-learn``sa-learn

您必須將dovecot的使用者添加到spamd組並確保您有下一行

bayes_file_mode 0660

etc/spamassassin/local.cf文件中。

您還必須驗證貝氏數據庫是否已經具有權限 0660。然後重新啟動spamassassin

引用自:https://serverfault.com/questions/703173