Le deal : Installer MIMP sur un hébergement LAMP mutualisé
(ce qui signifie notamment ne pas avoir accès root à la machine et avoir une la base de données au nom prédefini)
On a besoin pour faire tourner Mimp de Horde et IMP (http://www.horde.org/mimp/)
Le module IMP sert à la consultation et envoi du courrier.
Pour faire fonctionner cette solution, on a besoin sur le serveur web des outils suivants en état de fonctionnement (suivant la version de MIMP souhaitée il faut bien valider les versions des outils également)
* Apache / PHP
* PEAR : il faut avoir obligatoirement PEAR::DB (pour permettre de stocker dans mysql la conf horde) mais aussi PEAR::Log, PEAR::Mail, PEAR::Mail_Mime, et un certain nombre d’autres (listés par la suite)
* SGBD type MySQL
* Un serveur POP ou IMAP
* Un Serveur SMTP (distant ou local)
Déroulé de l’installation :
On va installer MIMP 3.1.1 avec IMP 4.3 et Horde 3.3
On télécharge les sources :
wget http://ftp.horde.org/pub/horde/horde-3.3.tar.gz
wget http://ftp.horde.org/pub/imp/imp-h3-4.3.tar.gz
wget http://ftp.horde.org/pub/mimp/mimp-h3-1.1.tar.gz
Installation de Horde :
On décompresse les sources de Horde qu’on renomme dans le répertoire horde
tar -xvzf horde-3.3.tar.gz
mv horde-3.3 horde
Puis on upload le dossier horde dans le répertoire de l’hébergement mutualisé (typiquement ~/www/)
On génère les fichiers de conf. de Horde à partir de ceux par défaut.
login@serveur:~/www/horde/config$ for i in *.dist; do cp $i `basename $i .dist`; done
login@serveur:~/www/horde/config$ chmod 777 ../config
login@serveur:~/www/horde/config$ chmod 666 ../config/conf.php
On peut tout d’abord vérifier si tout est ok: http://votreurlserveur/horde/test.php
Configuration de Horde
Pour que les préférences de Horde soient stockées dans la base Mysql par la suite il vous faut créer les tables de cette dernière puis la configurer dans l’administration de Horde
Les scripts par défaut sont dans ~/www/horde/scripts/sql/ et sont nommés typiquement create.typedeSGBD. Pour plus de détail lisez ~/www/horde/scripts/sql/README
Dans notre cas sur un LAMP, il faut customiser le scripts/sql/create.mysql.sql pour tenir compte que l’on a accès à une base déjà créé et qu’on est pas root de cette dernière.
Une fois les petites modifications apportées au regard du nom de la base/utilisateur dont vous disposez, il faut exécuter via phpMyAdmin ou en ligne de commande genre mysql --user=***** --password=***** < modified.create.mysql.sql
Allez ensuite sur http://votreurlserveur/horde/ puis sur Administration et cliquez sur Horde.
Dans l’onglet DATABASE, mettez les paramètres de votre base de données.
Dans l’onglet PREFERENCE SYSTEM : il faut cliquer sur SQL database.
Dans preference driver indiquez horde_prefs comme nom de la table qui gère les préférences (nom de table par défaut)
Pour finir, cliquez sur “generate horde configuration”
Astuce : Logs de Horde : Dans l’onglet “Logging” – si PEAR::Log est activé – vous n’avez qu’à créer un répertoire dans votre espace avec les bons droits (genre 770) pour journaliser les évènements de Horde
Tester Horde
Allez sur http://votreurlserveur/horde/test.php
Vérifiez et corriger tout ce qui est en rouge. Veillez aussi à ce qui est en orange et qui peut s’avérer bloquant (exemple : PEAR::Mail)
Vérifiez que la version de PHP est compatible avec votre version de Horde
Vérifiez aussi que le compteur de Session s’incrémente bien au rechargement de la page.
Si tout est OK passez à la suite.
Si vous avez des soucis avec PEAR, vous avez la souplesse de l’installer dans votre espace mutualisé dans ~/www/horde/lib/. En effet cette arborescence fait partie du PATH pour PEAR et sera prise en compte tout comme /usr/share/pear. Vous pouvez donc installer les modules de PEAR manquants indépendamment de ceux présents globalement sur le serveur mutualisé.
Installation de IMP
Idem on renomme le dossier imp-3* en imp puis on l’upload dans /www/horde/
Même procédure pour créer les tables qui vont bien dans MySQL en modifiant le scripts/sql/imp.sql (genre rajouter un USE nom_database;) et en l’exécutant ( mysql --user=**** --password=*** < modified_imp.sql )
Note : Dans le ~/www/horde/imp/docs/ il y a le fichier INSTALL pour les instructions:
On fait la fameuse manip pour les fichiers de conf :
cd imp/config
for i in *.dist; do cp $i `basename $i .dist`; done
chmod 777 ../config
Enregistrement de l’application sous Horde (utile que si le PATH est différent du classique horde/imp/) :
Editez horde/config/registry.php, trouvez le applications['imp'] et vérifiez les infos.
Configuration de IMP
Il faut éditer le fichier servers.php
Dans le bloc de configuration “$servers’imap’” : mettez les paramètres corrects du type (ceci n’est qu’un ex):
$servers'imap' = array(
'name' => 'IMAP Server',
'server' => 'localhost',
'hordeauth' => true,
'protocol' => 'imap',
'port' => 143,
'folders' => 'INBOX.',
'namespace' => '',
'maildomain' => '',
'smtphost' => 'localhost',
'smtpport' => 25,
'realm' => '',
'preferred' => '',
'dotfiles' => false,
'hierarchies' => array()
);
Seconde étape : Il faut créer le config.php
(!! : notamment avant de créer le compte Admin basé sur l’authentification IMP sinon vous serez coincés et devrez remettre la conf de base ou celle sauvée dans /www/horde/config/ (conf.php.bk ou conf.php.dist) et try again;))
Pour cela il suffit d’aller sous horde puis Administration puis Configuration puis Courrier(Imp).
Configurez tous les autres onglets nécessaires (onglet “Mailer”, etc.)
Puis Générer la configuration.
De façon facultative, vous pouvez éditer le horde/imp/config/prefs.php
Tester la configuration de IMP
Ensuite on peut là aussi tester la conf :
http://votre urlserveur/horde/imp/test.php
Notamment le test avec le serveur mail est souvent instructif et peut vous donner des informations pour corriger votre imp/config/servers.php
remarque d’amélioration possible : Ce test de IMP ne reprend pas notamment les modules PEAR vitaux comme PEAR::Mail et c’est bien dommage pour éviter de chercher la cause d’un dysfonctionnement uniquement à cause de la nom présence d’un tel module sur le serveur.
Installation de MIMP
Là aussi même workflow : une fois uploadé dans horde/mimp/, dans le mimp/docs/ il y a le fichier INSTALL pour les instructions, on fait la petite manip pour générer les fichiers de conf à partir de ceux de base nommés en .dist :
cd mimp/config
for i in *.dist; do cp $i `basename $i .dist`; done
chmod 777 ../config
Et là on génère le fichier de conf avec la procédure classique : (sous horde puis Administration puis Configuration puis MIMP puis ‘générer la conf’)
Installation de DIMP
C’est très simple et identique de la procédure pour MIMP
Création du compte Admin et coupler l’authentification Horde/IMP:
Ce compte sera celui qui aura les droits de l’ administrateur sur Horde.
Allez sur http://votre urlserveur/horde/ puis dans Administration > Configuration/Setup et cliquez sur Horde.
Dans l’onglet AUTHENTICATION remplacez Administrator par votrecompte@installersurleserveur.com.
Dans le menu déroulant sélectionnez “Let a horde application handle authentication”
puis en-dessous sélectionnez IMP, cliquez sur “generate horde configuration”
Normalement vous devez avoir une Fatal Error juste après validation.
Il faut alors vous déconnecter de horde et vous connecter avec le compte que vous avez nommé administrateur et qui est un compte courrier valide sur le serveur défini dans le servers.php de IMP.
On évite ainsi de s’authentifier deux fois pour aller sur IMP.
C’est terminée, votre horde est prêt a usage avec IMP et MIMP voire DIMP
Bibliographie :
http://guides.ovh.com/InstallerHorde
http://wiki.debian.org/Horde
http://www.horde.org/horde/docs/?f=INSTALL.html
http://www.horde.org/imp/docs/?f=INSTALL.html
http://www.horde.org/faq/
