Supprimer les mails reçus en double avec Pigeonhole et Dovecot 2
Contents
Si on est inscrit à deux mailing-lists, et qu’un mail est envoyé à ces deux mailing-lists, alors on va le recevoir deux fois. Ou même si on est simplement en copie du mail envoyé à la mailing list. Il est possible de supprimer ces doublons, en se basant sur vnd.dovecot.duplicate. C’est une extension sieve. Le principe est que chaque mail contient un « msgid » unique, et le plugin se base sur cet ID afin de détecter les doublons.
Sous Debian, Pingeonhole s’installe de la façon suivante :
apt-get install dovecot-sieve dovecot-managesieved
Ensuite, il faut activer le plugin dans la configuration dovecot. Le plugin est disponible à partir de la version 0.3.1 de Pigeonhole.
vim /etc/dovecot/conf.d/90-sieve.conf
plugin {
sieve = ~/.dovecot.sieve
sieve_default = /var/lib/dovecot/sieve/default.sieve
sieve_dir = ~/sieve
sieve_global_dir = /var/lib/dovecot/sieve/global/
sieve_extensions = +vnd.dovecot.duplicate
}
Il faut redémarrer dovecot pour que les changements soient pris en compte:
/etc/init.d/dovecot restart
Puis on crée le répertoire dans lequel on va placer notre règle globale (pour tous les utilisateurs) :
mkdir -p /var/lib/dovecot/sieve/global
chown -R vmail:mail /var/lib/dovecot
chmod u+x /var/lib/dovecot
Il est aussi possible d’appliquer cette règle uniquement pour certains utilisateurs, voir la documentation Dovecot
Enfin, on crée la règle dans le fichier /var/lib/dovecot/sieve/default.sieve
require ["vnd.dovecot.duplicate", "fileinto", "mailbox", "imap4flags"];
if header :contains "X-Spam-Status" "Yes" {
fileinto "Spam";
}
if duplicate {
setflag "\\seen";
fileinto "Trash";
}
On place les droits :
chown vmail:mail /var/lib/dovecot/sieve/default.sieve
Cette règle place le spam dans un répertoire spam, et place les doublons dans la corbeille, en les marquant comme ‘lus’
Il ne reste plus qu’à tester. Par défaut, les erreurs sont logguées dans le fichier /var/log/mail.log.
Author VaLouille
LastMod 2013-02-18