Sieve-scripts won't replicate
Niels Kobschätzki
niels at kobschaetzki.net
Thu Jun 18 09:22:54 EEST 2020
Hi,
I am trying to use dovecot replication for a two-way sync. And whatever
I do, sieve-scripts won’t replicate. Mails replicate near
instantaneous. When I disable the sieve-script in roundcube, the other
server will create in the home of the user on the other side a folder
sieve/tmp but enabling won’t create the roundcube.sieve and the
symlink .dovecot.sieve -> sieve/roundcube.sieve
The home of a virtual mail user on server1 looks like this:
drwx------ 4 vexim vexim 4096 Jun 18 08:02 .
drwx------ 8 vexim vexim 4096 Jun 18 07:59 ..
lrwxrwxrwx 1 vexim vexim 21 Jun 18 07:59 .dovecot.sieve ->
sieve/roundcube.sieve
drwx------ 5 vexim vexim 4096 Jun 18 08:14 Maildir
drwx------ 3 vexim vexim 4096 Jun 18 08:02 sieve
A ps auxwww|grep dove looks like this (maybe some user is wrong?):
ps auxwww |grep dove
root 847 0.0 0.0 4200 3044 ? Ss 07:54 0:00
/usr/sbin/dovecot -F
root 849 0.0 0.0 4060 2544 ? S 07:54 0:00
dovecot-team1/replicator
dovecot 850 0.0 0.0 3912 1092 ? S 07:54 0:00
dovecot-team1/anvil
root 851 0.0 0.0 4048 2464 ? S 07:54 0:00
dovecot-team1/log
dovecot 852 0.0 0.0 4048 2692 ? S 07:54 0:00
dovecot-team1/stats
root 853 0.0 0.0 6072 4368 ? S 07:54 0:00
dovecot-team1/config
dovecot 855 0.0 0.0 17412 6620 ? S 07:54 0:00
dovecot-team1/auth
dovenull 856 0.0 0.0 8200 6344 ? S 07:54 0:00
dovecot-team1/imap-login
vexim 858 0.0 0.0 7092 5300 ? S 07:54 0:00
dovecot-team1/imap
dovecot 902 0.0 0.0 3912 1096 ? S 07:55 0:00
dovecot-team1/aggregator
dovenull 1929 0.0 0.0 8200 6256 ? S 08:15 0:00
dovecot-team1/imap-login
vexim 1930 0.0 0.0 6984 5284 ? S 08:15 0:00
dovecot-team1/imap
dovenull 1931 0.0 0.0 8200 6248 ? S 08:15 0:00
dovecot-team1/imap-login
vexim 1932 0.0 0.0 6964 5140 ? S 08:15 0:00
dovecot-team1/imap
root 2210 0.0 0.0 6048 892 pts/0 S+ 08:21 0:00 grep
dove
I do not see any errors in the log. Here is the doveconf -n output. The
partner looks identical except the replication target.
# 2.3.4.1 (f79e8e7e4): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.5.4 ()
# OS: Linux 4.19.0-9-amd64 x86_64 Debian 10.4
# Hostname: team.snafu.de
auth_mechanisms = plain login
auth_verbose = yes
doveadm_password = # hidden, use -P to show it
doveadm_port = 12345
instance_name = team1
mail_location = maildir:~/mail:INBOX=/var/vmail/%d/%u
mail_plugins = " notify replication"
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 spamtest spamtestplus
virustest editheader servermetadata imapflags notify imapsieve
vnd.dovecot.imapsieve
namespace inbox {
inbox = yes
location =
mailbox Drafts {
special_use = \Drafts
}
mailbox Junk {
special_use = \Junk
}
mailbox Sent {
special_use = \Sent
}
mailbox "Sent Messages" {
special_use = \Sent
}
mailbox Trash {
special_use = \Trash
}
prefix =
separator = /
}
passdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
plugin {
imapsieve_mailbox1_before =
file:/usr/lib/dovecot/sieve/report-spam.sieve
imapsieve_mailbox1_causes = COPY
imapsieve_mailbox1_name = Junk
imapsieve_mailbox2_before =
file:/usr/lib/dovecot/sieve/report-ham.sieve
imapsieve_mailbox2_causes = COPY
imapsieve_mailbox2_from = Junk
imapsieve_mailbox2_name = *
mail_replica = tcps:server2.domain.de:12345
sieve = file:~/sieve;active=~/.dovecot.sieve
sieve_dir = ~/sieve
sieve_extensions = +notify +imapflags +editheader +regex +spamtest
+spamtestplus +virustest +servermetadata
sieve_global_extensions = +vnd.dovecot.pipe +vnd.dovecot.environment
sieve_pipe_bin_dir = /usr/lib/dovecot/sieve-pipe
sieve_plugins = sieve_imapsieve sieve_extprograms
}
protocols = " imap lmtp sieve sieve"
replication_dsync_parameters = -D -d -N -l 30 -U
service aggregator {
fifo_listener replication-notify-fifo {
mode = 0666
user = vexim
}
unix_listener replication-notify {
mode = 0666
user = vexim
}
}
service auth {
unix_listener auth-client {
group = vexim
mode = 0660
user = Debian-exim
}
unix_listener auth-userdb {
group = vexim
mode = 0666
user = vexim
}
}
service config {
unix_listener config {
user = vexim
}
}
service doveadm {
inet_listener {
port = 12345
ssl = yes
}
user = vexim
}
service managesieve-login {
inet_listener sieve {
port = 4190
}
process_min_avail = 0
service_count = 1
vsz_limit = 64 M
}
service managesieve {
process_limit = 1024
}
service replicator {
process_min_avail = 1
unix_listener replicator-doveadm {
mode = 0666
}
}
ssl = required
ssl_cert = </etc/ssl/certs/wildcard.domain.de.pem
ssl_cipher_list = HIGH:!aNULL
ssl_client_ca_dir = /etc/ssl/certs
ssl_dh = # hidden, use -P to show it
ssl_key = # hidden, use -P to show it
ssl_min_protocol = TLSv1.2
ssl_prefer_server_ciphers = yes
userdb {
driver = prefetch
}
userdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
protocol lda {
mail_plugins = " notify replication sieve"
}
protocol imap {
mail_plugins = " notify replication imap_sieve"
}
protocol lmtp {
info_log_path = /var/log/dovecot-lmtp.log
mail_plugins = " notify replication sieve"
}
protocol sieve {
mail_max_userip_connections = 10
managesieve_max_line_length = 65536
}
Any help appreciated.
Niels
More information about the dovecot
mailing list