On 01/07/2024 03:32, Benjamin Rose via dovecot wrote:
On 6/30/24 16:48, John Fawcett via dovecot wrote:
On 30/06/2024 07:17, Benjamin Rose via dovecot wrote:
Hello,
I'm in the process of moving our mail server from RHEL 6 to RHEL 9.
We will be moving to:
# dovecot --version
2.3.16 (7e2e900c1a)
My issue is that sieve does not appear to work on the new setup,
where it does work on the old one. I made a simple filter rule:
# cat /u/mail0test/.sieve/ingo.sieve
# Sieve Filter
# Generated by Ingo (http://www.horde.org/apps/ingo/) (06/28/2024,
11:14:52 PM)
require "fileinto";
# Test
if header :comparator "i;ascii-casemap" :contains "Subject"
"filtertest" {
fileinto "Fun";
stop;
}
Upon sending an email to this test account, the following appears in
/var/log/maillog:
Jun 29 23:19:56 mail5 dovecot[3066980]:
lda(mail0test)<3066980><FA8fFtzOgGZkzC4AuM9lWg>: Warning: sieve:
file storage: Active sieve script symlink
/u/mail0test/.dovecot.sieve is broken: Invalid/unknown path to
storage (points to /u/mail0test/.sieve).
Jun 29 23:19:56 mail5 dovecot[2987026]:
doveadm(mail0test)<3066983><KFf4FtzOgGZnzC4AuM9lWg>: Warning: sieve:
file storage: Active sieve script symlink
/u/mail0test/.dovecot.sieve is broken: Invalid/unknown path to
storage (points to /u/mail0test/.sieve).
Jun 29 23:19:56 mail5 dovecot[2987026]:
doveadm(mail0test)<3067016><VdsdK9zOgGaIzC4AuM9lWg>: Warning: sieve:
file storage: Active sieve script symlink
/u/mail0test/.dovecot.sieve is broken: Invalid/unknown path to
storage (points to /u/mail0test/.sieve).
Yet:
# ll /u/mail0test/.dovecot.sieve
lrwxrwxrwx. 1 mail0test sysguest 17 Jun 28 23:26
/u/mail0test/.dovecot.sieve -> .sieve/ingo.sieve
# file /u/mail0test/.sieve/ingo.sieve
/u/mail0test/.sieve/ingo.sieve: ASCII text
That is the filter file I've pasted above.
I've set the following directives in
/etc/dovecot/conf.d/90-sieve.conf via puppet:
augeas {
"dovecot_sieve_settings":
context => "/files/etc/dovecot/conf.d/90-sieve.conf",
changes => [
"set plugin/sieve_dir ~/.sieve",
"set plugin/sieve_user_log ~/.sieve/log"
],
require => Package["dovecot"],
notify => Service["dovecot"];
}
The full configuration dump is attached.
/u in our environment is the path for user homedirs, which is an NFS
mount to a NetApp. The OS is Springdale Linux 9.2, a clone of RedHat
from before the IBM license change. It will soon be RHEL 9.4 as we
have obtained a license, but for all intents and purposes,
Springdale 9.2 and RHEL 9.2 should be considered bug-for-bug
compatible. The arch is x86_64 with both machines mail5 and mail6
(replicated) having Intel(R) Xeon(R) Gold 6244 CPU @ 3.60GHz and
768gb of memory. I have the same issue with SELinux in both
enforcing and permissive modes, so this is not a permissions error
due to SELinux.
Am I doing something wrong, or is this a bug? I've seen that there
have been some previous issues similar to this that ended up being
bugs in pigeonhole, so here I am.
Thanks,
Ben
Hi Ben
what version of Pigeonhole are you using?
I read here that sieve_dir is deprecated since v0.3.1
https://doc.dovecot.org/settings/pigeonhole/#pigeonhole_setting-sieve_dir
In any case these settings look as though they don't really match up.
Is the correct directory .sieve or sieve?
sieve = file:~/sieve;active=~/.dovecot.sieve
sieve_dir = ~/.sieve
Also, I was curious if your inboxes are really under
/var/spool/mail/%u and your indexes under /home/%u/indexes?
John
_______________________________________________
dovecot mailing list -- dovecot@dovecot.org
To unsubscribe send an email to dovecot-le...@dovecot.org
Hello,
Thank you! Adding the line to puppet to enforce that this exists in
/etc/dovecot/conf.d/90-sieve.conf:
sieve=file:~/.sieve;active=~/.dovecot.sieve
has solved the problem. Filters now work as expected!
To answer your questions, I am using
dovecot-pigeonhole-2.3.16-8.el9.x86_64, and yes, user mail spools live
under /var/spool/mail (NFS-mounted mbox files) and indexes live under
/home (local disk - soon to be SSD). That's only for users who are
using mbox format / pine / mutt. Most users are using only modern
clients and in this case their storage is mdbox and entirely kept
inside of /home. This is configured on a per-user basis inside of an
LDAP value named mailMessageStore. Either it exists such as
"mdbox:/home/<username>/mail", or it does not exist at all, in which
case, delivery falls back to old-style mbox format. If they are on
mbox format, only INBOX is kept in /var/spool/mail, all other folders
are kept in ~/mail (/u/<username>/mail/).
Ben
_______________________________________________
dovecot mailing list -- dovecot@dovecot.org
To unsubscribe send an email to dovecot-le...@dovecot.org
Hi Ben
as far as I can see, dovecot-pigeonhole-2.3.16-8.el9.x86_64 uses
pigeonhole version 0.5.16. In that case I am pretty sure you can remove
the deprecated "set plugin/sieve_dir ~/.sieve", setting.
John
_______________________________________________
dovecot mailing list -- dovecot@dovecot.org
To unsubscribe send an email to dovecot-le...@dovecot.org