
Squirrelmail, de l’installation de votre webmail
Posté le 13 janvier 2004 :: Logiciels
Vous souhaitez installer votre propre serveur de mail au sein de votre entreprise, équipé d’une interface web permettant à vos collaborateurs d’accéder et de gérer leur courrier électronique à distance ? C’est ce que rend possible SquirrelMail. Rapide et stable, facile à installer, extensible par plugins à volonté, il vous permettra de créer votre propre webmail. Un article signé Laurent DUBETTIER-GRENIER. (Ndlr : si vous ne pouvez lire cette information, cliquez sur troller)
Un webmail est une interface web permettant la lecture de votre courrier électronique. Vous avez certainement déjà utilisé ce type d’interface, si votre adresse électronique est hébergée par la Poste, par exemple. L’intérêt ? Pouvoir accéder de n’importe où à vos messages (chez vous, au travail, dans un cybercafé...). SquirrelMail n’est pas le seul webmail disponible : IMP, basé sur le projet Horde est une autre possibilité, très puissante, utilisée pour le webmail de Free. Mais SquirrelMail est beaucoup plus simple à installer, configurer et étendre.
L’objet de cet article et d’expliquer la procédure d’installation et de configuration d’une interface graphique de messagerie basée sur SquirrelMail, sur un serveur Linux Mandrake 9.2, au sein d’un réseau local d’entreprise. Le hostname du serveur est mail.exemple.net, son adresse IP 192.168.0.1. Pour configurer correctement ce qui suit, il faut être connecté au serveur en tant qu’administrateur (root). Cet article ne gère pas tous les éventuels problèmes de sécurité liés à la mise en place de ce service.
Pour installer SquirrelMail, il faut un serveur Linux, sur lequel sont installés, entre autres : Apache2, Apache2-mod_php, php-ini, Apache2-mod_ssl, imap, postfix, perl, xinetd, ispell. L’installation de Perl permet de configurer ultra-rapidement squirrelMail grâce à une interface développé dans ce langage, et ispell permet le fonctionnement correct du correcteur orthographique squirrelspell intégré. MySQL n’est pas requis, sauf pour certains plugins. Enfin pour un fonctionnement correct, les navigateurs des postes qui utiliseront votre webmail doivent accepter les cookies.
Vous devez avoir les services httpd, postfix, xinetd, imap activés.
Pour visionner les services fonctionnant :
chkconfig —list | less.
Pour mettre en marche un service (exemple avec apache) :
service httpd
start.
Pour faire en sorte qu’à chaque démarrage de votre poste, le service Apache
fonctionne :
chkconfig apache on.
Il faut notamment veiller à bien lancer le service imap, dépendant de xinetd
:
chkconfig imap on
service xinetd restart.
Premièrement, vérifier que PHP est installé et fonctionne correctement en créant
un fichier de test dans le répertoire /var/www/html :
vi phpinfo.php
Insérer les instructions php suivantes dans ce fichier :
Puis tester le fonctionnement de php :
lynx http://127.0.0.1/phpinfo.php
Vous devez obtenir une page donnant les caractéristiques complète de votre installation
de PHP et de ces modules additionnels. Si cela fonctionne correctement, vous
pouvez effacer le fichier phpinfo.php.
Il faut ensuite configurer /etc/php.ini, notamment :
session.use_cookies = 1
file_uploads = On (pour autoriser les fichiers attachés)
upload_max_filesize = 2M (règle la taille maxi des fichiers attachés)
register_globals=off (il est placé par défaut sur On par la distribution
Mandrake)
expose_php = Off (sécurité : n’expose pas le fait que
votre serveur héberge PHP)
Le paramètre session.save_path doit pointer vers un répertoire lisible
uniquement par le serveur web (/var/squirrel/session par exemple) :
mkdir -p /var/squirrel/session
chgrp apache /var/squirrel/session
chown apache /var/squirrel/session
chmod 730 /var/squirrel/session
Redémarrer le serveur Apache :
service httpd restart
Pour installer SquirrelMail, il faut télécharger la dernière version (squirrelmail-1.4.2.tar.gz
: 2.74 Mo), la décompresser dans un répertoire lisible par le serveur web
(/var/www/html/ par exemple), changer le nom du répertoire (mv
squirrelmail-1.4.2 squirrelmail), créer les deux répertoires de stockage
des données et des fichiers joints :
mkdir -p /var/squirrel/data
chown apache /var/squirrel/data
chgrp apache /var/squirrel/data
mkdir -p /var/squirrel/attachement
chgrp apache /var/squirrel/attachement
chmod 730 /var/squirrel/attachement
Ceci cause un problème : si quelqu’un prépare un mail avec pièce jointe, mais
interromps son action avant de l’expédier, les pièces jointes resteront éternellement
dans le répertoire /var/squirrel/attachement. Il faut donc prévoir
une tâche cron qui supprime l’ensemble des fichiers de ce répertoire à intervalle
régulier, en espérant que personne n’est en train d’envoyer une pièce jointe
au même moment... Voici un exemple permettant de supprimer tous les jours à
23H15 le contenu du répertoire /var/squirrel/attachement :
editer le fichier crontab :
crontab -e
rentrer la ligne suivante :
15 23 * * * /root/rm_attachement.sh
le fichier rm_attachement.sh, executable (chmod +x rm_attachement.sh),
contient les lignes suivantes :
cd /var/squirrel/attachement
rm -f *
Puis il faut alors configurer squirrelmail soit manuellement en renommant
le fichier config_default.php en config.php (répertoire /var/www/html/squirrelmail/config)
puis en l’éditant pour modifier ses paramètres, soit, beaucoup plus convivial,
en utilisant le petit script perl conf.pl situé dans ce même répertoire
(nécessite que le paquetage perl soit installé). Pour le lancer : ./conf.pl
(point slash conf.pl). Un menu comportant 9 options apparaît, qui permet de
configurer complètement SquirrelMail. Quelques modifications à effectuer :
Organization Preferences / Default Language : remplacer en_US par fr_FR
Server Settings / Domain : exemple.net
General Options / Data Directory : /var/squirrel/data
General Options / Attachment Directory : /var/squirrel/attachement
Themes : pour choisir celui qui vous plaît !
Plugins : pour installer un plugins, parmi ceux disponibles (Available Plugins)
S sauve ces modifications, Q quitte l’application de configuration.
Puis, à partir d’un navigateur sur un poste distant, se rendre à l’url
http://192.168.0.1/squirrelmail/
ou
http://mail.exemple.net/squirrelmail
si vous avez un serveur DNS correctement configuré. L’interface de squirrelmail
apparaît.
Remarque : Si vous n’avez pas de serveur DNS, avec un poste Windows distant, il faut configurer le fichier hosts situé dans le répertoire C :\WINNT\SYSTEM32\DRIVERS\ETC , et rajouter la ligne : 192.168.0.1 mail.exemple.net. Sur un poste Linux distant, il faut rajouter la même ligne dans le fichier /etc/hosts.
Une fois que tout est installé et en état de fonctionnement, vous aurez peut-être
envie d’étendre les fonctionnalités de votre interface graphique de messagerie.
Pour cela, il faut installer un ou plusieurs plugins, et le choix est vaste...
Il en existe plus de 170 différents ! Par défaut, 16 plugins sont déjà installés
:
Abook_take : pour récupérer facilement l’adresse de l’expéditeur d’un mail dans
votre carnet d’adresse.
Administrator : pour administrer à distance la configuration de SquirrelMail.
bug_report : pour reporter facilement un bug à l’équipe de développement.
Calendar : un calendrier simple.
Delete_move_next : pour effacer et déplacer facilement vos mails.
Filters : pour filtrer vos mails (antispam)
Fortune : pour insérer une devise dans vos mails.
Info : pour dépanner le serveur IMAP (ne pas activer en usage normal !)
Listcommands : ajoute une ligne à tout mail en provenance d’une mailing-list,
permettant notamment de se dés-inscrire ou de visionner les archives de la mailing-list.
Mail_fetch : pour récupérer vos mails sur un serveur pop.
Message_details : pour accéder à la source du mail reçu.
Newmail : ajoute une musique vous signalant un nouveau message reçu.
Sent_subfolders : pour gérer les sous répertoires.
Spamcop : pour rapidement signaler à spamcop.net un spammeur.
Squirrelspell : un dictionnaire basé sur ispell.
Translate : Envoi votre message vers un serveur de traduction en une autre langue.
Pour installer un plugins, c’est plus ou moins simple : certains requièrent l’installation de paquetages supplémentaires pour fonctionner (serveur de base de données MySQL, par exemple), d’autres s’installent en quelques instants. Par exemple, le plugins nommé "Show Username and IP" permet d’afficher l’adresse IP et le nom d’utilisateur de la personne connectée au webmail. Pour l’installer, il suffit de télécharger le paquetage (show_user_and_ip-2.2.3.tar), de le copier dans le répertoire plugins (/var/www/html/squirrelmail/plugins), de le décompresser (tar xvf show_user_and_ip-2.2.3.tar) et de l’activer par l’intermédiaire de l’interface conf.pl (rubrique plugins). On peut difficilement faire plus simple !
Seul les utilisateurs ayant un compte sur votre serveur de mail auront la possibilité
d’utiliser SquirrelMail. Pour créer un compte uniquement destiné à la messagerie,
sans possibilité de connections sur votre serveur, il faut d’abord créer un
groupe d’utilisateur dédié à l’utilisation de SquirrelMail :
groupadd squirrelmail
Puis créer chaque utilisateur par l’instruction suivante :
useradd -c "nom_utilisateur ou commentaire" -s /bin/false -g squirrelmail
nom_utilisateur
Enfin définir le mot de passe pour chaque compte nouvellement créé :
passwd nom_utilisateur
Pour tester le fonctionnement, essayer d’envoyer des mails à un autre compte
et à vous même. Utiliser d’abord une adresse mail du type utilisateur@mail.exemple.net.
Pour utiliser une adresse du type utilisateur@exemple.net, il faut
configurer Postfix. Sinon, lorsque machin@mail.exemple.net envoie un
mail à truc@mail.exemple.net, l’adresse de réponse est machin@exemple.net.
Si truc essaie de répondre à machin, Postfix ne peut envoyer
la réponse. Pour que cela fonctionne correctement, il faut rajouter (ou décommenter)
les lignes suivantes du fichiers /etc/postfix/main.cf :
myorigin = $mydomain
mydestination = $myhostname, localhost.$mydomain, $mydomain
Et voilà, grâce à SquirrelMail, en quelques dizaines de minutes, vous avez maintenant un serveur de mail équipé d’une interface de type webmail complète ! Il n’y a plus maintenant qu’à convaincre votre hiérarchie à acheter le serveur nécessaire à son installation, et à expliquer à vos collaborateurs comment utiliser l’interface de SquirrelMail...
Liens :
SquirrelMail : http://www.squirrelmail.org
Le portail francophone (dans sa toute nouvelle version 3) : http://www.squirrelmail-fr.org
Le projet Horde (développe un autre webmail : IMP) : http://www.horde.org
Configurer une interface graphique de messagerie avec Horde et IMP : http://www.lea-linux.org/reseau/web...
05/01/2004
Laurent DUBETTIER-GRENIER
(Vous souhaitez reproduire cet article ?)
A la Une
SUSE Linux Enterprise Server pour VMware
On parle de virtualisation dans le dernier Linux Pratique
VMware lance vCloud Director et VMware vShield
VMworld 2010 : Quest Software et Virtual Computer font alliance
Citrix OpenCloud se voit enrichi
Quest et la virtualisation des postes de travail
Social CRM Software Award pour le module cosmic d’update software
XBRL : formations à Paris en septembre et novembre
Archos peaufine sa gamme de tablettes Android
Les Aéroports de Lyon refondent leur site Internet en Open Source
L’April et Framasoft joignent leurs efforts pour plus d’accessibilité... libre !
Quest Identity Manager arrive sous Unix/Linux/Mac
Après SpringSource, Nick White est engagé par Talend
VMware lance la plateforme applicative dédiée au cloud
Novell fait la promotion de WorkloadIQ
Ubuntu Tweak (0.5.6) en mode restauration
fise, un nouveau moteur sémantique RESTful et libre
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |> |...
















