Aujourd’hui, les grandes entreprises et administrations publiques hésitent entre continuer à utiliser des logiciels propriétaires ou basculer vers les Logiciels Libres. Pourtant, la plupart des logiciels libres sont capables de bien traiter les données issues des logiciels propriétaire, et parfois avec une meilleur compatibilité.
C’est alors la barrière de la prise en main qui fait peur, et pourtant...
Les logiciels libres
L’aspect « Logiciel Libre » permet une évolution rapide et une plus grande participation des utilisateurs. Les aides et tutoriels foisonnent sur Internet ou sont directement inclus dans le logiciel lui-même.
Enfin, les concepteurs sont plus proches des utilisateurs, ce qui rend les logiciels libres plus agréable à utiliser et conviviaux.
Grâce à la disponibilité des logiciels libres, vous trouverez facilement des services de support techniques et la licence n’est plus un frein à l’utilisation de ces logiciels par votre personnel.
Notre support technique concerne essentiellement les logiciels libres, que ce soit sous forme de services ponctuels ou de tutoriels.
- Décembre 2010 -
Comme nous l’avons vu lors de l’installation de spamassassin, il serait intéressant de pouvoir trier nos messages. Il existe bien des solutions pour le faire côté client, par exemple avec thunderbird, mais premièrement comme nous serons amené à utiliser plusieurs clients, il faudra refaire notre configuration à chaque fois et deuxièmement, il est plus logique de trier les messages lors de leur arrivée sur le serveur qu’à postériorie par le client.
Pour ce faire, nous allons utiliser le protocole sieve qui est décrit dans la RFC 5229 et parfaitement supporté par dovecot, nous devons juste activer le greffon.
Comme le filtrage des messages s’effectue lors de la réception des messages, il faut commencer par demander à postfix d’utiliser le LDA de dovecot pour délivrer les mails :
mailbox_command = /usr/lib/dovecot/deliver
Toutes les modifications qui vont suivent sont à effectuer dans le fichier /etc/dovecot/dovecot.conf. Commencez par activer le protocole managesieve :
protocols = imap imaps managesieve
Ensuite il faut configurer le protocole :
protocol managesieve {
# Login executable location.
login_executable = /usr/lib/dovecot/managesieve-login
# MANAGESIEVE executable location. See IMAP's mail_executable above for
# examples how this could be changed.
mail_executable = /usr/lib/dovecot/managesieve
# Maximum MANAGESIEVE command line length in bytes. This setting is
# directly borrowed from IMAP. But, since long command lines are very
# unlikely with MANAGESIEVE, changing this will not be very useful.
#managesieve_max_line_length = 65536
# Specifies the location of the symlink pointing to the active script in
# the sieve storage directory. This must match the SIEVE setting used by
# deliver (refer to http://wiki.dovecot.org/LDA/Sieve#location for more
# info). Variable substitution with % is recognized.
sieve=~/.dovecot.sieve
# This specifies the path to the directory where the uploaded scripts must
# be stored. In terms of '%' variable substitution it is identical to
# dovecot's mail_location setting used by the mail protocol daemons.
sieve_storage=~/sieve
# If, for some inobvious reason, the sieve_storage remains unset, the
# managesieve daemon uses the specification of the mail_location to find out
# where to store the sieve files (see explaination in README.managesieve).
# The example below, when uncommented, overrides any global mail_location
# specification and stores all the scripts in '~/mail/sieve' if sieve_storage
# is unset. However, you should always use the sieve_storage setting.
mail_location = maildir:~/Maildir
# To fool managesieve clients that are focused on timesieved you can
# specify the IMPLEMENTATION capability that the dovecot reports to clients
# (default: dovecot).
#managesieve_implementation_string = Cyrus timsieved v2.2.13
}
Étonnamment les options login_executable et mail_executable ont des valeurs par défaut incorrectes, nous devons donc les redéfinir.
Ensuite nous définissons le répertoire où seront situé les différents fichiers de paramétrage pour sieve (sieve_storage), sachant que seul le fichier pointé par l’option sieve sera actif. Et pour terminer avec cette partie, nous devons redéfinir l’endroit où sont stocké les mails.
Sans oublier de configurer le LDA :
protocol lda {
# Address to use when sending rejection mails.
postmaster_address = postmaster@homecomputing.fr
# Hostname to use in various parts of sent mails, eg. in Message-Id.
# Default is the system's real hostname.
#hostname =
# Support for dynamically loadable plugins. mail_plugins is a space separated
# list of plugins to load.
#mail_plugins =
#mail_plugin_dir = /usr/lib/dovecot/modules/lda
# Binary to use for sending mails.
#sendmail_path = /usr/lib/sendmail
# UNIX socket path to master authentication server to find users.
#auth_socket_path = /var/run/dovecot/auth-master
# Enabling Sieve plugin for server-side mail filtering
mail_plugins = cmusieve
}
Nous avons simplement a renseigner l’option postmaster_adresse et activer le greffon cmusieve.
Terminons par créer le répertoire qui va contenir nos fichiers et notre premier fichier :
$ mkdir ~/sieve
$ touch ~/sieve/default.sieve
Et l’activer :
$ ln -s ~/sieve/default.sieve ~/.dovecot.sieve
Quelques exemples de filtres
Voici un agrégat de recettes afin de gérer au mieux vos mails.
Commençons pas le plus important, envoyer les messages indésirables dans le répertoire approprié :
require "fileinto";
if header :contains "X-Spam-Flag" "YES" {
fileinto "Junk";
stop;
}
Si vous souhaitez filtrer les messages issues de listes de diffusions :
if exists "List-Id" {
fileinto "INBOX.Mailinglist";
}
INBOX.MailingList étant un sous-répertoire de la boite de réception.
Pour les utilisateurs de gmail, le protocole imap gère les étiquettes et il est possible d’utiliser sieve pour les ajouter automatiquement. Par exemple pour mettre en évidence vos messages récupérer de votre ancienne boite :
require "imapflags";
if address :contains "To" "gege2061@gmail.com" {
addflag "gmail";
}
Vous pouvez consulter la documentation de dovecot pour de plus amples exemples.
Concernant les étiquettes, il faut également les créer dans thunderbird (Édition > Préférences > Affichages > Étiquettes). Toujours pour thunderbird, si vous souhaitez pouvoir modifier rapidement vos filtres, vous pouvez utiliser le greffon sieve qui n’est qu’un éditeur de texte qui utilise le protocole managesieve mais qui à la bonne idée d’intégrer un analyseur syntaxique et une aide sur le protocole sieve.

Original post of gege2061.
Votez pour ce billet sur Planet Libre.