« Webmail » : différence entre les versions

De Lea Linux
Aller à la navigation Aller à la recherche
(conversion de la documentation originale de Léa par HTML::WikiConverter)
Aucun résumé des modifications
 
(3 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
[[Category:Services de messagerie]]
= Interface graphique de messagerie =
= Interface graphique de messagerie =


<div class="leatitre">Interface graphique de messagerie</div><div class="leapar">par [mailto:laurent_dot_dubettier-grenier_at_laposte_dot_net Laurent DUBETTIER-GRENIER]</div><div class="leadesc">Installer une interface graphique de messagerie IMP</div>
par [mailto:laurent_dot_dubettier-grenier_at_laposte_dot_net Laurent Dubettier-Grenier]
----
 
Installer une interface graphique de messagerie IMP


== Introduction ==
== Introduction ==
Ligne 23 : Ligne 23 :
== Pré-requis ==
== Pré-requis ==


Pour suivre les instructions ci-dessous, vous aurez besoin d'un minimum de connaissances relatives à Linux, notamment sur l'usage de la console, si vous installez un serveur de messagerie minimum (sans interface graphique type KDE ou Gnome).<br /> Nous utiliserons un serveur Mandrake Linux 9.1, d'adresse IP 192.168.10.1. Je suppose qu'Apache, Mysql, Php et Postfix sont installés et fonctionnent correctement. Sendmail est éventuellement utilisable à la place de Postfix.<br /> Le nom de domaine du serveur est : <code>mail.example.com</code><br /> Vous pouvez vérifier le nom de domaine votre machine avec l'instruction : <code>hostname</code><br /> Les paquetages (et leurs dépendances) suivants doivent être présents :
Pour suivre les instructions ci-dessous, vous aurez besoin d'un minimum de connaissances relatives à Linux, notamment sur l'usage de la console, si vous installez un serveur de messagerie minimum (sans interface graphique type KDE ou Gnome).<br /> Nous utiliserons un serveur Mandrake Linux 9.1, d'adresse IP 192.168.10.1. Je suppose qu'Apache, Mysql, Php et Postfix sont installés et fonctionnent correctement. Sendmail est éventuellement utilisable à la place de Postfix.<br /> Le nom de domaine du serveur est : <div class="code">mail.example.com</div><br /> Vous pouvez vérifier le nom de domaine votre machine avec l'instruction : <div class="code">hostname</div><br /> Les paquetages (et leurs dépendances) suivants doivent être présents :


* apache2-2.0.44-11mdk
* apache2-2.0.44-11mdk
Ligne 42 : Ligne 42 :
=== Quelques rappels ===
=== Quelques rappels ===


* Pour visionner les paquetages installés sur votre système : <code>rpm -qa | less (Taper q pour quitter)</code><br /> Si vous n'avez pas tout, il faut installer les paquetages manquants : <code>rpm -Fvh nom_du_paquetage.rpm pour mettre à jour un paquetage déjà installé<br /> rpm -ivh nom_du_paquetage.rpm pour installer un nouveau paquetage </code>
* Pour visionner les paquetages installés sur votre système : <div class="code">rpm -qa | less</div> (Taper q pour quitter)
* Vous devez avoir les services httpd, mysql, postfix, xinetd activés. Pour visionner les services fonctionnant :<br /><code>chkconfig --list | less</code>
 
* Pour mettre en marche un service (exemple avec apache) :<br /><code>service httpd stop (Arrêt d'Apache)<br /> service httpd start (Mise en marche d'Apache)<br /> service httpd restart (Redémarrage d'Apache)</code>
Si vous n'avez pas tout, il faut installer les paquetages manquants : <div class="code">rpm -Fvh nom_du_paquetage.rpm pour mettre à jour un paquetage déjà installé<br /> rpm -ivh nom_du_paquetage.rpm pour installer un nouveau paquetage </div>
* Pour faire en sorte qu'à chaque démarrage de votre poste, le service Apache fonctionne :<br /><code>chkconfig apache on</code>  
* Vous devez avoir les services httpd, mysql, postfix, xinetd activés. Pour visionner les services fonctionnant :<br /><div class="code">chkconfig --list | less</div>
* Pour avoir une documentation sur une instruction Linux :<br /><code>man instruction (exemple : man chkconfig)</code>.<br />A propos de la configuration des services, consulter également l'article sur la [../admin/daemons.php3 gestion des démons].
* Pour mettre en marche un service (exemple avec apache) :
* Pour savoir où vous vous situez dans l'arborescence de linux : <code>pwd</code>
Arrêt d'Apache : <div class="code">service httpd stop</div>
* Enfin, n'oubliez pas que l'appui sur la touche de tabulation "tab" permet de compléter un nom : <br /><code>cd /v "tab" donne automatiquement cd /var</code>
Mise en marche d'Apache : <div class="code">service httpd start</div>
Redémarrage d'Apache : <div class="code">service httpd restart</div>
* Pour faire en sorte qu'à chaque démarrage de votre poste, le service Apache fonctionne :<br /><div class="code">chkconfig apache on</div>  
* Pour avoir une documentation sur une instruction Linux :<br /><div class="code">man instruction</div> (exemple : man chkconfig).<br />A propos de la configuration des services, consulter également l'article sur la [../admin/daemons.php3 gestion des démons].
* Pour savoir où vous vous situez dans l'arborescence de linux : <div class="code">pwd</div>
* Enfin, n'oubliez pas que l'appui sur la touche de tabulation "tab" permet de compléter un nom : <br /><tt>cd /v "tab"</tt> donne automatiquement <tt>cd /var</tt>


== Configurer Apache ==
== Configurer Apache ==
Ligne 70 : Ligne 75 :
<div class="code">DocumentRoot /var/www/html/mail<br /> ServerName mail.example.com</div>
<div class="code">DocumentRoot /var/www/html/mail<br /> ServerName mail.example.com</div>


Modifier le fichier /etc/httpd/conf/commonhttpd.conf : <code><directory /var/www/html/mail></code>
Modifier le fichier /etc/httpd/conf/commonhttpd.conf : <div class="code"><directory /var/www/html/mail></div>


Ajouter la ligne suivante dans le fichier /etc/hosts : <code>92.168.10.1 mail.example.com</code>
Ajouter la ligne suivante dans le fichier /etc/hosts : <div class="code">92.168.10.1 mail.example.com</div>


Remarque : une autre méthode consiste à configurer un '''VirtualHost'''.
Remarque : une autre méthode consiste à configurer un '''VirtualHost'''.
Ligne 86 : Ligne 91 :
<div class="code"> service httpd configtest<br /> service httpd restart</div>
<div class="code"> service httpd configtest<br /> service httpd restart</div>


Créer un fichier temporaire : <code>touch /var/www/html/mail/essai.html</code>
Créer un fichier temporaire : <div class="code">touch /var/www/html/mail/essai.html</div>


Puis à l'aide d'un navigateur, aller à l'adresse Internet : <code>http://mail.example.com/essai.html</code>
Puis à l'aide d'un navigateur, aller à l'adresse Internet : http://mail.example.com/essai.html.


Remarque : On peut utiliser un navigateur texte comme Lynx pour tester la configuration, si l'on n'a pas installé d'interface graphique sur le serveur ou si aucun poste distant n'est connecté au serveur : <br /><code>lynx mail.example.com/essai.html</code>
Remarque : On peut utiliser un navigateur texte comme Lynx pour tester la configuration, si l'on n'a pas installé d'interface graphique sur le serveur ou si aucun poste distant n'est connecté au serveur : <br /><div class="code">lynx mail.example.com/essai.html</div>


== Configurer Horde ==
== Configurer Horde ==
Ligne 128 : Ligne 133 :
<div class="code"><nowiki># cd /var/www/html/mail/horde/scripts/db</nowiki><br /> mysql --user=root --password < mysql_create.sql</div>
<div class="code"><nowiki># cd /var/www/html/mail/horde/scripts/db</nowiki><br /> mysql --user=root --password < mysql_create.sql</div>


Le mot de passe demandé est celui d'accès root à MySQL<br /> Redémarrer MySQL : <code><nowiki># service mysql restart</nowiki></code>
Le mot de passe demandé est celui d'accès root à MySQL<br /> Redémarrer MySQL : <div class="code"><nowiki># service mysql restart</nowiki></div>


Tester si vous pouvez vous connecter à la base :
Tester si vous pouvez vous connecter à la base :
Ligne 212 : Ligne 217 :
<u>Remarque 2</u> : Vous pouvez aussi modifier le fichier 'trailer.txt' situé dans /horde/imp/config/. Ce fichier vous permet d'ajouter un texte à la fin de tous les mails qui seront envoyés par IMP. Par défaut, le texte suivant est ajouté à tous les messages : This mail sent through IMP: http://horde.org/imp/. Si vous ne voulez rien ajouter, effacer tout ce qu'il y a dans ce fichier.
<u>Remarque 2</u> : Vous pouvez aussi modifier le fichier 'trailer.txt' situé dans /horde/imp/config/. Ce fichier vous permet d'ajouter un texte à la fin de tous les mails qui seront envoyés par IMP. Par défaut, le texte suivant est ajouté à tous les messages : This mail sent through IMP: http://horde.org/imp/. Si vous ne voulez rien ajouter, effacer tout ce qu'il y a dans ce fichier.


<div class="warning">VERIFICATION DE SECURITE<br /> Vous ne devez pas pouvoir accéder avec un navigateur à :<br /><code>http://mail.example.com/horde/config/</code></div>
<div class="warning">VERIFICATION DE SECURITE<br /> Vous ne devez pas pouvoir accéder avec un navigateur à : http://mail.example.com/horde/config/</div>


== Configurer Turba ==
== Configurer Turba ==
Ligne 344 : Ligne 349 :
<div class="code">// utiliser MySQL pour stocker les données de Kronolith<br /> $conf['calendar']['driver'] = 'sql'; <br /> $conf['calendar']['params']['phptype'] = 'mysql';<br /> $conf['calendar']['params']['hostspec'] = 'localhost';<br /> $conf['calendar']['params']['username'] = 'horde';<br /> $conf['calendar']['params']['password'] = 'mon_mot_de_passe';<br /> $conf['calendar']['params']['database'] = 'horde';<br /> $conf['calendar']['params']['table'] = 'kronolith_events';<br /> $conf['menu']['apps'] = array('imp');</div>
<div class="code">// utiliser MySQL pour stocker les données de Kronolith<br /> $conf['calendar']['driver'] = 'sql'; <br /> $conf['calendar']['params']['phptype'] = 'mysql';<br /> $conf['calendar']['params']['hostspec'] = 'localhost';<br /> $conf['calendar']['params']['username'] = 'horde';<br /> $conf['calendar']['params']['password'] = 'mon_mot_de_passe';<br /> $conf['calendar']['params']['database'] = 'horde';<br /> $conf['calendar']['params']['table'] = 'kronolith_events';<br /> $conf['menu']['apps'] = array('imp');</div>


Remarque : mon_mot_de_passe est à remplacer par le mot de passe de la base horde mysql choisi au paragraphe [#configurer mysql Configurer mysql]
Remarque : mon_mot_de_passe est à remplacer par le mot de passe de la base horde mysql choisi au paragraphe « Configurer mysql ».


=== Installer Mnemo ===
=== Installer Mnemo ===
Ligne 417 : Ligne 422 :


En tant qu'administrateur, il vous est maintenant possible de configurer plus finement votre interface. Beaucoup d'informations intéressantes sont disponibles dans la [http://www.horde.org/faq/admin/ FAQ administrateur] de Horde. Et en cas de problème insoluble, après avoir consulté la documentation présente avec chaque paquetage (dans le répertoire /docs associé), le site Horde et les FAQ, il y a encore la possibilité de poser vos questions sur la [http://www.horde.org/mail/ mailing-list] de Horde...
En tant qu'administrateur, il vous est maintenant possible de configurer plus finement votre interface. Beaucoup d'informations intéressantes sont disponibles dans la [http://www.horde.org/faq/admin/ FAQ administrateur] de Horde. Et en cas de problème insoluble, après avoir consulté la documentation présente avec chaque paquetage (dans le répertoire /docs associé), le site Horde et les FAQ, il y a encore la possibilité de poser vos questions sur la [http://www.horde.org/mail/ mailing-list] de Horde...
<br/>
<br/>
'''<b>[[Réseau|@ Retour à la rubrique Réseau]]</b>'''
<br/>


<div class="merci">Cette page est issue de la documentation 'pré-wiki' de Léa a été convertie avec HTML::WikiConverter. Elle fut créée par Laurent DUBETTIER-GRENIER le 05/05/2004.</div>
<div class="merci">Cette page est issue de la documentation 'pré-wiki' de Léa a été convertie avec HTML::WikiConverter. Elle fut créée par Laurent DUBETTIER-GRENIER le 05/05/2004.</div>


= Copyright =
= Copyright =
Copyright &copy; 05/05/2004, Laurent DUBETTIER-GRENIER
Copyright &copy; 05/05/2004, Laurent Dubettier-Grenier
{{CC-BY-NC-SA}}
{{CC-BY-NC-SA}}
[[Catégorie:Réseau]]

Dernière version du 16 décembre 2023 à 16:13

Interface graphique de messagerie

par Laurent Dubettier-Grenier

Installer une interface graphique de messagerie IMP

Introduction

Ce guide est basé sur l'excellent travail original en anglais de Olivier Schulze L, site web http://www.geocities.com/oliversl/imp/, pour distribution RedHat 9.

Dans ce document, nous allons décrire étape par étape les instructions nécessaires pour configurer une interface graphique, pour un serveur local de messagerie postfix, sur une distribution Mandrake Linux 9.1.

Vous devez auparavant récupérer les paquetages nécessaires à l'installation de l'interface web sur le site de Horde. Il vous faut HORDE 2.2.4 (Architecture PHP), IMP 3.2.2 (Client IMAP), TURBA 1.2 (Gestionnaire de contacts), KRONOLITH 1.1 (Calendrier/Organiseur journalier), MNEMO 1.1 (Gestionnaire de note), NAG 1.1 (Gestionnaire de tâche) et PEAR 1.1, ou leurs versions plus récentes. Le tout est diffusé sous licence libre GNU/GPL, sauf Horde qui est en licence Lesser GNU/GPL.

Si vous souhaitez autoriser le changement en ligne de mot de passe pour la boîte à lettres, ce guide décrit aussi l'installation de POPPASSD-CETI, et de PASSWD 2.2 (Gestionnaire de mot de passe).

En plus de Passwd, Il est aussi possible d'installer facilement les modules FORWARDS 2.2 (Redirection) et VACATION 2.2 (Répondeur automatique), le tout groupé dans le module ACCOUNTS 2.1 (Gestionnaire de Passwd, Forwards et Vacation). Cela n'est pas expliqué dans ce guide mais ne présente aucune difficulté particulière.

Ce guide vous aidera à configurer une installation standard, uniquement testée pour un réseau local, non relié à Internet. Cela doit vous permettre de réaliser un petit serveur de messagerie interne, pour une petite structure, avec une interface graphique ergonomique accessible depuis un navigateur Internet.

Il est ensuite possible de "tuner" votre configuration pour qu'elle corresponde à vos souhaits, ou/et pour réaliser un serveur de messagerie Internet (Le webmail de Free est basé sur horde/imp), mais cela sort du cadre de ce guide et de mes compétences : une attention particulière doit être notamment accordée à la sécurité.

Pré-requis

Pour suivre les instructions ci-dessous, vous aurez besoin d'un minimum de connaissances relatives à Linux, notamment sur l'usage de la console, si vous installez un serveur de messagerie minimum (sans interface graphique type KDE ou Gnome).
Nous utiliserons un serveur Mandrake Linux 9.1, d'adresse IP 192.168.10.1. Je suppose qu'Apache, Mysql, Php et Postfix sont installés et fonctionnent correctement. Sendmail est éventuellement utilisable à la place de Postfix.
Le nom de domaine du serveur est :

mail.example.com


Vous pouvez vérifier le nom de domaine votre machine avec l'instruction :

hostname


Les paquetages (et leurs dépendances) suivants doivent être présents :

  • apache2-2.0.44-11mdk
  • apache2-mod_php-2.0.44_4.3.1-2mdk
  • php-pear-4.3.0-3mdk
  • php-imap-4.3.0-3mdk
  • php-ldap-4.3.0-3mdk
  • php-mysql-4.3.0-2mdk
  • php-xml-4.3.0-2mdk
  • mysql-4.0.11a-5mdk
  • mysql-client-4.0.11a-5mdk
  • imap-2002a-2mdk
  • postfix-2.0.6-1mdk
  • tcp_wrappers-7.6-22mdk
  • poppassd-ceti-1.8-3mdk
  • xinetd-2.3.10-1mdk

Quelques rappels

  • Pour visionner les paquetages installés sur votre système :
    rpm -qa | less
    (Taper q pour quitter)

Si vous n'avez pas tout, il faut installer les paquetages manquants :

rpm -Fvh nom_du_paquetage.rpm pour mettre à jour un paquetage déjà installé
rpm -ivh nom_du_paquetage.rpm pour installer un nouveau paquetage
  • Vous devez avoir les services httpd, mysql, postfix, xinetd activés. Pour visionner les services fonctionnant :
    chkconfig --list | less
  • Pour mettre en marche un service (exemple avec apache) :

Arrêt d'Apache :

service httpd stop

Mise en marche d'Apache :

service httpd start

Redémarrage d'Apache :

service httpd restart
  • Pour faire en sorte qu'à chaque démarrage de votre poste, le service Apache fonctionne :
    chkconfig apache on
  • Pour avoir une documentation sur une instruction Linux :
    man instruction
    (exemple : man chkconfig).
    A propos de la configuration des services, consulter également l'article sur la [../admin/daemons.php3 gestion des démons].
  • Pour savoir où vous vous situez dans l'arborescence de linux :
    pwd
  • Enfin, n'oubliez pas que l'appui sur la touche de tabulation "tab" permet de compléter un nom :
    cd /v "tab" donne automatiquement cd /var

Configurer Apache

Le répertoire d'installation sera : /var/www/html/mail/.

Lancer le service imap, dépendant de xinetd :

chkconfig imap on
service xinetd restart

Modifier php.ini

Modifier le fichier /etc/php.ini :

file_uploads = On
;short_open_tag = On # ligne à commenter
extension_dir = "/usr/lib/php/extensions"

Fichiers de configuration

Modifier le fichier /etc/httpd/conf/httpd.conf :

DocumentRoot /var/www/html/mail
ServerName mail.example.com

Modifier le fichier /etc/httpd/conf/commonhttpd.conf :

<directory /var/www/html/mail>

Ajouter la ligne suivante dans le fichier /etc/hosts :

92.168.10.1 mail.example.com

Remarque : une autre méthode consiste à configurer un VirtualHost.

Création répertoire

" mkdir -p /var/www/html/mail/

Tester Apache

Tester la configuration puis redémarrer Apache pour que les changements prennent effet :

service httpd configtest
service httpd restart

Créer un fichier temporaire :

touch /var/www/html/mail/essai.html

Puis à l'aide d'un navigateur, aller à l'adresse Internet : http://mail.example.com/essai.html.

Remarque : On peut utiliser un navigateur texte comme Lynx pour tester la configuration, si l'on n'a pas installé d'interface graphique sur le serveur ou si aucun poste distant n'est connecté au serveur :

lynx mail.example.com/essai.html

Configurer Horde

Une fois Apache configuré, vous avez besoin d'installer et de configurer Horde.

Installer Horde

A partir du répertoire où vous avez stocké les paquetages Horde :

tar zxvf horde-2.2.4.tar.gz -C /var/www/html/mail
cd /var/www/html/mail
mv horde-2.2.4 horde

Installer Pear

Si vous avez installé le paquetage rpm php-pear, il faut rajouter les modules Pear Date, HTML_Common et HTML_Select. Pour cela, télécharger ces paquetages et les décompresser dans un répertoire quelconque (tar zxvf nom_du_paquetage). Il faut ensuite copier le contenu de ces paquetages dans le répertoires /usr/share/pear en respectant l'arborescence suivante :

Paquetages Date :
mkdir /usr/share/pear/Date
/usr/share/pear/Date.php
/usr/share/pear/Date/Calc.php
/usr/share/pear/Date/Human.php
/usr/share/pear/Date/TimeZone.php
Paquetage HTML_Common :
mkdir /usr/share/pear/HTML
/usr/share/pear/HTML/Common.php
Paquetage HTML_Select :
/usr/share/pear/HTML/Select.php

Si vous n'avez pas installé php-pear, voici comment installer Pear à partir du paquetage original PEAR 1.1 :

# tar zxvf pear-1.1.tar.gz -C /usr/share
cd /usr/share
mv pear-1.1 pear
chown root.root -R pear

Cette procédure sera alors à effectuer à chaque mise à jour de php.

Configurer MySQL

Tester si MySQL est lancé :

# service mysql restart

Choisissez un mot de passe pour la base Horde :

# vi mysql_create.sql # Définir le mot de passe pour l'accès à la base de données horde

Créer la base Horde :

# cd /var/www/html/mail/horde/scripts/db
mysql --user=root --password < mysql_create.sql

Le mot de passe demandé est celui d'accès root à MySQL
Redémarrer MySQL :

# service mysql restart

Tester si vous pouvez vous connecter à la base :

# mysql -h localhost -D horde -u horde -p

Un mot de passe vous est demandé : rentrer celui choisi ci-dessus.
Quitter mysql avec la commande 'exit'

Modifier les fichiers de config Horde

cd /var/www/html/mail/horde/config

Renommer tous les fichiers :

for fichier in *.dist; do cp -v $fichier $(basename $fichier .dist); done

Modifier le fichier /var/www/html/mail/horde/config/horde.php :

// utiliser la compression. Mandrake PHP supporte zlib
$conf['compress_pages'] = true;
// utiliser IMAP pour authentifier les utilisateurs
$conf['auth']['driver'] = 'imap';
$conf['auth']['params']['dsn'] = '{localhost:143/imap}INBOX';
// utiliser MySQL pour stocker les données de Horde
$conf['prefs']['driver'] = 'sql';
$conf['prefs']['params']['phptype'] = 'mysql';
$conf['prefs']['params']['hostspec'] = 'localhost';
$conf['prefs']['params']['username'] = 'horde';
$conf['prefs']['params']['password'] = 'mon_mot_de_passe';
$conf['prefs']['params']['database'] = 'horde';
$conf['prefs']['params']['table'] = 'horde_prefs';
// Le SMTP postfix, pour envoyer les emails
$conf['mailer']['type'] = 'smtp';

Remarque 1 : mon_mot_de_passe est à remplacer par le mot de passe de la base horde mysql choisi au paragraphe [#configurer mysql Configurer mysql].
Remarque 2 : Si vous souhaitez utiliser sendmail à la place de postfix, il faut remplacer smtp par sendmail ci-dessus. Il faudra alors aussi ajouter dans le fichier /etc/mail/trusted-users le mot apache, pour l'autoriser à envoyer des mails par l'intermédiaire de sendmail.

Modifier le fichier /var/www/html/mail/horde/config/lang.php :/p>

$nls['defaults']['language'] = 'fr_FR';

Tester Horde

Vous pouvez tester la configuration initiale de Horde en allant avec un

Puis essayer :

VERIFICATION DE SECURITE
Vous ne devez pas pouvoir accéder avec un navigateur à :
http://mail.example.com/horde/config/

Configurer IMP

Installer IMP

A partir du répertoire où vous avez stocké le paquetage IMP :

tar zxvf imp-3.2.2.tar.gz -C /var/www/html/mail/horde
cd /var/www/html/mail/horde
mv imp-3.2.2 imp

Configurer Horde pour IMP

Déclarer IMP dans Horde :
Modifier le fichier /var/www/html/mail/horde/config/registry.php :

// Décommentez les lignes suivantes
$this->registry['auth']['login'] = 'imp';
$this->registry['auth']['logout'] = 'imp';
// Montrer l'icône imp dans horde
$this->applications['imp'] = array(
...
'status' => 'active'
);

Configurer les fichiers de config d'IMP

cd /var/www/html/mail/horde/imp/config

Renommer tous les fichiers :

for fichier in *.dist; do cp -v $fichier $(basename $fichier .dist); done

Modifier le fichier /var/www/html/mail/horde/imp/config/servers.php :

// Modifier ces lignes
$servers['imap'] = array(
'name' => 'IMAP Server',
'server' => 'localhost',
'protocol' => 'imap/notls',
'port' => 143,
'folders' => 'mail/',
'namespace' => '',
'maildomain' => 'example.com',
'smtphost' => 'mail.example.com',
'realm' => '',
'preferred' => ''
);

Remarque : Il doit être possible à ce niveau de configurer le service sécurisé d'imap (protocol imap/ssl, port 993).

Modifier le fichier /var/www/html/mail/horde/imp/config/prefs.php :

// langage de l'utilisateur
// regarder dans /horde/config/lang.php pour les alias de langue
$_prefs['language'] = array(
'value' => 'fr_FR',
'locked' => false,
'shared' => true,
'type' => 'select',
'desc' => _("Select your preferred language:")
);
// boite postale de l'utilisateur par défaut
// la valeur par défaut INBOX ne peut être changée
$_prefs['mailbox'] = array(
'value' => 'INBOX',
'locked' => true,
'shared' => false,
'type' => 'implicit'
);
// Utiliser IMAP
// Montre seulement les répertoires souscrits par IMAP
$_prefs['subscribe'] = array(
'value' => 1,
'locked' => true,
'shared' => false,
'type' => 'checkbox',
'desc' => _("Use IMAP folder subscriptions")
);
// Répertoire des courriers envoyés
// Utilise le même nom que Mozilla, Outlook Express, etc
$_prefs['sent_mail_folder'] = array(
'value' => 'Sent',
'locked' => false,
'shared' => true,
'type' => 'implicit'
);
// Répertoire poubelle
// Utilise le même nom que Mozilla, Outlook Express, etc
$_prefs['trash_folder'] = array(
'value' => 'Trash',
'locked' => false,
'shared' => false,
'type' => 'implicit'
);

Tester IMP

Vous pouvez tester la configuration initiale de IMP en allant avec un navigateur web sur : http://mail.example.com/horde/imp/test.php.

Se logger avec un utilisateur/passe valide (en l'occurrence un compte pop valide).
Essayer d'envoyer des mails à un autre compte et à vous même.
Utiliser une adresse mail du type utilisateur@mail.example.com Nous verrons plus loin (paragraphe 8) comment [#configurer postfix configurer postfix] pour utiliser une adresse mail du type utilisateur@example.com

Pour créer un compte sans possibilité de connection sur votre serveur, uniquement destiné à la messagerie :

useradd -c "nom_utilisateur ou commentaire" -s /bin/false -g popusers nom_utilisateur

Puis définir le mot de passe du compte nouvellement créé avec passwd :

passwd nom_utilisateur

Remarque 1 : Avec un poste Windows distant, il faut configurer le fichier hosts. Dans le répertoire : C:\WINNT\SYSTEM32\DRIVERS\ETC), rajouter la ligne : 192.168.10.1 mail.example.com Ceci est probablement inutile si votre serveur de messagerie est aussi serveur de nom (DNS).

Remarque 2 : Vous pouvez aussi modifier le fichier 'trailer.txt' situé dans /horde/imp/config/. Ce fichier vous permet d'ajouter un texte à la fin de tous les mails qui seront envoyés par IMP. Par défaut, le texte suivant est ajouté à tous les messages : This mail sent through IMP: http://horde.org/imp/. Si vous ne voulez rien ajouter, effacer tout ce qu'il y a dans ce fichier.

VERIFICATION DE SECURITE
Vous ne devez pas pouvoir accéder avec un navigateur à : http://mail.example.com/horde/config/

Configurer Turba

Maintenant que vous pouvez lancer Horde et IMP, vous avez besoin d'un carnet d'adresses afin de gérer vos contacts.

Installer Turba

A partir du répertoire où vous avez stocké le paquetage TURBA :

tar xzf turba-1.2.tar.gz -C /var/www/html/mail/horde
cd /var/www/html/mail/horde
mv turba-1.2 turba
cd /var/www/html/mail/horde/turba/config

Renommer tous les fichiers :

for fichier in *.dist; do cp -v $fichier $(basename $fichier .dist); done

Configurer Turba

Déclarer Turba dans Horde :
Modifier le fichier /var/www/html/mail/horde/config/registry.php :

// Montrer l'icône Turba dans horde
$this->applications['turba'] = array(
...
'status' => 'active'
);

Configurer dans IMP l'icône pour Turba :
Modifier le fichier /var/www/html/mail/horde/imp/config/conf.php :

$conf['menu']['apps'] = array('turba');

Configurer dans Turba l'icône pour IMP :
Modifier le fichier /var/www/html/mail/horde/turba/config/conf.php :

$conf['menu']['apps'] = array('imp');

Modifier le fichier /var/www/html/mail/horde/turba/config/prefs.php :

// Language de l'utilisateur
// Règler le même langage par défaut que Horde et IMP
$_prefs['language'] = array(
'value' => 'fr_FR',
'locked' => false,
'shared' => true,
'type' => 'select',
'desc' => _("Select your preferred language:")
);

Configurer Turba pour utiliser MySQL pour enregistrer les données des contacts :
Modifier le fichier /var/www/html/mail/horde/turba/config/sources.php :

// Compléter cette partie de la configuration avec les données
// de la base de données comme dans /horde/config/horde.php
// Configurer aussi le titre dans votre langue
$cfgSources['localsql'] = array(
'title' => 'My Address Book',
'type' => 'sql',
'params' => array(
'phptype' => 'mysql',
'hostspec' => 'localhost',
'username' => 'horde',
'password' => 'mon_mot_de_passe',
'database' => 'horde',
'table' => 'turba_objects'
),
);

Remarque : mon_mot_de_passe est à remplacer par le mot de passe de la base horde mysql choisi au paragraphe [#configurer mysql Configurer mysql]

Configurer MySQL pour Turba

Créer la base dans MySQL que Turba utilisera :

cd /var/www/html/mail/horde/turba/scripts/drivers/
mysql --user=root --password -D horde < turba.sql

Tester Turba

Vous pouvez tester la configuration initiale de Turba en allant avec un navigateur web sur :

Créer une nouvelle entrée dans le carnet d'adresse et aller dans IMP, puis Options et choisissez d'utiliser le carnet d'adresses avec le nom "My Address Book".

Configurer poppassd (optionnel : non sécurisé)

Maintenant que vous avez configuré Horde avec IMP et Turba, vous avez besoin de fournir à vos utilisateurs une méthode pour changer leur mot de passe au travers de Horde.

Installer poppassd-ceti

rpm -ivh poppassd-ceti-1.8-3mdk.i586.rpm

Activer le service poppassd :

chkconfig poppassd on
service xinetd restart

Installer passwd

A partir du répertoire où vous avez stocké le paquetage PASSWD :

tar zxvf passwd.2.2.tar.gz -C /var/www/html/mail/horde/
cd /var/www/html/mail/horde/
mv passwd-2.2 passwd
cd /var/www/html/mail/horde/passwd/config

Renommer tous les fichiers :

for fichier in *.dist; do cp -v $fichier $(basename $fichier .dist); done

Configurer Horde pour Passwd

Modifier le fichier /var/www/html/mail/horde/config/registry.php :

$this->applications['passwd'] = array(
'fileroot' => dirname(__FILE__) . '/../passwd',
'webroot' => $this->applications['horde']['webroot'] . '/passwd',
'icon' => $this->applications['horde']['webroot'] . '/passwd/graphics/lock.gif',
'name' => _("Password"),
'allow_guests' => false,
'status' => 'active'
);

Configurer IMP pour Passwd

Configurer l'icône Passwd dans IMP :
Modifier le fichier /var/www/html/mail/horde/imp/config/conf.php :

$conf['menu']['apps'] = array('turba', 'passwd');

Configurer le fichier de config de Passwd

Configurer l'icône pour IMP dans Passwd :
Modifier le fichier /var/www/html/mail/horde/passwd/config/conf.php :

$conf['menu']['apps'] = array('imp');

Editer le fichier /var/www/html/mail/horde/passwd/config/backends.php :

$backends['poppassd'] = array(
'name' => 'nom de votre organisation',
'preferred' => '',
'password policy' => array(),
'driver' => 'poppassd',
'params' => array(
'host' => 'localhost',
'port' => '106'
)
);

Tester Passwd

Vous pouvez tester la configuration initiale de Passwd en allant avec un navigateur web sur : http://mail.example.com/horde/passwd/

Regardez dans /var/log/messages pour les messages de débuggage.
Changez votre mot de passe. Attention : n'importe quel mot de passe de n'importe quelle longueur sera accepté car poppassd est lancé sous l'identité root.

Kronolith, Mnemo et Nag

Décompresser les paquetages et renommer chaque répertoire :

tar zxvf kronolith-1.1.tar.gz -C /var/www/html/mail/horde/
tar zxvf mnemo-1.1.tar.gz -C /var/www/html/mail/horde/
tar zxvf nag-1.1.tar.gz -C /var/www/html/mail/horde/
cd /var/www/html/mail/horde/
mv kronolith-1.1 kronolith
mv mnemo-1.1 mnemo
mv nag-1.1 nag

Installer Kronolith

Créer la base dans MySQL que Kronolith utilisera :

# cd /var/www/html/mail/horde/kronolith/scripts/drivers/
# mysql --user=root --password -D horde < kronolith.sql

Modifier le fichier /var/www/html/mail/horde/config/registry.php :

$this->applications['kronolith'] = array(
'fileroot' => dirname(__FILE__) . '/../kronolith',
'webroot' => $this->applications['horde']['webroot'] . '/kronolith',
'icon' => $this->applications['horde']['webroot'] . '/kronolith/graphics/kronolith.gif',
'name' => _("Calendar"),
'allow_guests' => false,
'status' => 'active'
);

Configurer l'icône Kronolith dans IMP :
Modifier le fichier /var/www/html/mail/horde/imp/config/conf.php :

$conf['menu']['apps'] = array('turba','passwd','kronolith');
cd /var/www/html/mail/horde/kronolith/config

Renommer tous les fichiers :

for fichier in *.dist; do cp -v $fichier $(basename $fichier .dist); done

Configurer l'icône IMP dans Kronolith et les paramètres d'accès à la base MySQL :
Modifier le fichier /var/www/html/mail/horde/kronolith/config/conf.php :

// utiliser MySQL pour stocker les données de Kronolith
$conf['calendar']['driver'] = 'sql';
$conf['calendar']['params']['phptype'] = 'mysql';
$conf['calendar']['params']['hostspec'] = 'localhost';
$conf['calendar']['params']['username'] = 'horde';
$conf['calendar']['params']['password'] = 'mon_mot_de_passe';
$conf['calendar']['params']['database'] = 'horde';
$conf['calendar']['params']['table'] = 'kronolith_events';
$conf['menu']['apps'] = array('imp');

Remarque : mon_mot_de_passe est à remplacer par le mot de passe de la base horde mysql choisi au paragraphe « Configurer mysql ».

Installer Mnemo

Créer la base dans MySQL que Mnemo utilisera :

cd /var/www/html/mail/horde/mnemo/scripts/drivers/
mysql --user=root --password -D horde < mnemo_memos.sql

Modifier le fichier /var/www/html/mail/horde/config/registry.php :

$this->applications['mnemo'] = array(
'fileroot' => dirname(__FILE__) . '/../mnemo',
'webroot' => $this->applications['horde']['webroot'] . '/mnemo',
'icon' => $this->applications['horde']['webroot'] . '/mnemo/graphics/mnemo.gif',
'name' => _("Memos"),
'allow_guests' => false,
'status' => 'active'
);

Configurer l'icône Mnemo dans IMP :
Modifier le fichier /var/www/html/mail/horde/imp/config/conf.php :

$conf['menu']['apps'] = array('turba','passwd','kronolith','mnemo');
cd /var/www/html/mail/horde/mnemo/config

Renommer tous les fichiers :

for fichier in *.dist; do cp -v $fichier $(basename $fichier .dist); done

Configurer l'icône IMP dans Mnemo et les paramètres d'accès à la base MySQL :
Modifier le fichier /var/www/html/mail/horde/mnemo/config/conf.php :

// utiliser MySQL pour stocker les données de Mnemo
$conf['storage']['driver'] = 'sql';
$conf['storage']['params']['phptype'] = 'mysql';
$conf['storage']['params']['hostspec'] = 'localhost';
$conf['storage']['params']['username'] = 'horde';
$conf['storage']['params']['password'] = 'mon_mot_de_passe';
$conf['storage']['params']['database'] = 'horde';
$conf['storage']['params']['table'] = 'mnemo_memos';
$conf['menu']['apps'] = array('imp');

Remarque : mon_mot_de_passe est à remplacer par le mot de passe de la base horde mysql choisi au paragraphe [#configurer mysql Configurer mysql]

Installer Nag

Créer la base dans MySQL que Nag utilisera :

cd /var/www/html/mail/horde/nag/scripts/drivers/
mysql --user=root --password -D horde < nag_tasks.sql

Modifier le fichier /var/www/html/mail/horde/config/registry.php :

$this->applications['nag'] = array(
'fileroot' => dirname(__FILE__) . '/../nag',
'webroot' => $this->applications['horde']['webroot'] . '/nag',
'icon' => $this->applications['horde']['webroot'] . '/nag/graphics/nag.gif',
'name' => _("Tasks"),
'allow_guests' => false,
'status' => 'active'
);

Configurer l'icône Nag dans IMP :
Modifier le fichier /var/www/html/mail/horde/imp/config/conf.php :

$conf['menu']['apps'] = array('turba','passwd','kronolith','mnemo','nag');
cd /var/www/html/mail/horde/nag/config

Renommer tous les fichiers :

for fichier in *.dist; do cp -v $fichier $(basename $fichier .dist); done

Configurer l'icône IMP dans Nag et les paramètres d'accès à la base MySQL :
Modifier le fichier /var/www/html/mail/horde/nag/config/conf.php :

// utiliser MySQL pour stocker les données de Mnemo
$conf['storage']['driver'] = 'sql';
$conf['storage']['params']['phptype'] = 'mysql';
$conf['storage']['params']['hostspec'] = 'localhost';
$conf['storage']['params']['username'] = 'horde';
$conf['storage']['params']['password'] = 'mon_mot_de_passe';
$conf['storage']['params']['database'] = 'horde';
$conf['storage']['params']['table'] = 'nag_tasks';
$conf['menu']['apps'] = array('imp');

Remarque : mon_mot_de_passe est à remplacer par le mot de passe de la base horde mysql choisi au paragraphe [#configurer mysql Configurer mysql]

Sécurité

Vérifier que les répertoires config de chaque module Horde sont inaccessibles à un navigateur web. Si ce n'est pas le cas, revoir la configuration de Apache.
Une fois l'installation terminée, lancer le script :

cd /var/www/html/mail/horde
sh scripts/set_perms.sh

Répondre 'apache' pour le groupe, et toutes les autres questions par oui (y).
Ce script va changer le propriétaire, le groupe et les autorisations de chaque fichier à l'intérieur du répertoire horde.

Configurer Postfix

En réseau local, lorsque machin@mail.example.com envoie un mail à truc@mail.example.com, l'adresse de réponse est machin@example.com. 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

Conclusion

Si vous avez suivi ce document jusqu'à ce point, vous disposez d'une interface web complète de messagerie, avec la possibilité de changer de mot de passe en ligne, et avec un gestionnaire d'adresse, de calendrier, mémos et tâches.

Toutes les réponses à vos questions en tant qu'utilisateur de cette interface sont probablement dans la FAQ utilisateur de horde.

En tant qu'administrateur, il vous est maintenant possible de configurer plus finement votre interface. Beaucoup d'informations intéressantes sont disponibles dans la FAQ administrateur de Horde. Et en cas de problème insoluble, après avoir consulté la documentation présente avec chaque paquetage (dans le répertoire /docs associé), le site Horde et les FAQ, il y a encore la possibilité de poser vos questions sur la mailing-list de Horde...




@ Retour à la rubrique Réseau

Cette page est issue de la documentation 'pré-wiki' de Léa a été convertie avec HTML::WikiConverter. Elle fut créée par Laurent DUBETTIER-GRENIER le 05/05/2004.

Copyright

Copyright © 05/05/2004, Laurent Dubettier-Grenier

Creative Commons License
Creative Commons Attribution iconCreative Commons Share Alike iconCreative Commons Noncommercial
Ce document est publié sous licence Creative Commons
Attribution, Partage à l'identique, Contexte non commercial 2.0 :
http://creativecommons.org/licenses/by-nc-sa/2.0/fr/