Roundcube est un client de messagerie accessible depuis un navigateur. Il fournit un accès simple pour gérer les e-mails via une interface web.
Roundcube peut être installé de deux manières : soit en le déployant avec Docker Compose, soit en l'installant directement sur un serveur Ubuntu pour une approche plus manuelle.
Le guide suivant est un manuel complet qui couvre tout, des prérequis et de l'installation au dépannage et à la gestion des comptes dans Roundcube Webmail. Commençons par les raisons d'utilisation.
Voici quelques-unes des principales fonctionnalités qui distinguent Roundcube en tant que client mail :
Pour suivre ce tutoriel, vous aurez besoin de :
sudo apt update
sudo apt install docker docker-compose
Les conteneurs Docker emballent toutes les dépendances nécessaires pour simplifier l'installation. Voici un fichier docker-compose.yml fonctionnel pour lancer Roundcube Webmail avec les plugins thunderbird_labels, show_folder_size et tls_icon.
version: '3'
services:
roundcubemail:
image: roundcube/roundcubemail:latest
container_name: roundcubemail
volumes:
- ./www:/var/www/html
- ./db/sqlite:/var/roundcube/db
ports:
- 9002:80
environment:
ROUNDCUBEMAIL_DB_TYPE: sqlite
ROUNDCUBEMAIL_SKIN: elastic
ROUNDCUBEMAIL_DEFAULT_HOST: "ssl://imap.gmail.com"
ROUNDCUBEMAIL_SMTP_SERVER: "ssl://smtp.gmail.com"
ROUNDCUBEMAIL_DEFAULT_PORT: 993
ROUNDCUBEMAIL_SMTP_PORT: 465
ROUNDCUBEMAIL_COMPOSER_PLUGINS: "weird-birds/thunderbird_labels,jfcherng-roundcube/show-folder-size,germancoding/tls_icon:^1.2"
ROUNDCUBEMAIL_PLUGINS: thunderbird_labels, show_folder_size, tls_icon
Explication des variables d'environnement :
ROUNDCUBEMAIL_SKIN : indique le thème de l'interface. "Elastic" est le thème moderne ; "Classic" est un thème plus ancien.ROUNDCUBEMAIL_DEFAULT_HOST : hôte IMAP par défaut auquel Roundcube tentera de se connecter.ROUNDCUBEMAIL_DEFAULT_PORT : port IMAP.ROUNDCUBEMAIL_SMTP_SERVER : serveur SMTP utilisé pour l'envoi des e-mails.ROUNDCUBE_SMTP_PORT : port SMTP.ROUNDCUBEMAIL_COMPOSER_PLUGINS : ces extensions améliorent l'expérience et la présentation de Roundcube.ROUNDCUBEMAIL_PLUGINS : active les plugins installés par la variable précédente.Votre fournisseur de messagerie vous donnera les détails du serveur IMAP, du port IMAP, du serveur SMTP et des réglages SMTP. Ajustez ces variables en conséquence et vérifiez le chiffrement (par ex. SSL/TLS).
Pour déployer ce fichier docker-compose, assurez-vous d'abord que Docker et Docker Compose sont installés :
docker --version && docker-compose --version
Démarrez le service Docker :
systemctl start docker
Déployez le compose :
docker-compose up
Il peut falloir 2–3 minutes pour que Roundcube fonctionne complètement sur <votre-IP-serveur>:9092. Pour commencer à gérer vos e-mails, saisissez les identifiants fournis par votre serveur de messagerie.
Si vous utilisez Gmail ou Outlook, le nom d'utilisateur est votre adresse e-mail (ex. user@gmail.com).

Après une connexion réussie, vous verrez une interface similaire.

Roundcube est une application LAMP écrite en PHP et compatible avec plusieurs bases de données (MySQL, PostgreSQL, SQLite).
Avant l'installation, mettez à jour la liste des paquets et leurs versions :
sudo apt update
sudo apt install php apache2
Installez et activez également les extensions PHP suivantes :
sudo apt install php-mbstring php-xml php-imap php-sqlite3 php-json php-curl php-zip php-gd php-intl
Voici ce que fait chaque extension :
php-mbstring : prise en charge des encodages multi-octetsphp-xml : manipulation de documents XMLphp-imap : connexion aux serveurs IMAPphp-sqlite3 : adaptateur PHP pour SQLitephp-json : encodage et décodage JSONphp-curl : envoi de requêtes HTTP via curlphp-zip : lecture et écriture d'archives ZIPphp-gd : manipulation d'imagesphp-intl : support des langues, cultures et préférences régionalesTéléchargez le code source depuis https://roundcube.net/download/ et choisissez la version complète et stable pour faciliter le déploiement.

Téléchargez l'application dans le répertoire /var/www :
cd /var/www
sudo wget https://github.com/roundcube/roundcubemail/releases/download/1.6.10/roundcubemail-1.6.10-complete.tar.gz
Une façon simple de permettre à Apache de lire et écrire dans le répertoire web est de changer le propriétaire vers l'utilisateur www-data :
sudo tar xvf roundcubemail-1.6.10-complete.tar.gz
sudo chown -R www-data:www-data roundcube-1.6.10
cd roundcube-1.6.10
Le fichier de configuration détermine les plugins utilisés, le thème, et les serveurs SMTP/IMAP.
Faites une copie du fichier de configuration par défaut (assurez-vous d'être dans /var/www/roundcube-1.6.10) :
sudo cp config/config.inc.php.sample config/config.inc.php
Ouvrez le fichier et éditez les paramètres importants : connexion à la base, imap_host et smtp_host :
sudo nano config.inc.php

Exemple de configuration pour le serveur Outlook (ajustez selon votre fournisseur) :
$config[‘db_dsnw’] = ‘sqlite:////var/www/roundcubemail-1.6.10/config/db.sqlite?mode=0640’;
$config[‘imap_host’] = ‘ssl://imap.office365.com:993’;
$config[‘smtp_host’] = ‘ssl://smtp-mail.outlook.com:587’;
Pour utiliser des plugins, téléchargez-les dans le dossier plugins ou gérez-les via Composer, puis activez-les dans la configuration.

Créez un fichier roundcube_site.conf dans /etc/apache2/sites-available avec le contenu suivant :
<VirtualHost *:80>
DocumentRoot /var/www/roundcubemail-1.6.10
# ServerName roundcube.CHANGEME_YOURDOMAIN.com # Replace it
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory /var/www/roundcubemail-1.6.10>
AllowOverride All
Require all granted
</Directory>
# Block access to the database
<FilesMatch "\.sqlite$">
Require all denied
</FilesMatch>
</VirtualHost>
Activez le nouveau site Apache :
sudo a2ensite roundcube_site.conf
Désactivez le site par défaut qui peut causer des conflits :
sudo a2dissite 000_default.conf
Rechargez Apache pour appliquer les modifications :
sudo systemctl reload apache2
Accédez à l'interface Roundcube en visitant l'IP de votre serveur. Il vous demandera un nom d'utilisateur et un mot de passe. Vous pouvez obtenir ces identifiants auprès de votre fournisseur de messagerie.
Astuce rapide : si l'installation ne fonctionne pas, inspectez le fichier errors.log.

Consultez également les journaux Apache pour plus d'informations :
tail -f /var/log/apache2/access.log
tail -f /var/log/apache2/error.log
Pour ajouter des comptes supplémentaires, allez dans onglet Paramètres > Identités > Créer.

Vous pouvez importer tous vos contacts depuis un fichier vCard ou CSV via l'onglet Contacts en cliquant sur l'icône Importer en haut.
Si vous souhaitez importer CardDAV, ajoutez le plugin Composer roundcube/carddav.

Les destinataires collectés afficheront une liste des contacts auparavant contactés. De même, les expéditeurs de confiance afficheront une liste d'expéditeurs connus.
Voici quelques plugins populaires à mentionner :
Larry : le thème Larry.
Contextmenu : active les menus contextuels au clic droit dans différentes parties de l'interface.
Gravatar : récupère les images Gravatar pour les e-mails.
Identity_switch : permet de changer d'identité utilisateur au cours d'une même session.
Advanced Search : recherche rapide et performante dans les e-mails.
Sauserprefs : aide à lutter contre le spam dans la boîte de réception.
Calendar : fournit une intégration de calendrier.
Roundcube_caldav : CalDAV permet de gérer des événements sur des systèmes comme Google Calendar. Indispensable pour la collaboration d'équipe.
Identity SMTP : permet des configurations SMTP différentes par identité.
Carddav : standard pour stocker et importer des contacts au format vCard.
Customizr : permet de personnaliser logos et styles.
Fail2ban : affiche le nombre de tentatives échouées.
Html5_notifier : envoie des notifications de bureau pour l'activité e-mail.
Thunderbird_labels : attribue des étiquettes aux e-mails.
Si l'expérience Roundcube ne vous convient pas, voici quelques alternatives à considérer :
Horde Webmail : suite intégrée (mail, calendrier, gestion des tâches) pour la productivité d'équipe.
Zimbra Webmail : disponible en open source et commercial ; reconnu pour sa sécurité, son filtrage anti-spam et l'authentification à deux facteurs.
Rainloop : design épuré et moderne ; ne nécessite pas de base de données et est réputé pour sa simplicité.
Roundcube propose des centaines de plugins pour personnaliser l'expérience. Avec un déploiement Docker, Roundcube peut être opérationnel en quelques minutes.
Si vous maîtrisez l'administration serveur et recherchez une solution webmail légère et open source, Roundcube peut être un excellent choix. En revanche, si vous avez besoin de fonctionnalités avancées ou préférez éviter l'auto-hébergement, envisagez d'autres options.