Page suivante Page précédente Table des matières

4. Guide pratique pour utiliser IMAP sous Linux.

Publié dans le Numéro 35 de la Linux Gazette

Auteur : David Jao

Date : Décembre 1998

4.1 Introduction.

IMAP4rev1, un protocole d'accès au courrier électronique, permet aux utilisateurs de gérer un ensemble de boîtes aux lettres sur un serveur distant via Internet. Sa conception, de type client/serveur, permet aux clients de bénéficier de grands avantages en terme de portabilité et d'interopérabilité. Le gain est semblable à celui dont ont profité les applications graphiques de la conception de X11. Dans cet article, je vais décrire comment mettre en place des clients et des serveurs IMAP sous linux pour gérer votre courrier électronique. Je vais aussi mettre en lumière les avantages et les inconvénients de ce protocole, et indiquer les circonstances dans lesquelles l'utilisation d'IMAP est la plus profitable.

4.2 Pourquoi utiliser IMAP ?

Comment lisez-vous votre courrier électronique ? Très probablement en démarrant un programme comme Pine ou Netscape. Vous avez sûrement une BAL sur chacun de vos comptes, et vous triez votre courrier dans des fichiers séparés pour y accéder plus facilement. À moins que vous n'utilisiez déjà IMAP, ces fichiers sont situés sur votre disque, où dans votre répertoire personnel sur un compte distant. Cela pose un certain nombre de problèmes :

  • Avec un client fonctionnant en mode texte, vous devez vous connecter au compte sur lequel se trouve votre courrier pour le lire. Ce n'est pas très grave si vous n'en avez qu'un, mais imaginez comme il peut être contraignant de jongler d'un compte à l'autre, pour transférer un courrier reçu sur un compte vers un autre compte, par exemple.
  • Avec un client graphique, il peut être difficile de relever son courrier si la liaison est mauvaise, où la bande passante insuffisante. C'est courant : les gens préfèrent en général les clients graphiques et leur bande passante est toujours limitée.
  • Il n'est pas pratique de changer de client si vos BAL sont écrites dans un format particulier. Nombre d'utilisateurs trouvent qu'il est pratique de pouvoir passer d'un client à l'autre en fonction de leurs besoins spécifiques.

IMAP est la solution à tous ces problèmes. Il est fondé sur une idée simple : tous les fichiers sont stockés sur un serveur central, et on y accède via un protocole simple et largement standardisé. Avec IMAP, vous pourrez :

  • Lire votre courrier depuis n'importe quelle machine, il suffira qu'un client IMAP soit installé.
  • Gérer plusieurs dossiers, dépendant de plusieurs comptes, avec un seul client.
  • Changer de lecteur de courrier à volonté, sans conséquence pour les fichiers contenant votre courrier.

L'analogie avec X11 est pratique. Sous MS Windows, un programme graphique est lié à l'affichage de l'ordinateur. En revanche, sous X, un programme qui tourne sur une machine peut être affiché sur n'importe quelle autre machine, via un protocole standard. Le réseau est par conséquent transparent, ce qui est un plus réel de nos jours, alors que les réseaux se répandent. IMAP offre une flexibilité comparable : votre courrier électronique est stocké sur un serveur central, et n'est pas lié à un logiciel ou à une machine en particulier ; vous pouvez le lire depuis n'importe quelle machine en réseau.

4.3 Installation d'un serveur IMAP.

Vous êtes maintenant devenu fou d'IMAP, et vous voulez l'utiliser, n'est-ce pas ?

Il faut d'abord installer un serveur IMAP. Si votre FAI en a un, vous pouvez vous en servir. Vous pourrez ainsi accéder à votre courrier même lorsque votre ordinateur est éteind, mais il vous faudra contacter votre FAI pour lire votre vieux courrier. De toute façon, la plupart des fournisseurs ne proposent pas de serveur IMAP, ce qui va vous contraindre à installer le serveur sur votre machine, de toute façon.

Sans plus attendre, voici un guide d'installation pour le serveur IMAP de l'université de Washington.

Procurez vous la dernière version (la 4.4 au moment où j'écris ces lignes) et installez-la.

[root@localhost ~]# lynx ftp://ftp.cac.washington.edu/imap/imap-4.4.tar.Z
[root@localhost ~]# tar xzvf imap-4.4.tar.Z
[root@localhost ~]# cd imap-4.4

Compilez-la en faisant make sl5 si vous utilisez les shadow password et la libc5, make slx si vous utilisez les shadow password et la glibc, et make lnx dans tous les autres cas.

Installez les fichiers que vous venez de compiler :

[root@localhost imap-4.4]# install -s -m 755 -o root -g mail imapd/imapd /usr/sbin

Ajoutez la ligne suivante dans votre fichier /etc/inetd.conf/ si elle n'y est pas déjà.

imap    stream  tcp     nowait  root    /usr/sbin/tcpd  /usr/sbin/imapd

Configurez vos fichiers hosts.allow et hosts.deny pour limiter l'accès IMAP à certains domaines seulement. Cette étape n'est pas obligatoire, mais elle est vivement recommandée, puisque le serveur IMAP de l'université de Washington a souffert de plusieurs problèmes de sécurité assez sérieux. Ajoutez ceci dans /hosts.deny :

imapd: ALL

et dans hosts.allow les domaines autorisés :

imapd: your.local.host.com
imapd: .yourisp.com
imapd: .yourschool.edu

Enfin, forcez inetd à relire ses fichiers de configuration, et tout est prêt à fonctionner :

[root@localhost ~]# killall -HUP inetd

Instructions spécifiques pour certaines distributions.

Si vous utilisez une distribution de Linux qui dispose d'un système de gestion des paquetages, vous pouvez si vous le souhaitez installer un serveur précompilé.

Pour la RedHat 5.2, récupérez le paquetage imap-4.4-2.i386.rpm, et faites rpm -Uvh imap-4.4-2.i386.rpm. Pour Debian 2.0, récupérez le paquetage map_4.2-1.deb et faites dpkg -i imap_4.2-1.deb. Après l'installation, il vous reste à configurer inetd. Cette étape est la même que celle qui est décrite plus haut.

4.4 Configuration des clients IMAP.

Une fois que le serveur est en place, il est très facile de configurer les clients. Il suffit de choisir un répertoire sur la machine qui héberge le serveur, où l'on stocke tout son courrier, $HOME/Mail, par exemple. Il faut y avoir les droits de lecture et d'écriture, et d'indiquer ce répertoire au client, ainsi que le nom de votre serveur IMAP et votre identifiant (login). Ceci fait, vous pourrez à volonté créer et et effacer des dossiers sur votre serveur, et déplacer les courriers de l'un à l'autre, comme s'ils étaient sur votre machine.

Voici 3 exemples, pour les programmes que j'utilise :

Pine 4.05

On peut trouver Pine sur http://www.washington.edu/pine/. Ce logiciel est très populaire sous Unix. Les version 4.0x gère l'accès aux BAL via IMAP. Appuyez sur S pour accéder au panneau de configuration, L pour configurer vos BAL, et A pour en ajouter une. Indiquez le nom de votre serveur, votre identifiant et et le répertoire contenant vos dossiers.

Facile, non ? Pine peut gérer plusieurs BAL via IMAP, vous pouvez donc en ajouter autant que vous voulez, et y lire tous vos courriers facilement, depuis une seule machine.

Copie de l'écran de configuration de Pine

Netscape Communicator 4.07

Netscape Communicator est un navigateur Web, un lecteur de news et un lecteur de courrier électronique. Il est très répandu. La version 4.07 convient pour lire quelques courriers, mais il est instable si vous tentez d'ouvrir une BAL contenant plusieurs milliers de courriers. On peut se le procurer à http://home.netscape.com/.

Pour le configurer, choisissez Preferences dans le menu Edit, sélectionner l'onglet Mail & News , cliquez sur Mail Server et tapez votre identifiant et le nom de votre serveur IMAP. Évidemment, vérifiez que vous avez bien choisi IMAP4 comme type de serveur ! Cliquez sur More Options et tapez le nom du répertoires contenant vos courriers. Enfin, désactivez l'option Move Deleted Messages to Trash. Elle ne fonctionne ne effet pas très bien, et IMAP dispose de son propre système de gestion des messages effacés.

Netscape 4.0x ne peut pas gérer plusieurs BAL via IMAP, et il ne peut pas copier automatiquement le courrier envoyé sur un dossier via IMAP. Netscape 4.5 le fait, mais son client IMAP est bien trop instable pour être utilisé, à mon goût.

Copie de l'écran de configuration de Netscape

TkRat 1.2

TkRat est mon client favori pour le moment. C'est le seul client IMAP dont les sources sont disponibles, à ma connaissance. Sa licence est de type BSD. On peut le trouver à http://www.dtek.chalmers.se/~maf/ratatosk/.

Sélectionnez New/Edit Folder dans le menu Admin. Puis choisissez IMAP Folders dans le menu Import. Tapez votre identifiant, votre serveur IMAP et vos dossiers, sous la forme Répertoire/*. En effet TkRat demande une expression régulière, et pas le nom du répertoire.

Copie de l'écran de configuration de TkRat

4.5 Trucs et astuces.

Voici quelques renseignement qu'il est bon de connaître, et qui ne sont pas évidents.

Arborescence de dossiers.

Pour le moment, le serveur IMAP de l'université de Washington ne peut pas gérer un dossier qui contient à la fois des courriers et des dossiers. Un dossier ne peut contenir que l'un où l'autre. Pour précisez qu'un dossier contient d'autres dossiers, rajoutez un / à la fin de son nom. Par exemple :

  • Cours/ est un dossier qui ne contient que des dossiers.
  • Cours/Calcul est un dossier contenu dans le dossier Cours/. Il ne contient que des courriers.
  • Cours/Langues/ est un dossier contenu dans le dossier Cours/. Il ne contient que des dossiers.

Le dossier Inbox.

Ce dossier (INBOX, Inbox...) est réservé au nouveau courrier. Vous ne pouvez pas créer un dossier portant ce nom.

4.6 Problèmes de sécurité.

Un serveur IMAP, c'est un démon de plus qui tourne, et c'est autant de failles de sécurité potentielles. C'est pourquoi, si vous n'allez pas utiliser les avantages que vous donne IMAP, vous feriez mieux de vous en passer.

Par ailleurs, IMAP utilise des mots de passe transmis en clair pour l'authentification. Beaucoup de gens prennent à la légère la transmission de ces mots de passe sur Internet, et utilisent telnet, ftp, pop3 sans remords. Si cela vous dérange, il y a des moyens de vous protéger.

  • Utilisez Netscape Messaging Server, un logiciel qui gère l'utilisation d'IMAP avec SSL. Il n'y a malheureusement pas de version Linux disponible, et il coûte 1295 dollars américains.
  • Compilez Cyrus IMAP Server, avec l'option Kerberos.
  • Utilisez SSH pour vos sessions IMAP.
  • Installez imp, une passerelle Web vers IMAP, sur votre machine, et accédez à votre courrier via un serveur Web qui supporte le SSL.

Malheureusement, toutes ces techniques sont difficiles à mettre en place, et cet article n'est pas le lieu pour en parler. Si la plupart des données sont transmises en clair sur Internet, c'est qu'il n'est pas si facile de mettre en place des techniques de chiffrement [NdT: et qu'elles sont parfois interdites].

4.7 Conclusion

De plus en plus de gens ont à faire leur courrier sur plusieurs machines et sur plusieurs comptes. Ils se servent actuellement, pour la plupart, des techniques éprouvées, comme des telnet, des sessions X, et NFS. IMAP de son côté offre une solution applicative spécifiquement conçue pour cela. Il va peut-être révolutionner l'accès au courrier et changer notre façon de le lire, et à terme la demande des utilisateurs sera si forte que tous les clients supporteront IMAP.

En un mot comme en cent, si vous êtes satisfait de la façon dont vous lisez votre courrier électronique, ce n'est pas la peine de passer à IMAP. En revanche, si vous voulez gagner plus de flexibilité, vous devriez y songer.

4.8 Références.

La RFC sur IMAP4rev1.

Une comparaison entre IMAP et POP.

Une longue liste de produits gérant l'IMAP.

----------------------------------------------------------------

Copyright © 1998, David Jao - Publié dans le n°35 de la Linux Gazette - Décembre 1998.

Adaptation française de Marc Simon


Page suivante Page précédente Table des matières