HowTo RoundCube et debian
Un article de TcWeb.
Mode opératoire pour installer la version svn de RoundCube sur une debian (etch, lenny ou sid). Celà doit aussi fonctionner avec d'autres distributions.
Depuis le 04/05/2007 un paquet roundcube officiel à fait sont entrée dans debian sid, 1 mois plus tard il est entré dans testing. Il est fortement conseillé d'utiliser la version empaqueté présente dans les dépos debian officiel. Le seule intérêt de suivre la procédure ci-dessous, c'est d'utiliser la version subversion.
Récupération des sources de roundcube directement dans le svn
cd /usr/local/share svn checkout https://svn.roundcube.net/trunk/roundcubemail roundcube
Création et préparation du répertoire de travaille, dans la "debian policy" les applications web doivent travailler dans /var/lib/mon_applie
mkdir -p /var/lib/roundcube/temp
chown www-data:www-data /var/lib/roundcube/temp
cd /var/lib/roundcube
ln -s /usr/local/share/roundcube/bin /usr/local/share/roundcube/index.php \
/usr/local/share/roundcube/program /usr/local/share/roundcube/skins \
/usr/local/share/roundcube/.htaccess .
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'; > quit
Chargement de la base
mysql -u root -p roundcubemail < /usr/local/share/roundcube/SQL/mysql5.initial.sql
Préparer le répertoire de configuration, dans debian, la totalité des fichiers de configuration doivent se trouver dans /etc/
mkdir /etc/roundcube ln -s /etc/roundcube /var/lib/roundcube/config cp /usr/local/share/roundcube/config/db.inc.php.dist /etc/roundcube/db.inc.php cp /usr/local/share/roundcube/config/main.inc.php.dist /etc/roundcube/main.inc.php chown www-data:www-data /etc/roundcube/db.inc.php /etc/roundcube/main.inc.php chmod 640 /etc/roundcube/db.inc.php /etc/roundcube/main.inc.php
Configurer RoundCube, voir le site de roundcube pour plus d'informations
vi /etc/roundcube/db.inc.php vi /etc/roundcube/main.inc.php
Configurer les logs
mkdir /var/log/roundcube chown www-data:www-data /var/log/roundcube ln -s /var/log/roundcube /var/lib/roundcube/logs
Configurer Apache2, voir l'exemple de fichier de configuration en fin d'article
vi /etc/apache2/sites-available/roundcube a2ensite roundcube invoke-rc.d apache2 reload
Configurer logrotate pour une rotation intelligente des logs :
vi /etc/logrotate.d/roundcube
Exemple de fichier /etc/logrotate.d/roundcube
/var/log/roundcube/errors /var/log/roundcube/sendmail {
daily
missingok
rotate 10
compress
delaycompress
notifempty
create 640 www-data www-data
}
Exemple de fichier /etc/apache2/sites-available/roundcube
<VirtualHost *:80>
DocumentRoot /var/lib/roundcube
ServerName webmail.tcweb.org
ServerAlias webmail.tcweb.fr
ServerAlias webmail.tcweb.eu
# redirect to https when available (thanks omen@descolada.dartmouth.edu)
#
# Note: There are multiple ways to do this, and which one is suitable for
# your site's configuration depends. Consult the apache documentation if
# you're unsure, as this example might not work everywhere.
#
<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>
</VirtualHost>
# Le vhost en https
<VirtualHost *:443>
DocumentRoot /var/lib/roundcube
ServerName webmail.tcweb.org
ServerAlias webmail.tcweb.fr
ServerAlias webmail.tcweb.eu
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/tcweb.org.pem
</VirtualHost>





