Я пытаюсь получить работу против спама голубятней с SpamAssassin' sa-learn. Это - моя конфигурация Голубятни:
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
Однако я, может казаться, не получаю его работа. Когда я пытаюсь переместить ложно-отрицательное из/в свою папку Junk в моем MUA, я получаю следующую ошибку:
[SERVERBUG] Failed to send mail
Это - то, что зарегистрировано против спама голубятней:
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
вызывает sa-learn
с UID dovecot, так что sa-learn
не имеет достаточных разрешений для обновления байесовых баз данных.
Вы должны добавить пользователя dovecot
в группу spamd
и убедиться, что у вас есть следующая строка
bayes_file_mode 0660
в файле etc/spamassassin/local.cf
.
Также вы должны убедиться, что у баз данных bayes уже есть разрешения 0660. Затем перезапустите спамассасин
.