Spam
SpamAssassin 與 dovecot-antispam 培訓
我正在嘗試讓 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 的 UID
dovecot
呼叫,因此沒有足夠的權限來更新貝氏數據庫。sa-learn``sa-learn
您必須將
dovecot
的使用者添加到spamd
組並確保您有下一行bayes_file_mode 0660
在
etc/spamassassin/local.cf
文件中。您還必須驗證貝氏數據庫是否已經具有權限 0660。然後重新啟動
spamassassin
。