Comparatif horde/imp squirrelmail

Creative Commons License
Cette création est mise à disposition sous un contrat Creative Commons.

L'article original se trouve sur http://ymettier.free.fr/articles_lmag/.

Article publié dans le numéro 34 (décembre 2001) de GNU/Linux France Magazine


Table des matières

1. Introduction
2. Les prérequis
3. Préparation du site web
3.1. Apache
3.2. IMAP
3.3. Convention
3.4. Remarque sur les répertoires: mise-à-jour et désinstallation
3.5. SAUVEGARDEZ VOS DONNEES
4. Horde/Imp
4.1. Prérequis propres à Horde/Imp
4.2. Installation de phplib
4.3. Installation de Horde
4.4. Installation de Imp
4.5. Utilisation: quelques problèmes que vous pouvez rencontrer
5. Squirrelmail
5.1. Installation
5.2. Configuration
6. Les autres
6.1. Basilix
6.2. phpgroupware
7. Conclusion
8. Références:

Résumé

Choisissez un logiciel de messagerie pour le web!

1. Introduction

A l'heure où le haut débit entre chez les particuliers, où l'on peut héberger soi-même son site web et son serveur de courrier électronique, le choix d'un logiciel de messagerie peut se faire sur une étendue plus large. De tels programmes ont une interface html, ce qui rend votre messagerie consultable depuis n'importe où sur internet à l'aide d'un simple navigateur.

Ces logiciels dont je parle, ce sont ceux-là même que les fournisseurs d'accès à internet utilisent pour que vous puissiez consulter votre messagerie depuis chez vous, depuis votre lieu de travail, depuis ailleurs... Certains sont libres, certains sont propriétaires, certains tournent sur une plateforme spécifique, certains tournent sur n'importe quelle plateforme disposant d'un minimum de prérequis. Le comparatif suivant va porter sur deux logiciels libres, utilisés par de grands fournisseurs d'accès à internet en France, et par de nombreuses écoles et universités. j'ai nommé Imp et Squirrelmail.

Mon comparatif, contrairement à ce que l'on peut attendre d'un comparatif dans un magazine d'informatique, ne sera pas un comparatif suivant des critères précis. Habituellement, un tel comparatif vise à juger un produit pour que le lecteur n'ait plus qu'à se ruer sur le produit ayant eu la meilleure note. Moi, je ne jugerai pas: je vais indiquer comment j'ai installé ces deux logiciels sur ma machine, ainsi que quelques remarques sur les différences entre eux. Après, à vous de juger!

Dernière remarque avant de commencer: certaines distributions Linux proposent des paquets contenant Imp ou Squirrelmail. Rien ne vous empêche de les installer via le système de gestion de paquets des distributions. L'intérêt de cet article est de montrer comment cela s'installe pour vous permettre un meilleur jugement quant au choix du projet, pour vous indiquer la complexité des projets, pour vous faire entrevoir leur solidité via leurs dépendances et leur mode d'installation etc. Sans oublier bien sur quelques trucs et astuces valables pour le serveur web ou l'installation de n'importe quelle application web.

2. Les prérequis

Pour installer un ou les deux logiciels, je partirai du principe que vous diposez de certains prérequis. Le premier prérequis est d'avoir un serveur web (apache dans mon cas), de php (je préciserai dans les sections spécifiques à Imp et à Squirrelmail quelles options doivent être activées dans php), d'une base de donnéees (postgresql dans mon cas, mais d'après les documentations respectives des deux logiciels, mysql convient aussi bien). Je ne précise pas la machine ni le système d'exploitation nécessaire car normalement, les deux logiciels ne dépendent que de l'environnement web, pas de l'environnement système. Mon installation s'est déroulée sur une machine avec GNU/Linux (progeny debian 1.0), et la votre peut aussi bien se dérouler sur NetBSD.

3. Préparation du site web

Avant de commencer réellement avec les logiciels eux-même, je voudrais vous inviter à préparer votre environnement de test, si possible similaire au mien. Cela permettra par la suite une mise-à-jour plus facile, ou une désinstallation propre en deux minutes.

3.1. Apache

Pour installer votre serveur web proprement, le répertoire contenant les binaires, fichiers de configuration, fichiers de log et autres fichiers nécessaires au fonctionnement du serveur doit être distinct du répertoire ou des répertoires contenant les données partagées via ce serveur web. En termes techniques, si votre serveur web est dans /usr/local ou dans /opt/apache ou n'importe quel autre répertoire similaire, le répertoire htdocs ne doit pas se trouver dans /usr/local ou dans /opt/apache. L'endroit le plus adapté est /var/htdocs qui est conçu pour les données variables. Chez moi, il est sur une partition séparée.

Si vous voulez effectivement faire tout cela proprement, le mieux est de créer un répertoire, par exemple /var/htdocs, qui contiendra les répertoires cgi-bin, htdocs (oui, ca fait bien /var/htdocs/htdocs), et icons. N'oubliez pas de copier le contenu des précédents répertoires cgi-bin, htdocs et icons dans ceux nouvellement créés (ne déplacez pas: en administration systeme, on copie et si tout va bien, dans certains cas on supprime les anciennes données). Créez maintenant un nouveau sous-répertoire, par exemple apps qui contiendra Imp et Squirrelmail, et toute autre application que vous voudriez tester aussi.

Editez votre fichier httpd.conf pour adapter les nouveaux chemins, puis relancez le serveur web. http://localhost devrait fonctionner comme si de rien n'était.

Il vous faut un serveur web sécurisé avec SSL. Si vous ne savez pas faire, cherchez le 23ème exemplaire de votre revue favorite aux pages 41, 42 et 43. C'est la doc qui m'a servi pour installer mon serveur apache sécurisé. Un petit ajout par rapport à cet article: j'ai modifié le script apachectl pour que la commande de lancement du service httpd ait -DSSL en argument quand on lance apachectl avec l'argument start. Simple astuce pour avoir le support SSL quand la machine vient de rebooter.

Quand je dis qu'il faut un serveur sécurisé, ce n'est pas un prérequis technique, c'est un prérequis de sécurité. Quand un convoyeur de fonds transporte des billets, les billets voyagent dans un moyen de transport sécurisé. Ils pourraient tout aussi bien être transportés dans un simple camion avec des vitres pour mieux voir les billets et mieux tenter les voleurs. C'est pareil avec le courrier électronique: il vaut mieux sécuriser, même si ce n'est pas nécessaire.

3.2. IMAP

Vous devez avoir un support pour imap. Si ce n'est pas le cas, installez imap sur votre machine (si ce n'est pas déjà fait), puis installez le support pour imap sur php (paquet dans la distribution, ou recompilation de php avec --with-imap sur la ligne ./configure --prefix=... --with-imap ...). Il semble que l'utilisation de l'implémentation de l'université de Washington soit préférée de pas mal de gens: c'est celle que j'ai trouvée pour debian, c'est celle par défaut de Imp et de Squirrelmail. Rien ne vous empèche d'installer une autre implémentation, mais celle-ci vous évitera de réfléchir aux éventuels problèmes de compatibilité entre les différentes applications.

3.3. Convention

Par convention, plutôt que d'écrire /var/htdocs/htdocs ou /var/htdocs/apps et à chaque fois de préciser que c'est peut-être différent chez vous, j'utiliserai des variables. Ainsi $HTDOCS pointera sur /var/htdocs, et, $APPS sur $HTDOCS/apps.

3.4. Remarque sur les répertoires: mise-à-jour et désinstallation

Pour faciliter la suppression ou la mise a jour des programmes, une installation pour logiciel-x.y se fera dans $APPS/logiciel/logiciel-x.y. Ainsi, pour supprimer le logiciel, rm -rf $APPS/logiciel suffit. Et pour mettre à jour avec la version suivante, une décompression suivant la même méthode n'impacte pas du tout l'ancienne version qui continue à tourner pendant que la nouvelle est en cours de préparation. On fera aussi toujours un lien $APPS/logiciel/logiciel pointant sur la version courante $APPS/logiciel/logiciel-x.y afin de ne pas à avoir à trop modifier les fichiers de configuration. Ainsi, par exemple, voici ce qui se passera pour Horde:

$APPS/
$APPS/horde
$APPS/horde/horde-1.2.6
$APPS/horde/horde -> $APPS/horde/horde-1.2.6

Au dernier moment, la modification des fichiers de configuration puis l'arrêt/relance du serveur web prend en compte la nouvelle version.

3.5. SAUVEGARDEZ VOS DONNEES

Sauvegardez vos donnéees: si vous vous contentez d'installer les logiciels, tout devrait bien se passer et les risques de perdre des données sont très faibles. Cependant, si ensuite vous jouez avec les logiciels de courrier électronique, prenez la précaution de sauvegarder vos courriers, juste au cas où.

Habituellement, le courrier est stoqué soit dans /var/mail soit dans /var/spool/mail. Il arrive même que l'un de ces deux répertoires soit un lien vers l'autre! En tout cas, dans le répertoire en question, sauvegardez tous les fichiers, qui portent normalement le nom de chaque utilisateur, avec un fichier par utilisateur. En cas de problème, il suffira d'écraser une version modifiée avec la sauvegarde pour revenir en arrière.

Sauvegardez aussi éventuellement le fichier de configuration d'apache httpd.conf, pour revenir en arrière avec apache s'il ne voulait plus redémarrer. A nouveau, les modifications que l'on va apporter sont tellement mineures que la sauvegarde est ici faite plus par principe que par réèl besoin. Mais c'est parfois bon d'être rigoureux.

4. Horde/Imp

Horde/Imp? C'est quoi Horde? Horde est une dépendance de Imp écrite par les auteurs de Imp. Horde est en fait un projet visant à donner des fonctions et une interface utilisateur commune à différentes applications de productivité, de messagerie et de gestion de projet. Forcément, Imp utilise ces fonctions, donc il faut commencer par installer Horde.

4.1. Prérequis propres à Horde/Imp

Il vous faut phplib, qui est inclus dans Horde. Mais si vous voulez utiliser une version plus officielle, rien ne vous en empèche. Ce n'est pas ce que les auteurs de Horde/Imp préconisent, et comme on est en phase de test, c'est plus simple d'utiliser leur version: nous aurons moins de complications.

phplib, Horde et Imp contienent des scripts php3. php4 sait les interprêter, donc il faut juste que apache sache indiquer à php les fichiers avec l'extension .php3. Faites une recherche de "php3" dans httpd.conf, et vérifiez que les lignes suivantes sont bien décommentées:

AddType application/x-httpd-php .php3
AddType application/x-httpd-php .php

Sinon, enlevez les commentaires.

Profitez-en pour ajouter index.php et index.php3 sur la ligne directoryindex. Et relancez apache.

4.2. Installation de phplib

  • Créer un répertoire $APPS/horde.

  • Décompresser l'archive dans $APPS/horde. Normalement, vous obtenez un répertoire $APPS/horde/horde-1.2.6.

  • Créez dans $APPS/horde un lien horde pointant sur horde-1.2.6, puis allez dans le répertoire horde-1.2.6

  • Allez dans le répertoire phplib. Le fichier README indique que la version de phplib incluse contient des modifications de la part de l'équipe de développement de Horde, ce qui est un peu dommage. De plus, indiquer que les questions spécifiques à phplib sont à poser à l'équipe de phplib est un peu léger à mon goût si l'équipe de Horde décide de maintenir sa propre branche de phplib.

  • Le fichier README indique de déplacer le répertoire phplib dans un répertoire différent. Cela n'est pas nécessaire, surtout que cette version de phplib est propre à Horde. On se débrouillera autrement.

  • Editez le fichier httpd.conf d'apache. Nous allons ajouter les permissions pour le répertoire horde ainsi que pour phplib. Ajoutez ceci (rappelez-vous que $APPS est notre convention: mettez le chemin réel dans le fichier httpd.conf):

<Directory "$APPS/horde">
 <IfModule mod_php3.c>
 php3_value include_path '$APPS/horde/horde/phplib:$APPS/horde/horde:.'
 php3_value auto_prepend_file $APPS/horde/horde/phplib/prepend.php3
 php3_value track_vars on
 php3_value magic_quotes_gpc off
 </IfModule>
 <IfModule mod_php4.c>
 php_value include_path '$APPS/horde/horde/phplib:$APPS/horde/horde:.'
 php_value auto_prepend_file $APPS/horde/horde/phplib/prepend.php3
 php_value track_vars on
 php_flag register_globals on
 php_value magic_quotes_gpc off
 </IfModule>
 Options Indexes FollowSymLinks
 AllowOverride None
 Order allow,deny
 Allow from all
</Directory>

Et plus bas, dans la section des alias, ajoutez l'alias suivant:

 Alias /horde "$APPS/horde/horde"
  • Relancez apache.

  • Editez local.inc, puis prepend.php3. Mettez ou supprimez des commentaires en fonction de la base de données que vous utilisez.

  • Créez les bases et tables nécessaires: dans $APPS/horde/horde/scripts/database, vous avez des scripts pour différentes bases, ainsi que des fichiers d'aide. Si vous ne connaissez pas grand chose aux bases de données, voici une manière rapide et simple de s'en sortir. Avec postgresql, et en tant que root (si vous voulez faire les choses proprement avec la base, lisez de la documentation dessus, ce n'est pas l'objet de cet article ici), essayez ceci:

    sh pgsql_cuser.sh
    psql template1 <pgsql_create.sql
    

    Des manipulations similaires amènent au même résultat avec mysql.

  • Hop, fini avec phplib.

4.3. Installation de Horde

La version utilisée est la version 1.2.6.

  • Horde est déjà décompressé, dans $APPS/horde/horde-1.2.6. Retournez dans ce répertoire, puis dans le répertoire config.

  • Copiez horde.php3.dist en horde.php3, puis éditez-le. $default->horde_root_url contient l'URL de racine de Horde, donc d'après notre configuration d'apache précédente, c'est /horde qu'il faut mettre (c'est notre alias!). A priori, pas besoin de changer les autres chemins ou URL. Vérifiez que sendmail est au bon endroit, puis modifiez les adresses de courriers électronique en fonction de vos besoins.

  • Testez Horde: c'est maintenant que les choses visibles commencent. Visitez l'URL http://localhost/horde/test.php3. Cette page vous indiquera ce qui va et ce qui ne va pas.

  • Vous devez avoir un support pour imap. Si ce n'est pas le cas, revenez à ma section des prérequis: imap est nécessaire autant pour Squirrelmail que pour Imp.

  • LDAP n'est pas nécessaire. D'ailleurs, il est à NO chez moi. Mysql ou Postgresql doivent être activés, mais l'un des deux devrait suffire. A nouveau, si les deux manquent, installez le support pour votre base de données sur Imp (à nouveau, paquet ou recompilation avec --with-mysql ou --with-pgsql)

  • Si track_vars n'est pas à YES, que phplib en marche pas ou que les tests divers de phplib ne marche pas, c'est que vous n'avez pas modifié le fichier httpd.conf comme ci-dessus lors de l'installation de phplib.

  • Si la création d'une session échoue, commencez par vérifier que tout est bien configuré pour l'accès à votre base de données.

  • Si vous êtes arrivés jusqu'ici et que cela fonctionne, mes félicitations. On en est à mi-chemin, mais les difficultés majeurs sont passées, et vous venez de vous entrainer pour les difficultés à venir. Continuez, maintenant, c'est facile! Sinon, Squirrelmail, c'est plus facile: il n'y a pas de telles dépendances.

4.4. Installation de Imp

La version utilisée est la version 2.2.6

  • Décompressez Imp dans $APPS/horde/horde-1.2.6, ce qui nous crée un nouveau répertoire $APPS/horde/horde-1.2.6/imp-2.2.6. Créez le lien symbolique $APPS/horde/horde-1.2.6/imp qui pointe sur $APPS/horde/horde-1.2.6/imp-2.2.6.

  • Il existe deux manières de configurer Imp. La première, c'est la méthode via setup.php3. C'est la plus facile, c'est celle que nous allons utiliser. La seconde, manuelle, est décrite dans le fichier docs/INSTALL.

  • Dans le répertoire $APPS/horde/horde-1.2.6 (non, pas le répertoire imp-2.2.6), vérifiez le contenu de install.sh, puis lancez-le. Il prépare les fichiers de configuration.

  • Visitez maintenant l'adresse http://localhost/horde/setup.php3 et répondez aux questions.

    • La plupart des questions ont une réponse par défaut satisfaisante. N'y touchez que si vous avez une idée précise en tête.

    • Sur la page 4, indiquez votre serveur imap. C'est habituellement le votre, mais ça peut être celui de votre fournisseur d'accès à internet, ou même une machine différente de celle qui héberge votre serveur web.

    • Page 4 toujours, la racine des dossiers mail est effectivement souvent mail/. N'hésitez pas à l'utiliser.

    • Si comme moi vous n'avez pas LDAP installé, désactivez tout ce qui concerne LDAP!

    • Page 9, on vous propose l'utilisation d'une base de données. Etant qu'elle a déjà été configurée pour phplib, rien ne vous empêche de l'utiliser aussi pour Imp! Si vous êtes en phase de test, utilisez les valeurs par défaut. Sinon, mieux vaut utiliser des paramètres un peu plus personnels pour un peu plus de sécurité.

  • Avant de finir, désactivez la configuration via le web que vous venez d'effectuer avec la commande sh ./secure.sh. Il ne faudrait pas tout de même que n'importe qui puisse reconfigurer Imp depuis n'importe où!

  • Avant de finir encore, sécurisez la base. Lisez docs/SECURITY et agissez en fonction. Si vous voulez tester sans vous préoccuper de la sécurité, éditez le fichier imp-2.2.6/config/defaults.php3 et indiquez $default->db_security_nag = false; à la place de $default->db_security_nag = true;. Attention, ceci n'est à faire que si vous faites des tests et que vous êtes déconnectés d'internet. Sinon, utilisez le script horde-1.2.6/scripts/database/dbpasswd.sh pour modifier le mot de passe. D'ailleurs, n'hésitez pas à le faire, c'est extrèmement simple, voire plus simple que de rechercher la ligne avec $default->db_security_nag = true;. Enfin, ce fichier docs/SECURITY indique des commandes (chmod et chgrp) à lancer pour encore plus de sécurité, ainsi que quelques lignes pour la configuration du serveur web, à copier/coller dans le fichier httpd.conf. Cela est inutile que je recopie ces lignes ici, je vous laisse faire les copier/coller qui vont bien vous-même chez vous.

4.5. Utilisation: quelques problèmes que vous pouvez rencontrer

Un petit tour sur https://localhost/horde/ pour voir Horde. Mais Imp se trouve ici: http://localhost/horde/imp.

Si vous ne pouvez vous authentifier parce qu'il y a un problème avec la base de données, vérifier d'abord qu'elle a bien été lancée pour accepter des connexions via TCP/IP. Avec postgresql, il faut lancer le postmaster avec l'option -i, c'est-à-dire postmaster -i -D /var/database ou pg_ctl start -o "-i" -D /var/database. Modifiez le script de démarrage dans /etc/init.d suivant vos besoins.

Si vous n'arrivez pas a vous authentifier, que vous avez bien vérifié que le vérouillage des majuscules était désactivé, que votre clavier était bien configuré en AZERTY etc, alors faires encore un tour dans /var/log et regardez le fichier syslog. Si le problème vient du fait que imap n'arrive pas à vous authentifier, vous rencontrez un problème que j'ai eu. Sur ma machine, imap est compilé avec le support MD5. Les login et mots de passe se trouvent dans /etc/cram-md5.pwd, en clair. Le format de ce fichier est le suivant:

<login>TAB<mot de passe>

Maintenant, il ne vous reste plus qu'à tester l'ensemble, avec bien sûr un maximum de navigateurs, mozilla, galeon, konqueror, skipstone, et éventuellement les deux navigateurs propriétaires les plus répandus qui seront peut-être les seuls installés là où vous en aurez peut-être besoin.

5. Squirrelmail

La version utilisée est la version 1.2-rc2. Une version dite release candidate a toutes ses fonctionnalités, et relativement stable puisqu'elle est candidate à la version finale, j'estime qu'on peut la tester sans problème. Par contre, si vous choisissez d'utiliser Squirrelmail par la suite, surveillez d'autant plus attentivement les listes de bugs et de sécurité que la versino 1.2-rc2 n'est pas une version finale.

5.1. Installation

  • Comme avec Horde/Imp, créez un répertoire $APPS/squirrelmail, décompressez Squirrelmail dedans, ce qui vous crée un répertoire $APPS/squirrelmail/squirrelmail-1.2.0-rc2. Faites un lien $APPS/squirrelmail/squirrelmail pointant sur $APPS/squirrelmail/squirrelmail-1.2.0-rc2, puis allez dans ce répertoire.

  • Adaptez la configuration d'apache et php en éditant httpd.conf afin d'ajouter le nouveau répertoire et quelques options:

    <Directory "/mnt/reiser/httpd/apps/squirrelmail">
     php_value session.use_cookies 1
     php_value session.save_path /opt/var/php_sessions
     AllowOverride None
     Order allow,deny
     Allow from all
    </Directory>
    

    Et bien sur, plus bas avec les alias:

     Alias /webmail "$APPS/squirrelmail/squirrelmail"
    

    Relancez apache pour qu'il prenne la nouvelle configuration en compte.

  • Créez un répertoires de données. Chez moi, j'ai choisi $APPS/squirrelmail/data. Il doit appartenir au même utilisateur qu'apache pour que le serveur web sache écrire dans ce répertoire. Habituellement, ceci devrait convenir:

    chown -R nobody $APPS/squirrelmail/data
    chgrp -R nobody $APPS/squirrelmail/data
    
  • Créez un répertoire qui contiendra temporairement les fichiers à attacher aux courriers électroniques. Chez moi à nouveau, j'ai choisi $APPS/squirrelmail/attach. Ce répertoire doit pouvoir être accédé en écriture et exécution par le serveur apache, et par personne en lecture. Ceci devrait convenir:

    chgrp -R nobody $APPS/squirrelmail/attach
    chmod 730 $APPS/squirrelmail/attach
    
  • Une remarque: dans certains cas, les fichiers à attacher aux courriers ne seront pas supprimés. C'est le cas par exemple si un utilisateur attache un fichier à son courrier, mais n'envoie pas le courrier et n'annule pas l'écriture du courrier. Il faut donc régulièrement vider ce répertoire. Une commande dans la crontab peut effectuer ce travail:

    rm `find $APPS/squirrelmail/attach -atime +2 | grep -v "\." | grep -v _`
    

5.2. Configuration

D'abord, allez dans le répertoire config et copiez config_default.php en config.php. Ensuite, le plus simple est de lancer le script conf.pl. Lancez-le depuis le répertoire config, sinon il ne fonctionnera pas!

  • Dans Organization Preferences, mettez la langue par défaut: fr

  • Dans Server Settings, mettez votre nom de domaine. La configuration pour un IMAP local devrait convenir. Si vous utilisez un serveur SMTP distant (chez un fournisseur d'accès à internet), c'est ici qu'il faut le modifier. Le serveur, c'est l'implémentation IMAP dont j'ai parlé dans les prérequis. Uw est l'implémentation de l'université de Washington, mais comme vous pouvez le voir, l'implémentation Cyrus, l'implémentation Microsoft Exchange et l'implémentation Courier sont reconnues. Les autres paramètres devraient convenir par défaut.

  • Folder Defaults: la configuration par défaut devrait convenir.

  • General Options. Le jeu de caractères par défaut est habituellement iso-8859-1 en France. Cependant, iso-8859-15 donne le support de l'euro. Par contre, cela peut entraîner des problèmes de compatibilité quand le support iso-8859-15 n'est pas disponible. Chez moi, j'ai laissé iso-8859-1. Le Data Directory correspond à $APPS/squirrelmail/data. Le Attachment Directory est $APPS/squirrelmail/attach. Le reste est correct par défaut.

  • Les thèmes: faites-vous plaisir!

  • Je n'ai pas activé le support des Address Books via LDAP chez moi. Faites vos tests si vous utilisez LDAP!

  • On peut mettre un message du jour (MOTD: Message Of The Day). Je ne l'ai pas activé chez moi étant donné que je suis seul à utiliser mon système et que je n'ai personne à avertir. Un bricolage amusant serait de rediriger les messages de fortune vers le message du jour de Squirrelmail!

  • Les plugins indiquent les modules que l'on peut installer. On les trouve sur le site de Squirrelmail, et certains sont vraiment intéressants.

  • N'oubliez pas de sauver en quittant!

6. Les autres

Il existe plusieurs autres programmes de courrier électronique avec interface web. Ils en sont tous à des stades plus ou moins avancés. A part Basilix, je n'en ai trouvé aucun autre qui soit utilisé par de grandes structures comme les fournisseurs d'accès à internet ou par des écoles et universités.

Outre les simple interfaces web de courrier électronique, il existe d'autres projets de plus grande envergure, qui sont généralement des gestionnaires de projets. Et le courrier n'y est pas exclus. Rien ne vous empèche donc d'installer un tel logiciel, plus gros, qui répondra peut-être à d'autres besoins par la même occasion?

6.1. Basilix

Basilix est un logiciel à peu près similaire à Imp et à Squirrelmail. Son installation ne devrait pas vous poser de problème si vous avez vaincu Imp et Squirrelmail. Lisez la documentation dans le répertoire doc. L'installation me semble simple, mais un peu longue. En effet, rien n'est automatisé.

Basilix souffre d'un gros défaut par rapport à Imp ou Squirrelmail, c'est qu'il lui faut obligatoirement une base de données MySQL. Alors que Imp est compatible avec plusieurs bases, que Squirrelmail n'en a pas besoin, Basilix dispose de scripts php pour MySQL qu'il serait à mon avis simples à porter pour Basilix.

6.2. phpgroupware

PhpGroupware est plus qu'une interface web pour le courrier électronique. C'est une suite logicielle de groupware. Installez-le comme on a installé Horde/Imp et Squirrelmail (création des répertoires, décompression de l'archive dans ces répertoires, modification de httpd.conf d'apache, et arrêt/relance d'apache). Puis lisez le fichier INSTALL. Pensez d'abord à créer une base avec le nom phpgroupware (CREATE DATABASE phpgroupware;), un utilisateur phpgroupware (CREATE USER phpgroupware;), et changez le mot de passe pour l'utilisateur (ALTER USER phpgroupware WITH PASSWORD 'motdepasse';). Après, tout s'installe comme sur des roulettes de meuble d'ordinateur à roulettes.

Une remarque amusante concernant phpgroupware est que les auteurs utilisent leur propre interface de courrier électronique, mais récemment, ils ont intégré Squirrelmail. Comme quoi...

7. Conclusion

Imp: Une installation lourde, une interface web avec des frames. Mais au delà de ceci, pour l'utilisateur, la convivialité est au rendez-vous, et on a un logiciel qui fait ce qu'on lui demande, ni plus ni moins.

Squirrelmail: Une installation simple, une interface conviviale. Les plus par rapport à Imp sont les thèmes, la couleur suivant les niveau de réponses (voir la capture d'écran) et la non-nécessité d'une base de données. De plus, pour les fonctionnalités manquantes, le système de plugins peut ajouter ce qui manque, mais déjà sans en utiliser, je ne vois pas ce qui pourrait manquer. A noter tout de même que sur mon système où j'étais tout seul, Squirrelmail est légèrement plus lent que Imp.

Basilix: Les plus de Imp avec les plus de Squirrelmail: le support de la base de donnée avec le support des thèmes. Les moins: il manque un support pour PostgreSQL, et par rapport à Squirrelmail, il manque les plugins. Si vous voulez vous lancer dans un projet internet et que Basilix vous plait, il y a deux pistes à explorer: un script de configuration automatique, et le portage des scripts MySQL vers PostgreSQL.

Les suites logicielles de groupwares intègrent le gestionnaire de courrier, donc il ne faut pas les négliger.

Avant de finir cet article, je voudrais signaler que Squirrelmail a changé de coordinateur, ce qui habituellement donne du punch à un projet.

Et pour finir, quelques nom d'animaux: squirrel, c'est l'écureuil en anglais. Et basilix, en anglais correct basilisk et en francais, basilic, c'est un lézard au dos crêté de la famille des iguanes, qui vit en Amérique tropicale, et qui a la partcularité de courir sur deux pattes. C'est aussi un reptile mythique auquel était attribué le pouvoir de tuer par son souffle et son regard.

8. Références:

création est mise à disposition sous un contrat Creative Commons