Apportez votre aide…
Ceci est une ancienne révision du document !
Filtrage des courriels avec Dovecot
Dovecot est une application d'agent de distribution des courriels MDA (voir Comment fonctionne le courriel sous Linux ?). Pour voir ce que peut faire un agent de distribution de courriels lire Comment configurer sa distribution de courriels MDA sous Ubuntu ?
Cette application vous permet de trier et classer vos courriels à l'arrivée dans une boite aux lettres utilisateur ou dans une boite postale du serveur MTA. Elle gère l'identification des courriels marqués comme SPAM ou comme Virus par votre MTA.
Installation
Installez les paquets de filtrages de l'agent de distribution des courriels Dovecot dovecot-sieve dovecot-managesieved.
Configuration
Pour configurer le MDA Dovecot…
Configuration du serveur de messagerie MTA
Postfix
Exim4
Définir les emplacements des boîtes aux lettres des utilisateurs
sudo nano /etc/dovecot/conf.d/10-mail.conf
… mail_location = maildir:~/.local/share/courriels …
Activer la technique de distribution des courriels
Le MDA utilise deux façons de distribuer les courriels, par l'Agent de Distribution Locale (LDA) du MDA, ou avec le Protocole Local de Transport des Courriels (LMTP) du MTA qui est une variante locale au serveur de messagerie du SMTP.
Activer le support LDA
sudo nano /etc/dovecot/15-lda.conf
{ … lda_mailbox_autocreate = yes lda_mailbox_autosubscribe = yes protocol lda { mail_plugins = $mail_plugins #sieve }
Activer le support LMTP
Configuration du plugin sieve
nano /etc/dovecot/conf.d/90-sieve.conf
plugin { sieve = file:~/.sieve;active=~/.dovecot.sieve sieve_default = /var/lib/dovecot/sieve/default.sieve }
Sécuriser le transport du courriel
sudo nano /etc/dovecot/conf.d/10-auth.conf
… disable_plaintext_auth = yes … auth_mechanisms = plain login …
sudo nano /etc/dovecot/conf.d/10-ssl.conf
… ssl = yes ssl_cert = </etc/ssl/certs/ssl-cert-snakeoil.pem ssl_key = </etc/ssl/private/ssl-cert-snakeoil.key …
Créer des filtres
Création de règles globales
sudo mkdir /var/lib/dovecot/sieve/ sudo nano /var/lib/dovecot/sieve/default.sieve
L'exemple de règles suivant déplace automatiquement les courriels indésirables de la boîte de réception vers le dossier indésirable SPAMs. X-Spam-Flag est ajouté par spamassassin et amavis par le serveur MTA.
require "fileinto"; if header :contains "X-Spam-Flag" "YES" { fileinto "SPAMs"; }
sudo sievec /var/lib/dovecot/sieve/default.sieve
Création de règles utilisateur
nano ~/.dovecot.sieve
require "fileinto"; if exists "X-Spam-Flag" { # Store spam tagged by SpamAssassin into dedicated Spam folder if header :contains "X-Spam-Flag" "YES" { fileinto "Spam"; } } elsif exists "X-Cron-Env" { # Store mails from Cron daemon in dedicated folder fileinto "cron"; } elsif exists "List-Id" { # File list-mail into dedicated folders, matching on List-Id if header :contains "List-Id" "boost-users.lists.boost.org" { fileinto "boost-users"; } elsif header :contains "List-Id" "brltty.mielke.cc" { fileinto "brltty"; } elsif header :contains "List-Id" "debian-accessibility.lists.debian.org" { fileinto "debian-accessibility"; } elsif header :contains "List-Id" "debian-devel-announce.lists.debian.org" { fileinto "debian-devel-announce"; } elsif header :contains "List-Id" "debian-devel.lists.debian.org" { fileinto "debian-devel"; } elsif header :contains "List-Id" "spirit-general.lists.sourceforge.net" { fileinto "spirit-general"; } # ... }