Webmail Squirrelmail
Package Gentoo: squirrelmail
Le webmail permet d'accéder à ses mails à partir de n'importe quel poste équipé d'un navigateur web et connecté à Internet.
Squirrelmail propose :
- une interface agréable et paramétrable pour éditer / visualiser ses mails
- la possibilité d'aller chercher des mails de comptes d'hébergeurs de type wanadoo,free, hotmail, yahoo ...
- la gestion du carnet d'adresse
Installation
Installation et configuration de base
http://www.squirrelmail-fr.org/index.php?page=installation
http://www.squirrelmail.org/wiki/InstallingSquirrelMail
Remarque: On notera <squirrelmail> le répertoire où est installé Squirrelmail. Les plugins installés seront marqués sur fond vert. Les plugins non installés mais digne d'intérêt seront sur fond rouge dans les tableaux.
#emerge squirrelmail
Lorsque le drapeau 'vhosts' est activé dans /etc/make.conf
#webapp-config -I -h <www> -d squirrelmail squirrelmail <version> #cd <squirrelmail>
Le fichier « config/admins » contient la liste des logins des utilisateurs qui ont accès aux options d'administration.
Attention, une ligne ne doit contenir qu'un seul login et le fichier doit se terminer par un saut de ligne.
La configuration du serveur se fait par la commande:
#./config/conf.pl
SquirrelMail Configuration : Read: config.php (1.4.0) --------------------------------------------------------- Main Menu -- 1. Organization Preferences 2. Server Settings 3. Folder Defaults 4. General Options 5. Themes 6. Address Books 7. Message of the Day (MOTD) 8. Plugins 9. Database 10. Languages D. Set pre-defined settings for specific IMAP servers C Turn color on S Save data Q Quit Command >>
« 1. Organization Preferences » définit des paramètres du type le nom de l'organisation, son logo, ... »
« 2. Server Settings » les paramètres de messagerie:
1. Domain : livois.com 2. Invert Time : false 3. Sendmail or SMTP : SMTP A. Update IMAP Settings : localhost:143 (courier) B. Update SMTP Settings : localhost:25
Il est intéressant de définir en A le type de serveur IMAP utilisé.
« D. Set pre-defined settings for specific IMAP servers » Choisir le serveur qui convient (courier en l'occurence).
Choix du thème par défaut
« Themes » permet de définir le thème par défaut pour tous les utilisateurs.
Choix de la langue
« Languages » permet le choix de la langue.
Aller sur http://www.squirrelmail.org/download.php
Télécharger les fichier de langues qui correspond(ex fr_FR...) et le déposer dans le répertoire squirrelmail.
#cd <squirrelmail> #tar jxvf fr_FR... #./config/conf.pl
Choisir « 10. Languages »
Language preferences 1. Default Language : fr_FR 2. Default Charset : iso-8859-1 3. Enable lossy encoding : false
Tester la configuration
La page web <squirrelmail>/src/configtest.php permet de tester la configuration.
Naviguer sur <www-squirrelmail> avec un navigateur ...
Squirrelmail 1.5
* You must edit the following configuration files to setup your server. * Note that not all of them may be present depending on USE flags. * * config/config.php * plugins/retrieveuserdata/config.php * plugins/virus_scan/config.php * plugins/gpg/gpg_local_prefs.txt * plugins/ldapuserdata/config.php * plugins/show_ssl_link/config.php * plugins/secure_login/config.php * * You should also create the file 'config/admins' * containing the users who should have access to administrative options. * Put each login on its own line, and be sure to leave a newline at the * end of the file. * * You can use the console based configuration tool by executing: * cd config; perl conf.pl
Ajout de fonctionnalités
http://www.squirrelmail.org/plugins.php
Exemple d'installation d'un plugin
Le répertoire de plugins se trouve dans <squirrelmail>/plugins/
Ex: Change LDAP Password
#cd <squirrelmail>/plugins/ #tar zxvf change_ldappass-<version>.tar.gz #cd change_ldappass #cp config.php.sample config.php #vi config.php # ../config/conf.pl (choisir 8 puis choisir le n° du plugin à activer)
Les plugins de gestion des mails
Nom du plugin | Description |
---|---|
msg_flags |
Message Flags & Icons: ce plugin apporte un réel plus esthétique avec l'apport d'icônes pour les dossiers et les messages. Attention, il faut patcher squirrelmail: patch -p0 < ./msg_flags-squirrelmail-1.4.3a.diff |
autocomplete |
Autocomplete: pendant l'écriture du nom d'un destinataire, squirrelmail recherche dans le carnet d'adresse et propose une complétion du nom – fonctionne pour IE. |
view_as_html |
View As HTML:permet d'afficher les messages en mode html. |
unsafe_image_rules |
Unsafe Image Rules: dans l'affichage html, les images sont blockées pour éviter de cliquer sur des liens à spam. Ce plugin permet d'autoriser l'affichage des images selon des règles plus ou moins strictes. |
html_mail |
HTML Mail: permet aux utilisateurs IE5.5 et mozilla 1.4 de rédiger des messages en html. |
preview_pane |
Preview Pane : Donne lapossibilité de voir le contenu d'un message sous la liste de message, comme le propose des outils tels qu'outlook et thunderbird. Attention, il faut patcher squirrelmail: patch -p0 < plugins/preview_pane/patches/preview_pane_squirrelmail-1.4.3.diff |
quota_usage |
Quota Usage: View quota and current usage |
G/PGP Encryption Plugin: Add gpg encryption functionality to SM | |
S/MIME verification: This plugin does verification of s/mime signed messages |
« Popper » des mails d'autres hébergeurs
Plugin mail fetch
Nom du plugin | Description |
---|---|
mail_fetch | Mail Fetch: Récupère les mails d'autre comptes POP. |
Ce plugin permet aux utilisateurs de récupérer leurs mails des comptes dont l'hébergeur propose un service POP (free, wanadoo, gmail).
Freepopsd
Package Gentoo: freepopsd
Cet programme de récupére les mails des webmails les plus connus (hotmail, yahoo, mail.com) à partir d'une requête POP. Les paramètres basiques sont définis dans /etc/conf.d/freepopsd. Il est possible de changer:
- le port du serveur POP (2000 par défaut),
- l'adresse d'écoute (bind address),
- le fichier de log.
Ainsi, avec l'utilisation du plugin mail_fetch, les clients peuvent recevoir les mails des autres webmails en indiquant le login/mot de passe et l'adresse du serveur pop (localhost:2000).
Les webmail évoluant vite, il est souvent nécessaire d'utiliser la dernière version. Par exemple, en utilisant le keyword ~x86 sous Gentoo:
<licode file=/etc/portage/package.keywords> net-mail/freepops ~x86 </licode>
Pour accéder à yahoo.fr, il faut rajouter une ligne dans config.lua (version 0.9.6)
<licode file=/etc/freepops/config.lua> -- yahoo freepops.MODULES_MAP["yahoo.com"] = {name="yahoo.lua"} freepops.MODULES_MAP["yahoo.fr"] = {name="yahoo.lua"} </licode>
Mise a jour des plugins lua:
#freepops-updater-dialog #freepopsd -e updater.lua php fetch_modules_metadata #freepopsd -e updater.lua php fetch_module hotmail
Les carnets d'adresses
Squirrelmail
#./config/conf.pl
Choisir Address Books (6)
Address Books 1. Change LDAP Servers > localhost 2. Use Javascript Address Book Search : true 3. Global file address book : global.abook 4. Allow writing into global file address book : true
Choisir Change LDAP servers (1) pour ajouter ou retirer des annuaires LDAP.
Pour proposer aux utilisateurs un annuaire commun, créer le fichier global.abook dans /data et accessible en écriture à apache.
L'option 4 permet d'autoriser les utilisateurs à ajouter et supprimer des adresses dans cet annuaire. Attention à la sauvegarde au cas où un utilisateur commet une erreur!
Les plugins
Nom du plugin | Description |
---|---|
address_add |
Address Add: permet d'ajouter une adresse dans le carnet d'adresse personnel en rajoutant un lien en dessous du champ from. |
abook_take |
Address Take: bouton ajouter à la fin du mail afin d'ajouter l'adresse dans lecarnet d'adresse. Je préfère le plugin address_add. |
abook_import_export |
Addressbook Import-Export: permet l'import et l'export de carnet d'adresse au format CSV. |
ldifimport |
LDIF Address Book Import: importe les carnets d'adresse au format LDIF. |
ldapquery |
LDAP Query plugin: permet lesrecherches dans un annuaire LDAP. Attention, ce plugin nécessite que les utilisateurs fassent partie d'un objectclass « posixaccount ». Editer config.php pour éditer les champs affichés et les requêtes possibles. |
Autres fonctionnalités
Nom du plugin | Description |
---|---|
login_auth |
HTTP Authentication: Permet à l'utilisateur d'arrriver directement sur son compte après une authentification HTTP, sans passer par la page d'authentification de squirrelmail. |
change_ldappass |
Change LDAP Password: Permet à l'utilisateur de changer son mot de passe paramétré dans LDAP. Dans config.php: indiquer les attributs qui du mot de passe et l'authentification LDAP si nécessaire |
vlogin |
Virtual Host Login: Permet l'hébergement d'un seul squirrel mail pourplusieurs domaines |
calendar
calendar_file_backend |
Shared Calendars: Apporte la fonctionnalité de calendrier partagé. (remplace le calendrier par défaut) Configuration: il est nécessaire d'installer un backend (file ou sql). enlever le calendrier par défaut: mv calendar calendar.orig tar zxvf shared_calendars cd calendar/data cp config.php.sample config.php |
Optimisation des performances
http://www.squirrelmail.org/wiki/find/SquirrelMailPerformance
Gestion du tri par le serveur IMAP
Si le serveur IMAP gère le « threading » et le tri , il faut les activer. Ce sera plus efficace que le code PHP de Squirrelmail.
Le test suivant permet de vérifier, la gestion de ces fonctionnalités par le serveur IMAP.
#telnet imapserver.example.com imap
* OK 2 capability * CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE AUTH=PLAIN STARTTLS 2 OK CAPABILITY completed
Ici le serveur courier-imap gère les « THREAD » et le « SORT ».
On peut donc changer les options 10 et 11 du menu 4 « General Options ».
4. General Options 10.Allow server thread sort: false (default) -> true 11. Allow server-side sorting: false (default) -> true
Désactiver le plugin Filter
Filter Plugin - The SquirrelMail Filter plugin is a real performance hit. Use it only when you can't use server-side filtering - While you can use the Filter plugin to sort messages into different folders, it's (harder to set up but) more efficient to do the filtering outside PHP at mail delivery. There are a million different ways to do this, each dependent upon your configuration. Procmail and SIEVE may be worth looking into. Check the Plugins section of this site under Filters & Spam. http://www.squirrelmail.org/plugins_category.php?category_id=3
Garder un cache des connexions avec IMAPProxy
IMAP Proxy - this is a caching IMAP proxy server. Because SquirrelMail is not stateful, it must reconnect to the IMAP server on every page. The caching server sits in between and keeps the connection open, thus eliminating the time necessary to establish a new connection. It does this by intercepting the LOGOUT command and keeping the connection logged in. To download the free open-source IMAP Proxy, visit http://www.imapproxy.org
Package Gentoo : up-imapproxy
Accélerateur de pages PHP
http://meta.wikimedia.org/wiki/PHP_caching_and_optimization
Package Gentoo: dev-php4/eaccelerator
EAccelerator - http://eaccelerator.sourceforge.net/ This is a fork of the old Turck MMCache project which is now discontinued. Improvements have been made so this is more stable and also supports PHP5 now. Version 0.9.3 at the time of this update is stable and has decreased page time and load on my SM server greatly. This is a GPL project.
Copyright
© 2006 Christophe de Livois
Vous avez l'autorisation de copier, distribuer et/ou modifier ce document suivant les termes de la GNU Free Documentation License, Version 1.2 ou n'importe quelle version ultérieure publiée par la Free Software Foundation; sans section invariante, sans page de garde, sans entête et sans page finale. Pour plus d'informations consulter le site de l'APRIL. |