Installation RoundCube · 8 min read · Feb 09, 2026

Installation de RoundCube webmail sur Debian 8 (Jessie)

Ce tutoriel montre l’installation de la dernière version de RoundCube webmail sur Debian 8. Roundcube est un client webmail facile à utiliser avec support IMAP et SMTP qui peut être étendu avec des plugins. Sur Debian 7, RoundCube était disponible en tant que paquet .deb, ce n’était pas la dernière version mais au moins, il était facile à installer avec apt. Pour la version actuelle de Debian, il n’y a plus de paquet RoundCube disponible, donc je vais décrire l’installation à partir des sources ici. Ce tutoriel contient un chapitre optionnel qui décrit les étapes pour connecter RoundCube avec le panneau de contrôle d’hébergement ISPConfig 3.

Prérequis

  • Système d’exploitation Debian 8.
  • Serveur web Apache avec mod_php installé. S’il n’y a pas encore d’apache installé, alors jetez un œil à notre guide LAMP ou à la configuration du serveur parfait pour installer un environnement approprié.
  • Un serveur de messagerie (SMTP + IMAP) auquel Roundcube doit se connecter. Cela peut être le serveur local (par exemple, lorsque vous utilisez l’une des configurations de serveur parfait) ou un serveur distant.
  • Le nom d’hôte du serveur que j’utiliserai dans ce tutoriel est server1.example.com avec l’adresse IP 192.168.1.100. Veuillez remplacer cela par l’IP et le nom d’hôte de votre serveur.

Installation de RoundCube

Je vais installer RoundCube dans le répertoire /opt/roundcube pour m’assurer que cette installation ne va pas entrer en conflit avec les paquets système Debian. La première étape consiste à installer wget, créer le répertoire /opt/roundcube et télécharger la dernière version de RoundCube avec wget dans ce répertoire. La version actuelle de RoundCube est 1.1.3 au moment où j’écris ce tutoriel, jetez un œil au site web de RoundCube pour vérifier s’il existe une version plus récente que vous pouvez utiliser.

Connectez-vous en tant qu’utilisateur root sur le shell de votre serveur, puis installez wget et l’éditeur nano :

apt-get install wget nano

Créez le répertoire et entrez-le avec la commande “cd” :

mkdir /opt/roundcube  
cd /opt/roundcube

Téléchargez le fichier tar.gz de RoundCube et décompressez-le :

wget https://downloads.sourceforge.net/project/roundcubemail/roundcubemail/1.1.3/roundcubemail-1.1.3-complete.tar.gz  
tar xfz roundcubemail-1.1.3-complete.tar.gz

Les fichiers RoundCube sont maintenant dans le dossier /opt/roundcube/roundcubemail-1.1.3. La prochaine étape consiste à les déplacer d’un répertoire vers /opt/roundcube.

mv roundcubemail-1.1.3/* .  
mv roundcubemail-1.1.3/.htaccess .

Le point à la fin des deux commandes est requis et fait partie de la commande, ne le manquez pas ! Supprimez le répertoire vide et le fichier tar.gz.

rmdir roundcubemail-1.1.3  
rm roundcubemail-1.1.3-complete.tar.gz

Et changez le propriétaire de tous les fichiers pour l’utilisateur sous lequel le serveur Apache fonctionne.

chown -R www-data:www-data /opt/roundcube

Installer la base de données RoundCube

Roundcube nécessite une base de données pour stocker les paramètres de la boîte aux lettres, les contacts, etc. Je vais utiliser MySQL (ou MariaDB) ici comme backend de base de données. Nous allons maintenant créer une base de données avec le nom “roundcubemail” et un utilisateur avec le nom “roundcube” dans MySQL.

Connectez-vous au serveur MySQL avec la commande suivante :

mysql --defaults-file=/etc/mysql/debian.cnf

Ensuite, exécutez les commandes suivantes sur le shell de la base de données MySQL pour créer la base de données et l’utilisateur de la base de données. Remplacez le mot “secretpassword” dans les commandes ci-dessous par un mot de passe de votre choix.

CREATE DATABASE roundcubemail;  
GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost IDENTIFIED BY 'secretpassword';  
flush privileges;  
quit

Maintenant, nous allons importer les tables RoundCube à partir du fichier mysql.initial.sql dans notre nouvelle base de données.

Exécutez la commande suivante sur le shell Linux :

mysql --defaults-file=/etc/mysql/debian.cnf roundcubemail < /opt/roundcube/SQL/mysql.initial.sql

Configurer RoundCube et Apache

Dans cette étape, nous allons configurer les détails de la base de données dans RoundCube et ajouter un fichier de configuration RoundCube dans Apache.

Je vais commencer par la configuration de la base de données dans RoundCube. Exécutez les commandes suivantes pour créer un nouveau fichier config.inc.php basé sur le fichier de configuration d’exemple et ouvrez-le dans l’éditeur nano.

cd /opt/roundcube/config  
cp -pf config.inc.php.sample config.inc.php  
nano config.inc.php

Trouvez la ligne de configuration de la base de données qui commence par $config[‘db_dsnw’] et remplacez-la par la ligne suivante :

$config['db_dsnw'] = 'mysql://roundcube:secretpassword@localhost/roundcubemail';

Le mot “secretpassword” doit être remplacé par le mot de passe que vous avez choisi pour la base de données.

Ensuite, recherchez la ligne “smtp_server” et définissez le nom d’hôte de votre serveur SMTP ici. Dans mon cas, le serveur de messagerie est le serveur local, donc je vais définir le serveur sur “localhost”.

$config['smtp_server'] = 'localhost';

Il est maintenant temps de configurer Apache. Je vais créer un nouveau fichier de configuration roundcube.conf dans le dossier /etc/apache2/conf-available/.

nano /etc/apache2/conf-available/roundcube.conf

Ajoutez les lignes suivantes à ce fichier et enregistrez-le.

Alias /roundcube /opt/roundcube  
Alias /webmail /opt/roundcube  
  
  
 Options +FollowSymLinks  
 # AddDefaultCharset UTF-8  
 AddType text/x-component .htc  
   
   
 AddType application/x-httpd-php .php  
 php_flag display_errors Off  
 php_flag log_errors On  
 # php_value error_log logs/errors  
 php_value upload_max_filesize 10M  
 php_value post_max_size 12M  
 php_value memory_limit 64M  
 php_flag zlib.output_compression Off  
 php_flag magic_quotes_gpc Off  
 php_flag magic_quotes_runtime Off  
 php_flag zend.ze1_compatibility_mode Off  
 php_flag suhosin.session.encrypt Off  
 #php_value session.cookie_path /  
 php_flag session.auto_start Off  
 php_value session.gc_maxlifetime 21600  
 php_value session.gc_divisor 500  
 php_value session.gc_probability 1  
   
  
   
 RewriteEngine On  
 RewriteRule ^favicon\.ico$ skins/larry/images/favicon.ico  
 # règles de sécurité :  
 # - refuser l'accès aux fichiers ne contenant pas un point ou commençant par un point  
 # dans tous les emplacements sauf le répertoire d'installation  
 RewriteRule ^(?!installer)(\.\?[^\.]+)$ - [F]  
 # - refuser l'accès à certains emplacements  
 RewriteRule ^/?(\.git|\.tx|SQL|bin|config|logs|temp|tests|program\/(include|lib|localization|steps)) - [F]  
 # - refuser l'accès à certains fichiers de documentation  
 RewriteRule /?(README\.md|composer\.json-dist|composer\.json|package\.xml)$ - [F]  
   
  
   
 SetOutputFilter DEFLATE  
   
  
   
 ExpiresActive On  
 ExpiresDefault "access plus 1 month"  
   
  
 FileETag MTime Size  
  
   
 Options -Indexes  
   
  
 AllowOverride None  
 Require all granted  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  
  
  
  
 Options -FollowSymLinks  
 AllowOverride None  
 Require all denied  

Les 2 lignes Alias dans les deux premières lignes rendent RoundCube disponible sous /roundcube et /webmail sur votre serveur.

Activez la configuration et rechargez apache :

a2enconf roundcube  
service apache2 reload

C’est tout, RoundCube est maintenant entièrement installé sur votre serveur, et vous pouvez y accéder sur l’IP et le nom d’hôte du serveur via les alias /roundcube et /webmail. L’IP de mon serveur est 192.168.1.100 ; pour cela, je peux ouvrir RoundCube avec http://192.168.1.100/webmail

La connexion RoundCube.

Roundcube - la première page.

Installation du plugin RoundCube ISPConfig (optionnel)

Lorsque votre serveur a iSPConfig 3 installé, il est fortement recommandé d’installer le plugin RoundCube ISPConfig. Cela permet à vos utilisateurs de messagerie de gérer leurs répondeurs automatiques, filtres de messagerie et autres paramètres de boîte aux lettres depuis RoundCube.

Le plugin RoundCube ISPConfig 3 est connecté à ISPConfig 3 avec l’API distante ISPConfig. Pour utiliser cette API, nous avons besoin d’un utilisateur distant.

Connectez-vous à ISPConfig en tant qu’utilisateur “admin”.

Pour créer un tel utilisateur, allez dans Système > Gestion des utilisateurs > Utilisateurs distants et cliquez sur le bouton Ajouter un nouvel utilisateur :

Entrez un nom d’utilisateur et un mot de passe pour le nouvel utilisateur distant. Je vais choisir le nom d’utilisateur “roundcube” et le mot de passe “!fdWEacBOG1d”.

La configuration de l’utilisateur distant permet un contrôle d’accès granulaire ; les fonctions suivantes doivent être activées :

  • Fonctions serveur
  • Fonctions client
  • Fonctions utilisateur de messagerie
  • Fonctions alias de messagerie
  • Fonctions utilisateur de filtre anti-spam
  • Fonctions de politique anti-spam
  • Fonctions fetchmail de messagerie
  • Fonctions de liste blanche anti-spam
  • Fonctions de liste noire anti-spam
  • Fonctions de filtre utilisateur de messagerie

Enfin, cliquez sur Enregistrer.

Les étapes suivantes ont été effectuées sur le shell de votre serveur. Connectez-vous en tant qu’utilisateur root.

Nous allons maintenant installer le certificat SSL ISPConfig dans le magasin de certificats SSL de Debian.

cp /usr/local/ispconfig/interface/ssl/ispserver.crt /usr/local/share/ca-certificates/  
update-ca-certificates

Ouvrez le fichier /etc/php5/cgi/php.ini

nano /etc/php5/apache2/php.ini

Faites défiler vers le bas jusqu’à ce que vous voyiez la section [openssl] du fichier et là, ajoutez la ligne suivante :

openssl.cafile=/etc/ssl/certs/ca-certificates.crt

Puis redémarrez apache.

service apache2 restart

Pour télécharger l’addon, installez d’abord le client Git.

apt-get install git

Obtenez la dernière version du plugin ISPConfig RoundCube :

cd /tmp  
git clone https://github.com/w2c/ispconfig3_roundcube.git  
cd /tmp/ispconfig3_roundcube/

Et déplacez le plugin dans le répertoire des plugins de roundcube.

mv ispconfig3_* /opt/roundcube/plugins  
cd /opt/roundcube/plugins

Créez un nouveau fichier config.inc.php pour le plugin basé sur le fichier de configuration d’exemple et ouvrez le fichier dans l’éditeur nano.

mv ispconfig3_account/config/config.inc.php.dist ispconfig3_account/config/config.inc.php  
nano ispconfig3_account/config/config.inc.php

Remplissez les détails de l’utilisateur distant et enregistrez le fichier.

Remplacez server1.example.com par le nom d’hôte du serveur. Lorsque SSL (HTTPS) est utilisé pour la connexion API distante, il est important que le nom d’hôte dans la configuration RoundCube corresponde au nom d’hôte du certificat SSL de l’interface ISPConfig. Vous pouvez vérifier le nom d’hôte du certificat SSL ISPConfig avec la commande :

openssl x509 -in /usr/local/share/ca-certificates/ispserver.crt -text -noout | grep Subject:

Le résultat est dans mon cas :

Subject: C=DE, ST=Niedersachsen, L=Lueneburg, O=ISPConfig UG, OU=IT, CN=server1.example.com/[email protected]

Donc le nom d’hôte “server1.example.com” dans le fichier de configuration du plugin correspond au nom d’hôte dans le certificat SSL.

Maintenant, nous allons activer les nouveaux plugins dans RoundCube. Ouvrez le fichier de configuration dans un éditeur :

nano /opt/roundcube/config/config.inc.php

et ajoutez la ligne suivante à la fin du fichier :

$rcmail_config['plugins'] = array("jqueryui", "ispconfig3_account", "ispconfig3_autoreply", "ispconfig3_pass", "ispconfig3_spam", "ispconfig3_fetchmail", "ispconfig3_filter");

Maintenant, vous pouvez vous connecter à RoundCube, les nouvelles options peuvent être trouvées sous Paramètres > Compte.

Compte général.

Configuration du filtre de messagerie.

Configuration de fetchmail.

Liens

  • Debian
  • Roundcube
  • Plugin ISPConfig Roundcube
Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.