At a loss with antispan and imap_sieve

Ferenc dovecot at bezemkast.nl
Mon Sep 21 11:03:00 EEST 2020


"Aki Tuomi" <aki.tuomi at open-xchange.com> schreef op 21 september 2020 06:23:

>> On 21/09/2020 00:37 Ferenc <dovecot at bezemkast.nl> wrote:
>> 
>> Hi,
>> 
>> It seems I can’t google my way out of this one. I’m trying to set up spam/ham learning but getting
>> nowhere.
>> 
>> I tried Johannes Berg Antispam plugin, and syslog shows:
>> 
>> Sep 20 22:22:06 proefmail imap: antispam: running mailtrain backend program
>> /usr/lib/dovecot/retrain.sh
>> Sep 20 22:22:06 proefmail imap: antispam: running mailtrain backend program
>> /usr/lib/dovecot/retrain.sh
>> Sep 20 22:22:06 proefmail imap: antispam: running mailtrain backend program parameter 1 /mail/klaas
>> Sep 20 22:22:06 proefmail imap: antispam: running mailtrain backend program parameter 2 ham
>> 
>> The file retrain.sh is simply:
>> 
>> #!/bin/sh
>> echo hi >> debug.log
>> 
>> ...with debug.log being an empty world-writeable file in /usr/lib/dovecot.
>> 
>> Absolutely nothing happens. The file debug.log is not even touched. But when I remove retrain.sh
>> there’s an error logged so up
>> until then, *something* happens.
>> 
>> After this I tried imap_sieve, following the wiki on dovecot.org, but again nothing happens. My
>> imap.log says:
>> Info: sieve: pipe action: piped message to program `retrain.sh’
>> 
>> But again debug.log is untouched.
>> 
>> I’m fresh out of ideas here. Any help would be most welcome.
>> 
>> I’m on Debian in virtual machine, Postfix delivering mail to Dovecot LMTP delivering to virtual
>> maildirs, bogofilter for scanning incoming mail. Sieve does work for moving incoming spam to the
>> spam mailbox.
>> 
>> Cheers and thanks,
>> 
>> Ferenc
> 
> Hi!
> 
> Those scripts are not ran as root, so you can't actually write to /usr/lib/dovecot, you should
> probably use some writable location.

Hi Aki,

Thanks for your quick reply! I tried /tmp/debug.log, world-writeable, but no dice. 

> https://doc.dovecot.org/configuration_manual/howto/antispam_with_sieve

I followed the setup here. I think it works up until the external script is called (pipe :copy "sa-learn-ham.sh"). That's why I tried echo hi >> /tmp/file. I guessed the scripts run as vmail, my virtual mail user, so I tried sudo -u vmail retrain.sh. This works. I can see the sieve script run in the log but my guess is the external script never runs. I'd like to try strace to see where things go when calling the external script but I don't know where to even start putting strace -o. 

Ferenc


More information about the dovecot mailing list