Cette page est en cours de rédaction.
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.

Installez les paquets de filtrages de l'agent de distribution des courriels Dovecot dovecot-sieve dovecot-managesieved.

Pour configurer le MDA Dovecot…

Configuration du serveur de messagerie MTA

Postfix

Comment configurer sa distribution de courriels systèmes MTA avec Postfix ?

Si vous voulez filtrer par un marquage vos courriels SPAMs ou Virus au niveau du serveur MTA, il vous faudra mettre en place la partie de filtration des courriels sur le serveur de messagerie.

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

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
…

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
}

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";
  }
  # ...
}
  • filtrage_des_courriels_avec_dovecot.1599645014.txt.gz
  • Dernière modification: Le 09/09/2020, 11:50
  • par sefran