Ceci est une ancienne révision du document !


Installation du webmail roundcube

Rouncube est un webmail en ajax qui a une p'tite bouille fort sympatique comme vous pouvez le voir sur ces screenhots.

Prérequis

L'installation sera effectuée sur une http://www.debian.org debian stable (lenny a l'heure ou ce tutorial est écrit) disposant d'un serveur web apache2 gérant le php et assumant que vous avez un serveur mysql.

Téléchargement de roundcube

la derniere version peut etre trouvée ici : http://roundcube.net/download, prendre la version “GPL (dependent)” car nous allons installer les dependances nous meme.

Installation des logiciels requis

apt-get install openssl aspell-fr php5-gd php5-mcrypt php5-mcrypt php5-dev libmagic-dev php5-mysql
# et les librairies PHP PEAR (disponibles sous forme de paquets debian) :
apt-get install php-auth php-net-smtp php-net-socket php-mail-mime libmagic1 php5-pspell libjs-jquery
# la librairie PECL fileinfo
pecl install Fileinfo

Certaines librairies PEAR ne sont pas disponible dans les depots debian officiels, mais ils le sont dans les depots backports : nous allons donc utiliser ces versions :

cd /tmp
wget http://www.backports.org/debian/pool/main/p/php-mdb2/php-mdb2_2.5.0b2-1~bpo50+1_all.deb
wget http://www.backports.org/debian/pool/main/p/php-mdb2-driver-mysql/php-mdb2-driver-mysql_1.5.0b2-1~bpo50+1_all.deb
dpkg -i php-mdb2_2.5.0b2-1~bpo50+1_all.deb
dpkg -i php-mdb2-driver-mysql_1.5.0b2-1~bpo50+1_all.deb

Ajouter dans les fichiers /etc/php5/cli/php.ini et /etc/php5/apache2/php.ini :

extension=fileinfo.so

Un (re)démarrage de apache est nécessaire pour prendre ces changements en compte :

/etc/init.d/apache2 restart

Installation

decompression de l'archive

cd /var/www
tar xvzf roundcubemail-0.3.1-dep.tar.gz
chown -R root:root roundcubemail-0.3.1-dep
ln -s roundcubemail-0.3.1-dep webmail.mondomaine.com

configuration du vhost apache

Créer un fichier /etc/apache2/sites-available/webmail.mondomaine.com) contenant :

#######################################
#   VirtualHost pour le webmail       #
#######################################
<VirtualHost *:443>
        ServerName      webmail.mondomaine.com

        DocumentRoot    /var/www/webmail.mondomaine.com

        SSLEngine on
        #   SSLCertificateFile directive is needed.
        SSLCertificateFile    /etc/ssl/certs/mondomaine.com.crt
        SSLCertificateKeyFile /etc/ssl/private/server.key

        BrowserMatch ".*MSIE.*" \
                nokeepalive ssl-unclean-shutdown \
                downgrade-1.0 force-response-1.0

        ErrorLog /var/log/apache2/webmail_mondomaine_com_error.log
        CustomLog /var/log/apache2/webmail_mondomaine_com_access.log combined

        <Directory /var/www/webmailmondomaine.com>
                Options -Indexes Includes FollowSymLinks
                AllowOverride ALL
                order allow,deny
                allow from all

                # pour les pieces joints un peu volumineuses
                php_value memory_limit "25M"
                php_value file_uploads "10M"
        </Directory>

        ServerSignature off
</Virtualhost>

<VirtualHost *:80>
        ServerName      webmail.mondomaine.com

        # redirection en https si disponible : c'est sensé etre le cas ;-) 
        <IfModule mod_rewrite.c>
          <IfModule mod_ssl.c>
            <Location />
              RewriteEngine on
              RewriteCond %{HTTPS} !^on$ [NC]
              RewriteRule . https://%{HTTP_HOST}%{REQUEST_URI}  [L]
            </Location>
          </IfModule>
        </IfModule>

        DocumentRoot    /var/www/webmail.mondomaine.com

        ErrorLog /var/log/apache2/webmail_mondomaine_com_error.log
        CustomLog /var/log/apache2/webmail_mondomaine_com_access.log combined

        ServerSignature off
</Virtualhost>

Paramétrage

  • Nous allons paramétrer roundcube en utilisant les standards debian : la configuration se fait dans /etc/roundcube.
    mkdir /etc/roundcube
    cp /var/www/webmail.mondomaine.com/config/* /etc/roundcube/
    mv /var/www/webmail.mondomaine.com/config /var/www/webmail.mondomaine.com/config.orig
    chmod go-rwx /var/www/webmail.mondomaine.com/config.orig
    ln -s /etc/roundcube/ /var/www/webmail.mondomaine.com/config
  • Renommer les fichiers /etc/roundcube/db.inc.php.dist , /etc/roundcube/main.inc.php.dist respectivement en /etc/roundcube/db.inc.php et /etc/roundcube/main.inc.php
  • protéger le fichier /etc/roundcube/db.inc.php :
    chown root:www-data /etc/roundcube/db.inc.php
    chmod 644 /etc/roundcube/db.inc.php
  • La seule ligne qui nous intéresse dans le fichier db.inc.php est :
    $rcmail_config['db_dsnw'] = 'mysql://roundcube:password@localhost/roundcubemail';

    qu'il faut adapter : dans ce cas, il s'agit d'un serveur mysql sur la meme machine, un utilisateur nommé “roundcube” utilisant le mot de passe “password” pour accéder a la base de données “roundcubemail”

Il vaut mieux choisir et mettre un vrai mot de passe, par exemple généré à l'aide de la commande “pwgen”
  • fichier /etc/roundcube/main.inc.php : mettre le temps de l'installation :
    $rcmail_config['enable_installer'] = true;
  • Reglage des permissions sur les repertoires (en accord avec le fichier de configuration “main.inc.php”) :
    chown root:www-data temp/ logs/
    chmod g+rwx temp/ logs/

base de donnée MySQL

  • Création de la base de données :
    mysql -u root -p
    > create database roundcubemail;
    > GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost IDENTIFIED BY 'password';
    > FLUSH PRIVILEGES;
    > quit
Le mot de passe doit etre adapté : mettre celui que vous avez choisi plus haut
  • Population de la base de données :
    mysql -u roundcube -p roundcubemail < /var/www/webmail.mondomaine.com/SQL/mysql.initial.sql
sysadmin/install_roundcube.1260005975.txt.gz · Dernière modification: 2009/12/05 10:39 par james
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0