Ceci est une ancienne révision du document !
Table des matières
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" php_value date.timezone "Europe/Paris" </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”
- 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
- Population de la base de données :
mysql -u roundcube -p roundcubemail < /var/www/webmail.mondomaine.com/SQL/mysql.initial.sql
Finalisation de l'installation
- Aller sur https://webmail.mondomaine.com/installer/
Il ne devrait pas y avoir de “NOT OK” vous empechant d'accéder a l'etape 2 qui va créer effectivement la configuration. - Vous pouvez ensuite vérfifier a l'étape 3 que vous pouvez :
- envoyer un email depuis roundcube
- vous connecter sur votre serveur imap
- editer le fichier /etc/roundcube/main.inc.php pour remettre
$rcmail_config['enable_installer'] = false;
- exécutez la commande suivante pour interdi l'acces aux répertoires :
chmod go-rwx /var/www/webmail.mondomaine.com/installer/
Enjoy
Et voila : maintenant vous devriez avoir un superbe webmail accessible via https://webmail.mondomaine.com