La distribution des mails
Utiliser maildrop pour délivrer les mails
maildrop est un MDA plus facile à configurer que le traditionnel procmail
Installation
apt-get install maildrop
Configuration
Pour postfix, dans le /etc/postfix/main.cf
mailbox_command = /usr/bin/maildrop -d ${USER}
Configuration globale (pour tous les utilisateurs) de maildrop, dans /etc/maildroprc, décommentez la ligne
DEFAULT="$HOME/Maildir"
Maintenant, ça devrait marcher pour tous les utilisateurs, sans qu'ils n'aient de réglage particulier à faire. Ceux-ci peuvent cependant ajouter des règles personnalisées dans leur ~/.mailfilter
Intégration avec bogofilter
Installation de bogofilter
apt-get install bogofilter
Création du répertoire spam s'il n'existe pas déjà
maildirmake -f Junk Maildir
Configuration de maildrop
Voici un fragment de ~/.mailfilter qui permet de faire passer un mail par bogofilter pour savoir si c'est un spam ou non
##### Parametres des filtres ##### # Utiliser l'antispam (bogofilter) (yes/no) ANTISPAM=yes # Repertoire des spams SPAM=Junk # Classer les mails non-sur de l'antispam avec les spams (yes/no) # (sinon, ils restent dans le courrier entrant) UNSUREISSPAM=no ##### Fin des parametres - debut des regles ##### # Filtre antispam (bogofilter) if ($ANTISPAM == 'yes') { xfilter "bogofilter -u -e -p" # spam certain if(/^X-Bogosity: Spam, tests=bogofilter/) to $DEFAULT/.$SPAM/ # spam non-sur if($UNSUREISSPAM && /^X-Bogosity: Unsure, tests=bogofilter/) to $DEFAULT/.$SPAM }
Apprentissage
Pour que bogofilter soit efficace, il faut qu'il apprenne à reconnaître les spams des non spams. Les commandes pour l'entraîner sont
bogofilter -s -B Maildir/.Junk/ # Apprend les spams bogofilter -n -B Maildir/ # Apprend les non-spams
Il est possible de faire un entraînement quotidien, par exemple en rajoutant à l'aide de la commande crontab -e les commandes suivantes
30 2 * * * bogofilter -s -B /home/<utilisateur>/Maildir/.Junk/ 45 2 * * * bogofilter -n -B /home/<utilisateur>/Maildir/