rspamd / imapsieve script is not executed/called
Hi to all of you,
as I am struggling around with this a week or so I'm afraid I have to ask for help here. The problem is sitting right in front of the computer, as most of the time. ;-)
So let me explain: Dovecot is working properly for IMAP with LE certificates, so I thought it's time to continue with Christoph Haas tutorial primarily and other blogs and tutorials for setting up the server. Next part would be to get rspamd learning what mails the user puts into junk folder. I followed the tutorial, but it will not work. Also I tried to get into debug mode, but I feel that dovecot is not really logging too much.
Server is freshly set up Ubuntu 18.04.1, latest patchlevel with packages mostly from Ubuntu sources, except rspamd, but this was added as ppa if my remembering is correct.
This is what I get on syslog, whilst *.* is being put at /var/log/allmessages.
#########################################
Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug:
INBOX/Junk: Mailbox opened because: UID move
Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug:
imapsieve: mailbox INBOX/Junk: MOVE event
Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: sieve:
Pigeonhole version 0.4.21 (92477967) initializing
Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: sieve:
Sieve imapsieve plugin for Pigeonhole version 0.4.21 (92477967) loaded
Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: sieve:
Sieve Extprograms plugin for Pigeonhole version 0.4.21 (92477967) loaded
Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug:
imapsieve: Static mailbox rule [1]: mailbox=Junk' from=
*' causes=(COPY)
=> before=file:/etc/dovecot/sieve/report-spam.sieve' after=(none) Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: imapsieve: Static mailbox rule [2]: mailbox=
*' from=Junk' causes=(COPY) => before=
file:/etc/dovecot/sieve/report-ham.sieve' after=(none)
#########################################
So as far as I can interpret there is absolutely no script called when I move a mail from inbox to junk folder in Thunderbird. Here is the output of dovecot -n but I don't exactly if this is enough, so please give me an info if you need more output.
######################################### # 2.2.33.2 (d6601f4ec): /etc/dovecot/dovecot.conf # Pigeonhole version 0.4.21 (92477967) # OS: Linux 4.15.0-39-generic x86_64 Ubuntu 18.04.1 LTS ext4 auth_mechanisms = plain login lmtp_rcpt_check_quota = yes lmtp_save_to_detail_mailbox = yes mail_debug = yes mail_location = maildir:/var/vmail/%d/%n/Maildir mail_plugins = " quota" mail_privileged_group = mail managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date index ihave duplicate mime foreverypart extracttext imapsieve vnd.dovecot.imapsieve namespace inbox { inbox = yes list = yes location = mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Junk { auto = subscribe autoexpunge = 90 days special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { auto = subscribe autoexpunge = 30 days special_use = \Trash } prefix = INBOX/ separator = / subscriptions = yes type = private } passdb { args = /etc/dovecot/dovecot-sql.conf.ext driver = sql } plugin { imapsieve_mailbox1_before = file:/etc/dovecot/sieve/report-spam.sieve imapsieve_mailbox1_causes = COPY imapsieve_mailbox1_name = Junk imapsieve_mailbox2_before = file:/etc/dovecot/sieve/report-ham.sieve imapsieve_mailbox2_causes = COPY imapsieve_mailbox2_from = Junk imapsieve_mailbox2_name = * quota_grace = 20%% quota_status_nouser = DUNNO quota_status_overquota = 552 5.2.2 Mailbox is over quota quota_status_success = DUNNO recipient_delimiter = + sieve = file:~/sieve;active=~/.dovecot.sieve sieve_after = /etc/dovecot/sieve-after/ sieve_global = /etc/dovecot/sieve sieve_global_extensions = +vnd.dovecot.pipe sieve_pipe_bin_dir = /etc/dovecot/sieve sieve_pipe_socket_dir = sieve-pipe sieve_plugins = sieve_imapsieve sieve_extprograms sieve_trace_debug = yes } protocols = " imap lmtp sieve pop3" service auth { unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0660 user = postfix } } service imap-login { inet_listener imaps { port = 993 ssl = yes } } service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { group = postfix mode = 0600 user = postfix } } service pop3-login { inet_listener pop3s { port = 995 ssl = yes } } service quota-status { client_limit = 1 executable = quota-status -p postfix inet_listener { port = 22466 } } ssl_cert =
Would be really great if somebody knows what the he** I am doing wrong. Thank you for taking the time to go through this.
Michael
Is it possible, that this can be in correlation with maildir layout=fs ? Currently the default maildir layout with dots is configured...
Am So., 25. Nov. 2018 um 23:52 Uhr schrieb Michael Ludwig < frozenyoghurt2010@gmail.com>:
Hi to all of you,
as I am struggling around with this a week or so I'm afraid I have to ask for help here. The problem is sitting right in front of the computer, as most of the time. ;-)
So let me explain: Dovecot is working properly for IMAP with LE certificates, so I thought it's time to continue with Christoph Haas tutorial primarily and other blogs and tutorials for setting up the server. Next part would be to get rspamd learning what mails the user puts into junk folder. I followed the tutorial, but it will not work. Also I tried to get into debug mode, but I feel that dovecot is not really logging too much.
Server is freshly set up Ubuntu 18.04.1, latest patchlevel with packages mostly from Ubuntu sources, except rspamd, but this was added as ppa if my remembering is correct.
This is what I get on syslog, whilst *.* is being put at /var/log/allmessages.
######################################### Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: INBOX/Junk: Mailbox opened because: UID move Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: imapsieve: mailbox INBOX/Junk: MOVE event Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: sieve: Pigeonhole version 0.4.21 (92477967) initializing Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: sieve: Sieve imapsieve plugin for Pigeonhole version 0.4.21 (92477967) loaded Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: sieve: Sieve Extprograms plugin for Pigeonhole version 0.4.21 (92477967) loaded Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: imapsieve: Static mailbox rule [1]: mailbox=
Junk' from=
*' causes=(COPY) => before=file:/etc/dovecot/sieve/report-spam.sieve' after=(none) Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: imapsieve: Static mailbox rule [2]: mailbox=
*' from=Junk' causes=(COPY) => before=
file:/etc/dovecot/sieve/report-ham.sieve' after=(none) #########################################So as far as I can interpret there is absolutely no script called when I move a mail from inbox to junk folder in Thunderbird. Here is the output of dovecot -n but I don't exactly if this is enough, so please give me an info if you need more output.
######################################### # 2.2.33.2 (d6601f4ec): /etc/dovecot/dovecot.conf # Pigeonhole version 0.4.21 (92477967) # OS: Linux 4.15.0-39-generic x86_64 Ubuntu 18.04.1 LTS ext4 auth_mechanisms = plain login lmtp_rcpt_check_quota = yes lmtp_save_to_detail_mailbox = yes mail_debug = yes mail_location = maildir:/var/vmail/%d/%n/Maildir mail_plugins = " quota" mail_privileged_group = mail managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date index ihave duplicate mime foreverypart extracttext imapsieve vnd.dovecot.imapsieve namespace inbox { inbox = yes list = yes location = mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Junk { auto = subscribe autoexpunge = 90 days special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { auto = subscribe autoexpunge = 30 days special_use = \Trash } prefix = INBOX/ separator = / subscriptions = yes type = private } passdb { args = /etc/dovecot/dovecot-sql.conf.ext driver = sql } plugin { imapsieve_mailbox1_before = file:/etc/dovecot/sieve/report-spam.sieve imapsieve_mailbox1_causes = COPY imapsieve_mailbox1_name = Junk imapsieve_mailbox2_before = file:/etc/dovecot/sieve/report-ham.sieve imapsieve_mailbox2_causes = COPY imapsieve_mailbox2_from = Junk imapsieve_mailbox2_name = * quota_grace = 20%% quota_status_nouser = DUNNO quota_status_overquota = 552 5.2.2 Mailbox is over quota quota_status_success = DUNNO recipient_delimiter = + sieve = file:~/sieve;active=~/.dovecot.sieve sieve_after = /etc/dovecot/sieve-after/ sieve_global = /etc/dovecot/sieve sieve_global_extensions = +vnd.dovecot.pipe sieve_pipe_bin_dir = /etc/dovecot/sieve sieve_pipe_socket_dir = sieve-pipe sieve_plugins = sieve_imapsieve sieve_extprograms sieve_trace_debug = yes } protocols = " imap lmtp sieve pop3" service auth { unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0660 user = postfix } } service imap-login { inet_listener imaps { port = 993 ssl = yes } } service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { group = postfix mode = 0600 user = postfix } } service pop3-login { inet_listener pop3s { port = 995 ssl = yes } } service quota-status { client_limit = 1 executable = quota-status -p postfix inet_listener { port = 22466 } } ssl_cert =
Would be really great if somebody knows what the he** I am doing wrong. Thank you for taking the time to go through this.
Michael
Is there a trick to get the sieve trace working? I tried the following, but nothing gets logged.
sieve_user_log = /var/log/dovecot-sievetrace/user.log sieve_trace_dir = /var/log/dovecot-sievetrace/ sieve_trace_level = matching sieve_trace_debug = yes sieve_trace_addresses = yes
I also tried "matching" instead of only matching because that is what I can see in the documentation for pigeonhole sieve. ( https://wiki2.dovecot.org/Pigeonhole/Sieve/Configuration) But nothing seems to get more info out of dovecot, imapsieve, sieve, pigeonhole thing. The directory /var/log/dovecot-sievetrace/ is 777 dovecot:dovecot. It should be possible for dovecot to log in that directory I think.
Michael
Op 25/11/2018 om 23:52 schreef Michael Ludwig:
Hi to all of you,
as I am struggling around with this a week or so I'm afraid I have to ask for help here. The problem is sitting right in front of the computer, as most of the time. ;-)
So let me explain: Dovecot is working properly for IMAP with LE certificates, so I thought it's time to continue with Christoph Haas tutorial primarily and other blogs and tutorials for setting up the server. Next part would be to get rspamd learning what mails the user puts into junk folder. I followed the tutorial, but it will not work. Also I tried to get into debug mode, but I feel that dovecot is not really logging too much.
Server is freshly set up Ubuntu 18.04.1, latest patchlevel with packages mostly from Ubuntu sources, except rspamd, but this was added as ppa if my remembering is correct.
This is what I get on syslog, whilst *.* is being put at /var/log/allmessages.
######################################### Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: INBOX/Junk: Mailbox opened because: UID move Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: imapsieve: mailbox INBOX/Junk: MOVE event Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: sieve: Pigeonhole version 0.4.21 (92477967) initializing Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: sieve: Sieve imapsieve plugin for Pigeonhole version 0.4.21 (92477967) loaded Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: sieve: Sieve Extprograms plugin for Pigeonhole version 0.4.21 (92477967) loaded Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: imapsieve: Static mailbox rule [1]: mailbox=
Junk' from=
*' causes=(COPY) => before=file:/etc/dovecot/sieve/report-spam.sieve' after=(none) Nov 25 23:30:50 myserver dovecot: imap(info@mydomain.tld): Debug: imapsieve: Static mailbox rule [2]: mailbox=
*' from=Junk' causes=(COPY) => before=
file:/etc/dovecot/sieve/report-ham.sieve' after=(none) #########################################So as far as I can interpret there is absolutely no script called when I move a mail from inbox to junk folder in Thunderbird. Here is the output of dovecot -n but I don't exactly if this is enough, so please give me an info if you need more output.
Your configuration tells me your mailbox names need to be prefixed with "INBOX/".
Regards,
Stephan.
######################################### # 2.2.33.2 (d6601f4ec): /etc/dovecot/dovecot.conf # Pigeonhole version 0.4.21 (92477967) # OS: Linux 4.15.0-39-generic x86_64 Ubuntu 18.04.1 LTS ext4 auth_mechanisms = plain login lmtp_rcpt_check_quota = yes lmtp_save_to_detail_mailbox = yes mail_debug = yes mail_location = maildir:/var/vmail/%d/%n/Maildir mail_plugins = " quota" mail_privileged_group = mail managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date index ihave duplicate mime foreverypart extracttext imapsieve vnd.dovecot.imapsieve namespace inbox { inbox = yes list = yes location = mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Junk { auto = subscribe autoexpunge = 90 days special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { auto = subscribe autoexpunge = 30 days special_use = \Trash } prefix = INBOX/ separator = / subscriptions = yes type = private } passdb { args = /etc/dovecot/dovecot-sql.conf.ext driver = sql } plugin { imapsieve_mailbox1_before = file:/etc/dovecot/sieve/report-spam.sieve imapsieve_mailbox1_causes = COPY imapsieve_mailbox1_name = Junk imapsieve_mailbox2_before = file:/etc/dovecot/sieve/report-ham.sieve imapsieve_mailbox2_causes = COPY imapsieve_mailbox2_from = Junk imapsieve_mailbox2_name = * quota_grace = 20%% quota_status_nouser = DUNNO quota_status_overquota = 552 5.2.2 Mailbox is over quota quota_status_success = DUNNO recipient_delimiter = + sieve = file:~/sieve;active=~/.dovecot.sieve sieve_after = /etc/dovecot/sieve-after/ sieve_global = /etc/dovecot/sieve sieve_global_extensions = +vnd.dovecot.pipe sieve_pipe_bin_dir = /etc/dovecot/sieve sieve_pipe_socket_dir = sieve-pipe sieve_plugins = sieve_imapsieve sieve_extprograms sieve_trace_debug = yes } protocols = " imap lmtp sieve pop3" service auth { unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0660 user = postfix } } service imap-login { inet_listener imaps { port = 993 ssl = yes } } service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { group = postfix mode = 0600 user = postfix } } service pop3-login { inet_listener pop3s { port = 995 ssl = yes } } service quota-status { client_limit = 1 executable = quota-status -p postfix inet_listener { port = 22466 } } ssl_cert =
Would be really great if somebody knows what the he** I am doing wrong. Thank you for taking the time to go through this.
Michael
participants (2)
-
Michael Ludwig
-
Stephan Bosch