wiki:Howto_Install_fr

Version 19 (modified by ThomasClavier, 7 years ago) (diff)

--

TUTORIAL - Installation de RoundCube

RoundCube peux fonctionner dans des environnement multiples. Il peut peut fonctionner avec différents SGBD. Dans le cadre de ce tutorial, nous présenterons l'installation de RoundCube sur une distribution Debian Etch. Nous partirons du principe que vous disposez d'un Serveur Web Apache2, de PHP5 et d'un Serveur mysql >= à la version 4.1.

A titre liminaire, nous vous rappelons que toutes les commandes évoquées dans ce tutorial doivent être exécutées avec les privilèges de l'utilsateur root.

I. Récupération de RoundCube :

A l'heure ou nous rédigeons ce tutorial, RoundCube en est encore au stade de développement. Il est à noter qu'aucune version stable n'est encore disponible mais que très peux de dysfonctionnements ont été rencontrés pendant nos testes.

Pour télécharger la version actuelle de RoundCube, il vous suffit de taper les commandes suivantes dans un terminal :

1. On se place dans le répertoire de destination :

cd /var/www/

2. On télécharge la dernière version en date de RoundCube :

wget http://downloads.sourceforge.net/roundcubemail/roundcubemail-0.1-rc1.tar.gz

II. Décompression :

Ayant récupéré l'archive du logiciel RoundCube, vous devez désormais la décompresser. Pour ce faire, il vous suffit de taper la commande suivante dans un terminal :

tar -xzf roundcubemail-0.1-rc1.tar.gz

III. Accessibilité, propriétaire et permissions des répertoires/fichiers :

A. Accessibilité

Dans le cadre de ce tutorial, nous allons présenter de méthodes d'accessibilité.

1. Une méthode ou RoundCube sera accessibe via une url de la forme http://www.domain.tld/webmail ;
2. Une méthode ou RoundCube sera accessible via une sous zone : http://webmail.domain.tld .

Dans un premier temps, nous allons donc renommer le répertoire de RoundCube en webmail :

1. On renomme le dossier de RoundCube en webmail :

mv roundcubemail-0.1-rc1 webmail

B. Propriétaire et permissions :

Comme nous avons téléchargé et décompressé l'archive de RoundCube avec les privilèges de l'utilisateur root, l'utilisateur du Serveur Web n'a actuellement pas les droits suffisant pour exécuter RoundCube.

Nous allons donc dans un premier temps fixer les permissions de l'ensemble des répertoires et fichiers de sorte que l'utilisateur Apache (www-data) puisse y accéder et ensuite nous allons modifier manuellement les permissions de deux répertoires appartenant à RoundCube. Il s'agit des répertoires nommés /logs et /temp qui doivent être accessibles en écriture par le serveur Web Apache2.

1. On fixe les permissions de tous les répertoires et fichiers :

for i in `find /var/www/webmail`; do if [[ -f $i ]]; then chmod 0400 $i; chown www-data:www-data $i; elif [[ -d $i ]]; then chmod 0555 $i; chown www-data:www-data $i;fi done

Ps : Vous devez exécuter cette commande en une seule fois. Un copier-coller suffira amplement.

2. On rend le dossier /tmp accessible en écriture pour l'utilisateur www-data :

chmod 0775 /var/www/webmail/temp

3. On rend le dossier /logs accessible en écriture pour l'utilisateur www-data :

chmod 0775 /var/www/webmail/logs

V. Création de la base de donnée et de l'utilisateur SQL associé :

Comme indiqué en préliminaire de ce tutorial, le webmail RoundCube emploi une base de données pour fonctionner. Cette base de données, contrairement à ce que pourraient penser certains, n'est pas dédiée à la création de nouveaux comptes utilisateurs. Elle permet simplement à RoundCube de conserver des informations sur les utilisateurs déjà existants telle que des informations liées aux sessions, des informations liées à la langue, au fuseau horaire utilisé par l'utilisateur...

La création de la base de données de RoundCube peut s'effectuer de différente manières :

1. En ligne de commande ;
2. Via phpmyadmin en tant qu'utilisateur root.

Dans le cadre de ce tutorial, nous allons allez au plus simple, c'est à dire, créer la base de donnée et l'utilisateur associé en ligne de commande. Vous noterez aussi qu'ici, nous emploiront le shéma SQL dédié aux version 4.1 et 5.0 du Serveur mysql, la version 4.0 n'étant normalement plus utilisée.

1. On créer la base de donnée de RoundCube ainsi que l'utilisateur associé :

a. On se connecte au moniteur SQL en tant qu'utilisateur root SQL :

mysql -u root -p

b. On créer la base :

CREATE DATABASE roundcube DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

c. On créer l'utilisateur SQL associé, c'est à dire, celui qui sera utilisé par le logiciel RoundCube pour accéder à la base de données :

GRANT ALL PRIVILEGES ON user_roundcube.* TO roundcube@localhost IDENTIFIED BY 'YOUR_PASSWORD';

Ps : Ici, l'utilisateur se nomme user_roundcube. Vous devez remplacer YOUR_PASSWORD par un mot de passe de votre choix. d. On quitte le moniteur SQL :

quit

2. On créer la structure de la base de données :

mysql -u root -p roundcube < /var/www/webmail/SQL/mysql5.initial.sql

Ps : Il vous appartient d'adapter le chemin selon le nom que vous avez donné au répertoire contenant le logiciel RoundCube.

VI. Configuration :

La configuration, contrairement à ce que l'on pourrait croire est très simple. Il s'agit en effet de renseigner deux fichiers qui se trouvent dans le répertoire /webmail/config. Pour être plus précis, il s'agit des fichiers suivants :

  • db.inc.php.dist
  • main.inc.php.dist .

Le premier fichier permet de configurer l'accès à la base de données tandis que le second permet de définir les paramètres liés au serveur de messagerie et le comportement de RoundCube.

Dans un premier temps, vous devez copier ces deux fichiers pour qu'ils puissent être reconnus par apache2 comme étant des scripts PHP. Pour ce faire, il vous suffit de taper la commande suivante dans un terminal :

a. On se place dans le répertoire contenant les fichiers de configuration :

cd  /var/www/webmail/config

b. On copie les fichiers pour qu'ils puissent être intérprêtés par le moteur php :

for f in *.dist; do cp $f `basename $f .dist`; done

A venir...

Liens

Mode opératoire pour la version SVN sur une debian


Contributeur : M. Laurent DECLERCQ - Nuxwin Team