To content | To menu | To search


Les bons outils de merde #1: les mails

L'autre jour au taf il y avait un problème avec un serveur de mail, et rapidement le besoin de filtrer les mails est soulevé. Quelqu’un demande: "Il y a procmail sur cette machine ?"

procmail.

Depuis que je fais de la messagerie (plus de 10 ans), cette daube est considérée comme la référence en matière de MDA, alors que depuis au moins le même nombre d'année, un soft performant aurait logiquement du le remplacer: maildrop.

Un exemple vite fait: trier un mail venant d'un certain expéditeur. voici les confs

  • procmail:
:0 H
* ^From.*toto@spam.com
$MAILDIR/.SPAM/
  • maildrop:
if (/^From:.*(toto@spam.com)/)
{
  log ">>> Mail successfully delivered to SPAM directory"
  exception {
    to "$MAILDIR/.SPAM/"
  }
}

Choisis ton camps camarade :) En plus de sa syntaxe limpide, on voit que maildrop inclus la possibilité d'envoyer des messages personnalisés au syslog, pratique pour les stats et/ou le debug.

Mais impossible de parler de procmail sans parler de son copain non moins (mais heureusement de moins en moins) célèbre, j'ai nommé fetchmail.

fetchmail, codé au whiskey pur malt par ESR, cumule les tares: en plus d'avoir une syntaxe à vomir, il se paye le luxe de ne pas gérer le format Maildir (modernité), et dans certains cas peut même perdre des mails. Il serait même sujet aux buffer overflows...

Préférez-lui donc une alternative qui corrige tout ça (et qui, jamais ne perdra un seul mail): getmail.

Pour finir, sur les serveurs où on trouve le couple infernal, on retrouve évidemment (puisque pas de Maildir), le format mbox. Pleins de mails, un seul fichier. Vas-y pour virer un mail dedans. Avec Maildir, on supprime le fichier correspondant, et c'est fini...

Et non, je ne parlerai pas d'Exchange™®© dans les outils de merde, même si il y a à en dire :)

Add a comment

Comments can be formatted using a simple wiki syntax.

This post's comments feed