Installation du serveur imap

Introduction

Ce court tutoriel à pour but de permettre d’installer un serveur imap SSL sur une machine (typiquement une passerelle ADSL) afin de rendre les mails accèssibles de l’extérieur de manière sécurisé.

Qui n’a jamais était confronté au problème suivant:
Comment lire au boulot mes mails que j’ai récupéré à la maison ?
Comme ne pas avoir tous les mails en double ( par ex en les lisant et en les renvoyant vers une autre adresse ) ..

Une méthode consiste à accéder à vos mails sur votre machine perso via ssh + un lecteur de mail en mode texte par ex mutt. Mais cela peut poser des problèmes comme par exemple comment transféré des mails du boulot vers votre compte email perso .. etc etc.

Mais la méthode exposé ici est bcp + pratique car elle permet :
– de travailler tout le temps sur la même arborescence de messagerie
– de changer facilement de lecteur de mail (mozilla / evolution / outlock etc etc ) car les mails sont sauvegardés sur le serveur et non pas dans le client de messagerie lui même.

La solution retenue est basé sur :
– postfix
– procmail
– courier-imap-ssl

Comment ca fonctionne ?

Afin d’arriver à nos fins il faut que les mails soit récupérés des différents serveurs de mails pop chez wanadoo free … etc centraliser dans une boite à lettre commune (cette partie était faite via fetchmail / procmail ). Et ensuite configurer le serveur imap pour utiliser cette boite à lettre.

Récuperation des mails:

Pour la récupération des mails nous allons utiliser fetchmail en mode démon.

apt-get install fetchmail procmail

Sur une debian il suffit de d’éditer le fichier /etc/fetchmailrc
afin que les mails sont récupérer de manière automatique.

voici un exemple :

poll pop3.club-internet.fr protocol POP3 user monlogin password XXX is test@localhost

Les mails seront donc « poper » de chez club-internet et transmis à test@localhost. Ceci via postfix mais cela peut être fait directement ou avec un autre SMTP (exim par ex)

Regroupement des mails:

Les mails ainsi « poper » vont donc être délivré à l’utilisateur test@localhost mais il faut qu’ils soient stockés dans un répertoire particulier à savoir /home/test/Maildir (répertoire par défaut de courier-imap). Dans ce but nous allons utiliser procmail.
Poour cela il faut :
– créer le répertoire /home/test/Maildir à l’aide de la commande maildirmake /home/test/Maildir
– configurer postfix pour utiliser procmail en ajoutant la ligne
mailbox_command = procmail -a « $EXTENSION »
dans le fichier /etc/postfix/main.cf
– configurer procmail afin qu’il délivre les mails dans /home/test/Maildir à l’aide du fichier .procmailrc


MAILDIR=$HOME/Maildir/
DEFAULT=$MAILDIR
LOGFILE=$HOME/.from
LOCKFILE=$HOME/.lockmail

attention le / à la fin est important il stipule à procmail que la boite a lettre en question est de type ‘Maildir’ et non pas mbox comme par défaut.

Premier tests

il suffit d’envoyer un mail à l’utilisateur test@localhost via la commande « mail » afin de vérifier que le mail se trouve ensuite dans le fichier /home/test/Maildir/new/xxxxxxxxxxx.

Ensuite on teste en rajoutant le fetchmail. Une fois que cette partie la est opérationnel il suffit d’installer le serveur courier-imap-ssl (via le paquet officiel de votre distribution). Au moment de l’installation ce dernier devrait vous générer un certificat SSL et démarrer.

Lecteur de mails

Il ne reste plus qu’à configurer votre lecteur de mail afin qu’il connaisse ce nouveau compte mail. Quasiment tout les clients de mail permettent d’utiliser imap.
Pour mozilla il suffit de créer un compte mail, et type de serveur imap, login test, password le mdp de test ( surtout n’oublier pas de dire que la connection est sécurisé) et c’est fini 🙂

Astuces

Une astuce consiste aussi d’utiliser procmail pour trier les mails dans différente répertoires . Pour cela il suffit de créer ces répertoires via votre lecteur de mail et rajouter des rêgles dans le fichier .procmailrc comme par exemple


:0
* ^From.*@respyre.org
.respyre/

qui aura pour effet de stocker les mails venant de respyre.org dans le répertoire /home/test/Maildir/.respyre/new/
( Attention au .respyre en effet courier imap utilise les . comme séparateur de hierarchie, ainsi donc le répertoire News/BSD ce traduit par un répertoire en Maildir/.News.BSD/