Modoboa Pro est disponible
25 juin 2026 — Antoine Nguyen
Cette première version propose la gestion des hôtes virtuels : la possibilité de transformer une instance Modoboa unique en une véritable plateforme d'hébergement mail multi-tenant et marque blanche. C'est la première brique de Modoboa Pro, et d'autres fonctionnalités arriveront dans un futur proche.
Si vous hébergez la messagerie de plusieurs organisations — une agence avec ses clients, un MSP, ou une entreprise gérant plusieurs marques — vous avez sans doute rêvé que chaque client dispose de son propre portail personnalisé, sur son propre nom de domaine, avec un HTTPS qui fonctionne tout seul. C'est exactement ce que proposent les hôtes virtuels, sans déployer un serveur par client.
Ce que les hôtes virtuels vous apportent
- Hôtes virtuels — donnez à chaque client son propre nom d'hôte public (ex. mail.acme.com, mail.example.org) servi depuis la même instance Modoboa.
- HTTPS automatique — les certificats TLS sont émis et renouvelés automatiquement via Let's Encrypt. Plus de certbot manuel, plus de rappels dans l'agenda, plus de certificats expirés.
- Personnalisation par client — chaque nom d'hôte peut porter ses propres logos (page de connexion, menu latéral, formulaire d'inscription) et sa propre palette de couleurs. Vos clients voient leur marque, pas la vôtre.
- Isolation des tenants — les utilisateurs qui se connectent via un nom d'hôte donné n'accèdent qu'aux domaines de ce tenant. Une seule instance, plusieurs portes d'entrée isolées.
- Provisioning en un clic — créer un hôte virtuel génère automatiquement sa configuration Nginx, demande son certificat et le met en ligne. Rien à câbler à la main.
Le résultat : la simplicité d'exploitation d'une instance Modoboa unique, avec l'apparence et les frontières de déploiements dédiés par client.
Pourquoi nous l'avons construit
Modoboa a toujours eu pour but de rendre l'hébergement mail accessible. Mais l'exploiter de manière professionnelle — héberger pour d'autres, à grande échelle, sous plusieurs marques — imposait beaucoup de plomberie : configs de reverse-proxy, cycle de vie des certificats, bidouilles de thème et règles d'accès. Modoboa Pro est l'endroit où nous intégrons ce type d'outillage professionnel dans l'interface d'administration que vous utilisez déjà, et la gestion des hôtes virtuels n'est qu'un début — d'autres fonctionnalités pro suivront dans les prochaines versions.
Sous le capot (pour les administrateurs)
Modoboa Pro se présente comme une extension Modoboa accompagnée d'un frontend Vue 3 / Vuetify chargé à l'exécution par l'instance hôte. Voici ce qui se passe réellement.
Hôtes virtuels et chaîne de provisioning
Chaque hôte virtuel est un nom d'hôte public lié à un ou plusieurs de vos domaines mail. Sa création déclenche une chaîne de provisioning stricte et sécurisée :
config Nginx bootstrap → émission du certificat Let's Encrypt → config Nginx HTTPS finale → prêt
- Un bloc Nginx minimal en HTTP est écrit d'abord, afin de servir le challenge ACME HTTP-01.
- Le certificat est émis, puis le bloc final est généré avec HTTPS, une redirection HTTP→HTTPS, l'upstream uWSGI et le service des fichiers statiques.
- Toute erreur annule les étapes restantes et enregistre le message, pour ne jamais aboutir à une config à moitié cassée. Les états sont pending, ready ou failed, et une action Relancer le provisioning rejoue la chaîne une fois la cause corrigée.
Les opérations système (écriture des configs, gestion des liens sites-enabled/, rechargement de Nginx) tournent sur une file privilégiée dédiée — le travail sur les certificats tourne sur la file modoboa, donc un appel ACME lent ne bloque jamais rien d'autre.
Renouvellement automatique des certificats
Une tâche cron quotidienne, check_certificate_renewals, parcourt chaque hôte activé et planifie un job de renouvellement indépendant pour tout certificat sous le seuil configurable (30 jours par défaut). Les hôtes désactivés sont ignorés — ils ne peuvent de toute façon pas répondre au challenge ACME.
À enregistrer dans le cron_config.py de votre Modoboa hôte :
from modoboa_pro.virtualhosts import jobs as virtualhosts_jobs
register(
virtualhosts_jobs.check_certificate_renewals,
queue_name="modoboa",
cron="17 3 * * *",
)
Thème par hôte et isolation
Chaque hôte virtuel expose cinq surcharges de couleur (primaire / claire / foncée / secondaire / libellé) et trois emplacements de logo (connexion, menu, formulaire de création). Les champs vides retombent sur vos valeurs par défaut, et le thème est résolu par requête selon le nom d'hôte — l'effet est immédiat, sans re-provisioning.
L'isolation est appliquée à la connexion : un utilisateur non super-administrateur qui se connecte via le nom d'hôte d'un tenant est refusé, sauf si son domaine de boîte (ou un domaine qu'il administre) est lié à cet hôte. Les super-administrateurs et le nom d'hôte principal ne sont jamais restreints.
Configuration et API
Les paramètres globaux d'ACME et de Nginx (chemin de stockage, e-mail du compte, seuil de renouvellement, répertoires de configuration, socket uWSGI, chemin d'accès à l'instance) sont gérés via les méthodes GET/PUT /api/v2/parameters/virtualhosts/. Le cycle de vie des hôtes virtuels est géré par une API REST « superadmin » accessible à l'adresse /api/v2/virtualhosts/ (liste, suppression, définition de l'état, nouvelle tentative de provisionnement, lecture/mise à jour du thème, téléchargement/suppression des logos).
Licence
L'accès aux fonctionnalités Pro est soumis à une inscription à l'installation simple — il ne s'agit pas d'un système DRM. Vous définissez MODOBOA_PRO_LICENSE_KEY dans les paramètres ; l'installation s'enregistre une seule fois auprès du point de terminaison de licence et ne stocke qu'un hachage SHA-256 de la clé (jamais la clé elle-même). Tant qu'elle n'est pas enregistrée, le plugin affiche un écran d'activation et ses points de terminaison renvoient le code d'erreur 403 « license_required ». Si vous supprimez ou modifiez la clé, le plugin se verrouille à nouveau immédiatement.
Pour commencer
Modoboa Pro est désormais disponible. Ajoutez l'extension à votre instance Modoboa, configurez votre clé de licence, activez-la, puis créez votre premier hôte virtuel depuis l'interface d'administration.
Il s'agit de la première fonctionnalité de Modoboa Pro — restez à l'écoute, d'autres fonctionnalités professionnelles arrivent bientôt.