Dovcot AntiSpam Errors:
- [SERVERBUG] failed to send mail --> Thunderbird response when move
from ANY to spam and the other way arround.
- [CANNOT] Cannot copy to unsure folder --> Thunderbird response when
move from ANY to unsure and the other way arround.
- run program failed with exit code 9 --> debug.log output from antispam
plugin.
^^ Maybe someone will find this in an archive and saves himself a
_freakn_lot_of_time_ ;)
Hi Nikita Koshikov,
first of all: Thanks for your reply - much apreciated! ;) It wasn't a
problem of user rights - that's for sure now.
second: @Tom Hendriks: Thanks for the script hint!! ... but still ...
very weired - actually extremely weired, cause if I invoke the script it
works perfectly - don't ask me why - it's still a mystery to me since
there is acutally no difference to how sa-learn is invoked:
script:
server [~]# cat /script.sh
#!/usr/local/bin/bash
#
# - must be bash, cause I was not able to make it log
stdout/stderror/stdin into a file ...
# - $1,$2,$3,$4 puts all the 4 given parameters/args by dovecot into the
sa-learn command.
# - make sure to chmod 0777 /DoveDamnAntispam.log
#
#######################################################################
/usr/local/bin/sa-learn $1 $2 $3 $4 &> /DoveDamnAntispam.log
server [~]#
Antispam part of dovecot.conf:
### Dovecot AntiSpam ###
# mail signature (used with any backend requiring a signature)
#antispam_signature = X-Spam-Status
#antispam_signature_missing = move
antispam_mail_sendmail = /script.sh
#antispam_mail_sendmail = /usr/local/bin/sa-learn
antispam_mail_sendmail_args = --username=%u;--debug;all
antispam_mail_spam = --spam
antispam_mail_notspam = --ham
antispam_mail_tmpdir = /tmp
antispam_spam = Spam
antispam_unsure = Virus
antispam_trash = Trash
I mean there is not a difference at all to me compared to what I've had
before?! But what ever - I got it working - that's the most important ;)
So, thanks alot, hey!
Best regards!
Am 04.08.10 08:35, schrieb Nikita Koshikov:
On Tue, 03 Aug 2010 23:16:38 +0200
Leander S. wrote:
Hi Nikita Koshikov,
when I googled for my SERVERBUG which I'm having right now I found your
configuration.
I'm trying to make use of the antispam plugin as you do. Unfortunately
I'm always getting a [SERVERBUG] error mesage with my MTC when I try
moving mails. The antispam debug.log doesn't really tell a lot of more:
### Dovecot AntiSpam ###
# mail signature (used with any backend requiring a signature)
#antispam_signature = X-Spam-Status
#antispam_signature_missing = move
antispam_mail_sendmail = /usr/local/bin/sa-learn
antispam_mail_sendmail_args = --username=%u;--debug;all
antispam_mail_spam = --spam
antispam_mail_notspam = --ham
antispam_mail_tmpdir = /tmp
antispam_spam = Spam
antispam_unsure = Virus
antispam_trash = Trash
First of all - what OS is this ? BSD ? And how did you install your
spamassassin (ports\compiling from source)?
Show your local.cf file (/etc/mail/spamassassin or
/usr/local/etc/mail/spamassasin).
After reading perldoc Mail::SpamAssassin::Conf add to your local.cf for
debugging:
bayes_file_mode 0777
bayes_path /tmp/.spamassassin/bayes
Create folder /tmp/.spamassassin and set permitions 777.
Restart spamd with dovecot and try it.
I also read through the sa-learn script but wasn't able to figure out
where this number 9 is coming from ;/
... SIGKILL 9 Term Kill signal - but where from ?!
sa-learn has lots of die() function, this should be enough for raising SIGKILL.
Do you maybe have any idea? I tried different Dovecot versions already -
alwys the same ... Might there maybe somethign wrong with my syntax?
Any way - thanks a lot in advance& regards
If you stuck after all, remember that sa-learn has -D key, it generate tons of
output. Create wrapper and run sa-learn with -D keyword from dovecot, save
result and have fun.
On 03/08/10 23:17, Leander S. wrote:
> Am 03.08.10 22:53, schrieb Gregory Finch:
>> On 2010-08-03 1:41 PM, Leander S. wrote:
>>> Am 28.07.10 23:43, schrieb Harlan Stenn:
>>>> Figure out exactly what script is running and see if it says why it
>>>> would return with a status of 9. If that is because of a SIGKILL,
>>>> it is
>>>> because some process is sending that signal. You are gonna get to
>>>> figure out what debug knobs to crank to figure out why this is going
>>>> on.
>>>>
>>>> Can you invoke any of this stuff manually from the command line to see
>>>> what messages may come up?
>>>>
>>>> h
>>> Hi,
>>>
>>> unfortunately I still wasn't able to figure out what's going on. I
>>> tried to debug the sa-learn perl script and I wasn't able to find any
>>> hint to that code. (I'm not a beginner) But I guess that this is not
>>> an issue of sa-learn. Why? Because sa-learn does as I asked it to.
>>> sa-learn writes everything into the SQL DB as wanted - but the mail is
>>> not being copied to the destination plus the dovecot server returns
>>> the old known [SERVERBUG] message to Thunderbird. I obviously also
>>> tried:
>>>
>>>
>>> server [~]# sa-learn --username=ad...@mydom.com --spam
>>> /var/mail/admin/.Spam/
>>> Learned tokens from 0 message(s) (2 message(s) examined)
>>> server [~]#
>>>
>>> "Learned tokens from 0" because it has learnd from Dovecot antispam
>>> already. If I reset SQL values it would learn again.
>>>
>>>
>>> Here is my debug.log output again.
>>>
>>> Aug 3 22:16:29 server imap: antispam: plugin initialising (1.2-notgit)
>>> Aug 3 22:16:29 server imap: antispam: "Trash" is exact match trash
>>> folder
>>> Aug 3 22:16:29 server imap: antispam: "Spam" is exact match spam folder
>>> Aug 3 22:16:29 server imap: antispam: "Virus" is exact match unsure
>>> folder
>>> Aug 3 22:16:29 server imap: antispam: mail backend spam address --spam
>>> Aug 3 22:16:29 server imap: antispam: mail backend not-spam address
>>> --ham
>>> Aug 3 22:16:29 server imap: antispam: mail backend sendmail
>>> /usr/local/bin/sa-learn
>>> Aug 3 22:16:29 server imap: antispam: mail backend sendmail arg
>>> --username=ad...@mydom.com --debug all
>>> Aug 3 22:16:29 server imap: antispam: mail backend tmpdir /tmp
>>> Aug 3 22:16:34 server imap: antispam: mailbox_is_unsure(Spam): 0
>>> Aug 3 22:16:34 server imap: antispam: mailbox_is_trash(INBOX): 0
>>> Aug 3 22:16:34 server imap: antispam: mailbox_is_trash(Spam): 0
>>> Aug 3 22:16:34 server imap: antispam: mail copy: from trash: 0, to
>>> trash: 0
>>> Aug 3 22:16:34 server imap: antispam: mailbox_is_spam(INBOX): 0
>>> Aug 3 22:16:34 server imap: antispam: mailbox_is_spam(Spam): 1
>>> Aug 3 22:16:34 server imap: antispam: mailbox_is_unsure(INBOX): 0
>>> Aug 3 22:16:34 server imap: antispam: mail copy: src spam: 0, dst
>>> spam: 1, src unsure: 0
>>> Aug 3 22:16:34 server imap: antispam: running mailtrain backend
>>> program /usr/local/bin/sa-learn
>>> Aug 3 22:16:34 server imap: antispam: running mailtrain backend
>>> program /usr/local/bin/sa-learn
>>> Aug 3 22:16:38 server imap: antispam: run program failed with exit
>>> code 9
>>>
>>>
>>>
>>>
>>> Those are my Antispam options from dovecot.conf:
>>>
>>> [...]
>>> ### Dovecot AntiSpam ###
>>> # mail signature (used with any backend requiring a signature)
>>> #antispam_signature = X-Spam-Status
>>> #antispam_signature_missing = move
>>>
>>> antispam_mail_sendmail = /usr/local/bin/sa-learn
>>> antispam_mail_sendmail_args = --username=%u --debug all
>> anitspam_blah_args is a semicolon separated list, no spaces (I thought
>> this odd too), therefore:
>> antispam_mail_sendmail_args = --username=;%u;--debug;all
>>
>> (i think)
>>
>>> antispam_mail_spam = --spam
>>> antispam_mail_notspam = --ham
>>> antispam_mail_tmpdir = /tmp
>>> antispam_spam = Spam
>>> antispam_unsure = Virus
>>> antispam_trash = Trash
>>> [...]
>>>
>>> Even --debug all doesn't help a thing ;( I tried my luck enabeling
>>> all this Dovecot debug knobs:
>>>
>>> ##
>>> ## Logging
>>> ##
>>> mail_debug = yes
>>> auth_verbose = yes
>>> auth_debug = yes
>>> auth_debug_passwords = yes
>>> log_timestamp = "%b %d %H:%M:%S "
>>> syslog_facility = mail
>>>
>>>
>>> ... didn't help ... - dovecot's log didn't tell me anything new - no
>>> error nothing after the Serverbug happend ... ;(
>>>
>>>
>>> I really don't know where to debug anymore ;( Therefore, I would
>>> _really_ - out of all my frustration - appreaciate your help (cause
>>> this issue is now bothering me now for more than two weeks now already
>>> - without any little peace of success)
>>>
>>>
>>>
>>> Thanks& Regards
>>>
>>>
>>>
>> -Greg
>>
>
> Thanks for your reply. I tried that one as well - unfortunately that
> didn't really help a lot. Debug now looks a bit different than before:
> (Ofcourse did I try it without the debug option at all as well - but
> with the same result.)
>
>
> ### Dovecot AntiSpam ###
> # mail signature (used with any backend requiring a signature)
> #antispam_signature = X-Spam-Status
> #antispam_signature_missing = move
>
> antispam_mail_sendmail = /usr/local/bin/sa-learn
> antispam_mail_sendmail_args = --username=%u;--debug;all
> antispam_mail_spam = --spam
> antispam_mail_notspam = --ham
> antispam_mail_tmpdir = /tmp
> antispam_spam = Spam
> antispam_unsure = Virus
> antispam_trash = Trash
>
>
>
>
>
> Aug 3 23:08:38 server imap: antispam: plugin initialising (1.2-notgit)
> Aug 3 23:08:38 server imap: antispam: "Trash" is exact match trash folder
> Aug 3 23:08:38 server imap: antispam: "Spam" is exact match spam folder
> Aug 3 23:08:38 server imap: antispam: "Virus" is exact match unsure folder
> Aug 3 23:08:38 server imap: antispam: mail backend spam address --spam
> Aug 3 23:08:38 server imap: antispam: mail backend not-spam address --ham
>
> Aug 3 23:08:38 server imap: antispam: mail backend sendmail
> /usr/local/bin/sa-learn
> Aug 3 23:08:38 server imap: antispam: mail backend sendmail arg
> --username=ad...@mydom.com
> Aug 3 23:08:38 server imap: antispam: mail backend sendmail arg --debug
> Aug 3 23:08:38 server imap: antispam: mail backend sendmail arg all
>
> Aug 3 23:08:38 server imap: antispam: mail backend tmpdir /tmp
> Aug 3 23:08:38 server imap: antispam: mailbox_is_unsure(Spam): 0
> Aug 3 23:08:38 server imap: antispam: mailbox_is_trash(INBOX): 0
> Aug 3 23:08:38 server imap: antispam: mailbox_is_trash(Spam): 0
> Aug 3 23:08:38 server imap: antispam: mail copy: from trash: 0, to
> trash: 0
> Aug 3 23:08:38 server imap: antispam: mailbox_is_spam(INBOX): 0
> Aug 3 23:08:38 server imap: antispam: mailbox_is_spam(Spam): 1
> Aug 3 23:08:38 server imap: antispam: mailbox_is_unsure(INBOX): 0
> Aug 3 23:08:38 server imap: antispam: mail copy: src spam: 0, dst spam:
> 1, src unsure: 0
> Aug 3 23:08:38 server imap: antispam: running mailtrain backend program
> /usr/local/bin/sa-learn
> Aug 3 23:08:38 server imap: antispam: running mailtrain backend program
> /usr/local/bin/sa-learn
> Aug 3 23:08:40 server imap: antispam: run program failed with exit code 9
>
>
>
> But unfortunately there is no more debug as I was hoping of sa-learn.
> I also tried using different Dovecot versons already - but with the same
> result - they all give my MTC a SERVERBUG when I try to move mails with
> the help of the antispam plugin.
>
What happens when you write a small shell wrapper and put that in place
of sa-learn, which calls sa-learn, and let it save the input (arguments
as produced by the plugin) and output of sa-learn to a temporary file?
-- Regards, Tom