Bonjour à tous,

Cette histoire de roundcube m'a pas mal fait réfléchir, n'étant pas habituer à cet outil, quoi de mieux que de l'installer soit même pour essayer de répondre au mieux ?

Après avoir installé roundcube, cet outil n'est qu'un client mail dans une interface web, il ne s'occupe pas de la gestion des utilisateurs (création / suppression des comptes), cette partie est délégué à Centos avec la création des comptes Unix, puis via un serveur IMAP, roundcube authentifie et récupère les emails,  il est donc indispensable d'installer roundcube ET un serveur imap pour que cela fonctionne.

Veuillez trouver ci-dessous une petite procédure écrite lors de l'installation d'une machine virtuel de test.
Il ne s'agit pas d'une configuration idéal, mais elle à le mérite de fonctionner :-)


Cordialement,

Jacob Godyn


ps: désolé pour les fautes d'orthographe

----------------------------------------------------------------------

==== Prérequis ====
Média d'installation : CentOS-5.4-i386-bin-1of6.iso
Connexion internet sur le serveur

==== Installation de Centos ====
- Installation en mode text
- langue : English
- clavier : fr
- partitionnement : supprimer toutes les partitions et créer les partitions par défauts
- Réseau : activé au boot, ipv4 activé, ipv6 désactivé
- adresse IP Fixe avec passerelle et DNS
- nom de la machine : roundcube.domain.local
- Fuseau horaire : UTC - Europe / Paris
- Sélection personnalisé des paquets
  - Laisser coché uniquement "Base"
- Installation des paquets et Reboot du serveur
- Assistant de configuration suite au premier démarrage :
  - Menu Firewall configuration
    - Security Level : Enabled
    - SELinux : Enforcing
    - Menu customize
      - Allow incoming : SSH / WWW / Secure WWW / Mail SMTP, dans other port saisir imap:tcp
- Quitter l'assistant
- se connecter en root et faire un "yum update"
- rebootez le serveur (nouveau kernel)

==== Installation d'Apache / MySQL / Php ====
- installer apache : yum install httpd
- installer mysql : yum install mysql mysql-server
- installer Php : yum install php php-mysql php-common php-mbstring php-mcrypt php-pecl-Fileinfo php-gd php-xml

/!\ Php 5.1.6 n'est pas compatible avec la dernier version de roundcube /!\

- Installation du dépot de Remi Collet pour mettre à jour Php
wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-5.rpm
rpm -Uvh remi-release-5*.rpm epel-release-5*.rpm

- Mise à jour de Php et de mysql
yum --enablerepo=remi update php mysql mysql-server
- Vérifier la version de php
php -v (au minimum 5.2.0)

==== Configurer MySQL ====
- Démarrer Mysql : service mysqld start
- se connecter à la console de mysql : mysql
- changer le mot de passe root mysql :
USE mysql;
UPDATE user SET Password=PASSWORD('NouveauMotDePasse') WHERE user='root';
FLUSH PRIVILEGES;
exit

- Se reconnecter à Mysql avec le compte root et le mot de passe
mysql -u root -p
- Créer la base roundcube :
CREATE DATABASE roundcubemail;
- Créer l'utilisateur roundcube avec les bons droits
GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost IDENTIFIED BY 'MonDePasse';
exit

- démarrez automatiquement mysql au boot : chkconfig mysqld on

==== Configurer Apache ====
- démarrez automatiquement apache au boot : chkconfig httpd on
- redémarrez apache pour prendre en compte php : service httpd restart

==== Installation de roundcube ====
- allez sur /var/www/html/ : cd /var/www/html/
- récupérez l'archive roundcube depuis le site officiel
wget http://downloads.sourceforge.net/project/roundcubemail/roundcubemail/0.3.1/roundcubemail-0.3.1.tar.gz?use_mirror=freefr
- décompresser l'archive : tar -zxvf roundcubemail-0.3.1.tar.gz
- renommer le dossier : mv roundcubemail-0.3.1 roundcube
- modifier le propriétaire des fichiers roundcube : chown -R root:root roundcube

==== Configuration de roundcube ====
- ouvrir un navigateur internet et se positionner à l'adresse http://ip_du_serveur/roundcube/installer/

1 - Check Environnement : normalement toutes les dépendances sont résolus
2 - Create Config : Dans la section "Database setup"
database type : MySQL
database server : localhost
database name : roundcubemail
database user : roundcube
database password : SAISIR LE MOT DE PASSE (celui lors de la création du compte)

- modifier les droits sur les répertoires logs et temp
cd /var/www/html/roundcube/
chown apache:apache logs
chown apache:apache temp

- Sur le serveur, renommer les fichiers générés par l'installateur
cd /var/www/html/roundcube/config
cp db.inc.php.dist db.inc.php
cp main.inc.php.dist main.inc.php

/!\ ATTENTION, une erreur de mot de passe existe dans le fichier db.inc.php /!\

Éditez le fichier db.inc.php
modifier la ligne : $rcmail_config['db_dsnw'] = 'mysql://roundcube:pass@localhost/roundcubemail';

Remplacer "pass" par le mot de passe du compte roundcube

Ouvrir un navigateur web sur la page http://ip_du_serveur/roundcube/installer/index.php?_step=3

Normalement la connexion à la base de donnée est OK - DSN (write)
Initialisez la base de donnée : DB schema NOT OK -> Initialize database

==== Installer un serveur IMAP ====
yum install dovecot
chkconfig dovecot on
service dovecot start

créer un utilisateur : adduser demo01
assigner un mot de passe : passwd demo01
 
==== Tester Roundcube ====
http://ip_du_serveur/roundcube/

Utilisateur : demo01
mot de passe : LeMotDePasse
Serveur : adresse ip du serveur

- Si cela fonctionne, ne pas oublier de supprimer le repertoire /var/www/html/roundcube/installer
- Sécuriser apache si besoin