TUTORIAL - Installation de RoundCube (PHP4)
RoundCube peux être exécuté dans des environnement multiples. Il peut employer différents SGBD, notamment MySQL, SQLite, PostgreSQL. Dans le cadre de ce document, nous présentons l'installation de RoundCube sur une distribution Debian Etch. Nous partons du principe que vous disposez d'un Serveur Web Apache2, de PHP4 et d'un Serveur MySQL >= à la version 4.1. Voir cette page Près requis ( Debian ) pour plus d'informations à ce sujet.
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. Installation et configuration de RoundCube
A. Installation :
a. Près-requis :
Pour disposer de toutes les options, certaines librairies PEAR et autres packages doivent êtres installés sur le système :
1. On s'assure que les près requis sont installés:
$ aptitude update $ aptitude remove --purge php5-dev $ aptitude install openssl aspell php-pear php4-gd php4-mcrypt php4-dev libmagic-dev $ pear update-channels && pear upgrade-all $ pear install Net_SMTP $ pear install Mail_mime $ pear install MDB2 $ pear install MDB2#mysql $ pecl install Fileinfo
Note : En ce qui concerne Fileinfo, il faut s'assurer que le fichier /etc/php4/apache2/conf.d/fileinfo.ini existe. Si ce n'est pas le cas, créez le et insérez la ligne ' extension=fileinfo.so ' sans les quotes pour que la librairie puisse être chargée.
En ce qui concerne les librairies MDB2, Mail_mime et Net_SMTP, vous noterez qu'elle sont fournies dans l'archive de RoundCube. Ici, nous les installons pour êtres sûr d'avoir les dernières versions en date.
2. On vérifie la liste des librairie PEAR installées en éxécutant la commande suivante :
$ pear list
Nous obtenons le résultat suivant :
Installed packages, channel pear.php.net: ========================================= Package Version State Archive_Tar 1.3.2 stable Console_Getopt 1.2.3 stable Fileinfo 1.0.4 stable MDB2 2.4.1 stable MDB2_Driver_mysql 1.4.1 stable Mail_Mime 1.5.2 stable Mail_mimeDecode 1.5.0 stable Net_SMTP 1.2.11 stable Net_Socket 1.0.8 stable PEAR 1.7.1 stable Structures_Graph 1.0.2 stable
Note : Sur votre système, le retour de cette commande peux être différent si vous aviez déjà installé d'autres librairies PEAR. Ce qui compte, c'est que les librairies, MDB2 ( avec driver Mysql ), FileInfo, Mail_Mime, Mail_mimeDecode, Net_SMTP et Net_Socket soient listées.
3. On recharge la configuration du Serveur Web apache2 pour que les changements soient pris en comptes :
$ /etc/init.d/apache2 reload
b. RoundCube :
Il n'existe pas encore de paquet Debian permettant une installation rapide du Webmail RoundCube. Pour pouvoir l'installer, nous devons récupérer l'archive source et la décompresser :
1. On se place dans le répertoire /var/www :
$ cd /var/www
2. On télécharge la dernière version en date de RoundCube :
$ wget http://garr.dl.sourceforge.net/sourceforge/roundcubemail/roundcubemail-0.1.1.tar.gz
Note : Pensez à vérifier qu'il n'existe pas de nouvelle version
3. On décompresse l'archive obtenue :
$ tar -xzf roundcubemail-0.1.1.tar.gz
4. On renomme le répertoire roundcubemail-0.1.1 obtenu en webmail :
$ mv ./roundcubemail-0.1.1 ./webmail
5. On fixe le propriétaire/groupe et permissions des 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
Note : Vous devez exécuter cette commande en une seule fois. Un copier-coller suffira amplement.
6. On rend les dossiers /tmp et /logs accessibles en écriture pour l'utilisateur www-data :
$ chmod 0755 /var/www/webmail/temp /var/www/webmail/logs
7. On désactive les librairies PEAR fournies avec Roundcube :
$ cd ./webmail/program/lib $ mv ./PEAR.php ./PEAR.php-stop $ mv ./DB.php ./DB.php-stop $ mv ./DB ./DB-stop $ mv ./MDB2.php ./MDB2.php-stop $ mv ./MDB2 ./MDB2-stop $ mv ./Mail ./Mail-stop $ mv ./Net ./Net-stop
c. Création de la base de données et utilisateur Sql :
1. On se connecte au moniteur Sql :
$ mysql -u root -p Your root sql password
2. On créer un nouvelle base de données nommée roundcubemail :
CREATE DATABASE IF NOT EXISTS `roundcubemail` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
3. On créer l'utilisateur Sql nommé roundcube et on lui donne tous les privilèges sur la base de données :
GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost IDENTIFIED BY 'Your_Password';
Note : Vous devez remplacer Your_Password par le mot de passe de votre choix.
4. On recharge les privilèges Sql :
FLUSH PRIVILEGES;
5. On quitte le moniteur Sql :
quit;
6. On créer les tables Sql :
mysql -u root -p roundcubemail < roundcube/SQL/mysql5.initial.sql Your root sql password
B. Configuration :
A venir
II. Création d'un nouvel Alias
Pour que RoundCube soit accessible, nous pouvons soit créer un nouvel hôte virtuel soit créer un nouvel Alias. Dans le cadre de ce document, nous nous contenterons de créer un nouvel Alias. Cela permet aux utilisateurs d'accéder à RoundCube à partir d'une adresse http://domain.tld/webmail
1. On se place dans le répertoire /etc/apache2/sites-available :
$ cd /etc/apache2/sites-available
2. On créer un nouveau fichier nommé roundcube.conf :
$ touch roundcube.conf
3. On ajoute le contenu suivant dans le fichier nouvellement créé :
Alias /webmail "/var/www/webmail" <Directory "/var/www/webmail"> Options -Indexes Includes FollowSymlinks AllowOverride ALL Order allow,deny Allow from all </Directory>
4. On active le nouvel Alias :
$ a2ensite roundcube.conf
5. On recharge la configuration du Serveur Apache2 pour que les changements soient pris en comptes :
/etc/init.d/apache2 reload
Contributeur : M. Laurent DECLERCQ - Nuxwin Team
