Avancé ⏱ 60 min de mise en œuvre Mis à jour le 11 août 2026

Mailcow : héberger son propre serveur mail professionnel

Héberger ses emails soi-même, c'est possible avec Mailcow. Mais c'est l'un des services les plus exigeants qui soient. Voici comment le faire, et surtout ce qu'il faut savoir avant de se lancer.

Héberger ses adresses email sur son propre domaine permet de garder la maîtrise des boîtes, des journaux et des politiques de conservation. Pour une PME, une agence ou un professionnel, cette souveraineté réduit la dépendance aux grandes plateformes et facilite le choix d’une infrastructure située en France, soumise au RGPD.

Mailcow, aussi appelé mailcow dockerized, rassemble dans une même suite Postfix pour l’envoi, Dovecot pour les boîtes IMAP, SOGo pour le webmail, Rspamd pour l’antispam et ClamAV pour l’analyse antivirus. Son interface permet d’administrer plusieurs domaines, utilisateurs, alias et quotas sans assembler manuellement chaque composant.

Cette simplicité relative ne doit pas masquer la réalité : un serveur mail est l’un des services les plus exigeants à exploiter. Une installation fonctionnelle ne garantit jamais que les messages arriveront dans la boîte de réception. L’auto-hébergement convient aux organisations qui veulent davantage de souveraineté et acceptent une maintenance continue. Pour beaucoup d’entreprises, un service mail géré reste le choix le plus simple.

Ce qu’il faut savoir avant de se lancer

Le premier point critique est le port TCP 25 sortant. Il sert aux échanges SMTP entre serveurs et de nombreux hébergeurs le bloquent par défaut pour limiter le spam. Sans ce port, Mailcow ne pourra pas distribuer directement les messages aux serveurs destinataires. Vérifiez explicitement auprès de votre hébergeur que le port 25 sortant peut être ouvert. Ne supposez jamais qu’il l’est parce que les ports web ou le port SMTP authentifié sont accessibles.

L’adresse IP publique du VPS est tout aussi importante. Elle doit être fixe, ne pas figurer sur des listes de blocage et bénéficier d’une réputation correcte. Une IP précédemment utilisée pour du spam peut compromettre la délivrabilité dès le premier jour. Une adresse neuve ne possède pas encore de réputation : il faut augmenter progressivement le volume d’envoi, éviter les campagnes massives et surveiller les rejets.

Le reverse DNS, aussi appelé PTR, doit être configurable. Il associe l’adresse IP au nom complet du serveur, par exemple mail.entreprise.fr. Ce nom doit ensuite revenir vers la même adresse IP au moyen d’un enregistrement A. Le PTR est généralement configuré depuis l’espace client de l’hébergeur ou par son support, et non chez le fournisseur DNS du domaine.

La configuration DNS est obligatoire et ne tolère pas l’approximation. Les enregistrements MX, SPF, DKIM, DMARC et PTR doivent être cohérents. Une erreur peut envoyer les messages dans les indésirables ou provoquer leur rejet. Il faut aussi éviter de publier un enregistrement AAAA si Mailcow ne dispose pas d’une connectivité IPv6 complète avec un reverse DNS adapté.

Mailcow demande enfin une marge de mémoire confortable. ClamAV est gourmand en RAM et l’indexation de recherche, notamment avec Solr lorsqu’il est activé, augmente encore la consommation. Ne dimensionnez pas le VPS uniquement pour que les conteneurs démarrent. Prévoyez de la capacité pour les pics, les mises à jour, la croissance des boîtes et les analyses antivirus.

La délivrabilité reste un travail permanent. La réputation de l’IP, le taux de messages rejetés, les comptes compromis, les listes de blocage et les politiques des grands fournisseurs évoluent. Il faut surveiller les journaux SMTP et les rapports DMARC, puis intervenir rapidement en cas d’anomalie.

Prérequis pour installer Mailcow

Une installation professionnelle nécessite au minimum :

  • Un VPS dédié à la messagerie, avec une adresse IPv4 fixe et une marge de RAM suffisante.
  • Un système Linux pris en charge, maintenu à jour, avec Docker Engine et le module Docker Compose (voir installer Docker sur un VPS).
  • Le port 25 sortant ouvert, après confirmation de l’hébergeur.
  • Les ports utiles autorisés par le pare-feu, notamment SMTP, Submission, IMAP, HTTP et HTTPS.
  • Un nom de domaine et un accès complet à sa zone DNS.
  • La possibilité de configurer le PTR de l’adresse IP.
  • Un nom d’hôte réservé, comme mail.entreprise.fr.
  • Un stockage dimensionné selon le nombre de boîtes, leur quota et la durée de conservation.
  • Une destination de sauvegarde distincte du VPS.

TalCloud est un hébergeur français proposant des serveurs en France, du stockage NVMe, une protection Anti-DDoS Netrix et un support humain, dans un contexte adapté aux exigences de souveraineté et de RGPD. Ses offres VPS démarrent à 4,99 € par mois. Avant d’envisager Mailcow sur cette infrastructure, demandez confirmation concernant l’ouverture du port 25 sortant, la fourniture d’une IP fixe et la configuration du reverse DNS.

Installer Mailcow avec Docker Compose

Connectez-vous au VPS avec un compte disposant des droits nécessaires, puis installez Git, Docker et Docker Compose selon la procédure de votre distribution. Clonez ensuite le dépôt officiel :

git clone https://github.com/mailcow/mailcow-dockerized
cd mailcow-dockerized

Lancez le générateur de configuration :

./generate_config.sh

Lorsque le script demande le nom d’hôte, indiquez un FQDN dédié comme mail.entreprise.fr. N’utilisez ni le domaine racine seul, ni un nom déjà attribué à un site web. Le script crée le fichier mailcow.conf, qui contient les principaux paramètres de l’instance.

Téléchargez les images et démarrez les conteneurs :

docker compose pull
docker compose up -d

Contrôlez leur état :

docker compose ps
docker compose logs --tail=100

Mailcow peut obtenir automatiquement un certificat TLS lorsque le DNS est correct et que les ports 80 et 443 sont joignables. Attendez la propagation de l’enregistrement A avant de diagnostiquer trop rapidement un échec de certificat.

Configurer les enregistrements DNS

Supposons que le domaine soit entreprise.fr, le serveur mail.entreprise.fr et son IPv4 203.0.113.10. Adaptez chaque valeur à votre environnement réel.

Créez d’abord l’adresse du serveur :

mail.entreprise.fr.    A      203.0.113.10

Le domaine doit ensuite désigner ce serveur comme destination des emails :

entreprise.fr.         MX 10  mail.entreprise.fr.

Ajoutez un SPF autorisant l’infrastructure déclarée par le MX :

entreprise.fr.         TXT    "v=spf1 mx -all"

N’ajoutez pas plusieurs enregistrements SPF au même domaine. Si d’autres services envoient des emails pour votre compte, fusionnez leurs autorisations dans une seule politique.

Dans l’interface Mailcow, générez ou récupérez la clé DKIM du domaine. Recopiez exactement le sélecteur, le nom et la valeur TXT affichés. Avec le sélecteur courant dkim, l’enregistrement ressemble à ceci :

dkim._domainkey.entreprise.fr.    TXT    "v=DKIM1; k=rsa; p=CLE_PUBLIQUE"

La clé doit rester sur une seule valeur logique, même si le fournisseur DNS l’affiche en plusieurs fragments.

Ajoutez ensuite DMARC. Commencez par une politique d’observation afin d’identifier toutes les sources légitimes :

_dmarc.entreprise.fr.    TXT    "v=DMARC1; p=none; rua=mailto:dmarc@entreprise.fr; adkim=s; aspf=s"

Après analyse des rapports, passez progressivement à p=quarantine, puis à p=reject si toutes les sources sont correctement authentifiées. Assurez-vous que la boîte utilisée dans rua existe et peut recevoir les rapports.

Demandez enfin à l’hébergeur d’associer l’IP au serveur :

203.0.113.10 -> mail.entreprise.fr

Le résultat attendu est une correspondance directe et inverse cohérente : mail.entreprise.fr pointe vers l’IP, et le PTR de cette IP revient vers mail.entreprise.fr.

Créer le domaine et les premières boîtes

Ouvrez l’interface d’administration avec l’adresse HTTPS du serveur. Utilisez les identifiants initiaux prévus par la version installée, puis remplacez immédiatement le mot de passe administrateur. Activez l’authentification multifacteur si elle est disponible dans votre configuration.

Ajoutez entreprise.fr dans la gestion des domaines. Définissez le nombre maximal de boîtes, les quotas et les limites d’envoi en fonction des usages réels. Créez ensuite les comptes, par exemple contact@entreprise.fr, ainsi que les alias nécessaires. Notre guide sur l’adresse email professionnelle rappelle les bonnes pratiques associées.

Les utilisateurs peuvent accéder au webmail SOGo depuis l’interface Mailcow. Ils peuvent également configurer un client compatible IMAP et SMTP authentifié. Imposez des mots de passe uniques et longs, puis documentez les paramètres de connexion pour éviter le recours à des ports ou protocoles obsolètes.

Tester la délivrabilité

Envoyez des messages vers plusieurs fournisseurs et examinez leurs en-têtes complets. Les résultats SPF, DKIM et DMARC doivent indiquer une validation réussie, avec un alignement sur le domaine visible dans l’adresse d’expédition.

Des services de scoring comme mail-tester.com peuvent signaler les problèmes courants. Des outils de diagnostic DNS et de réputation comme MXToolbox complètent l’analyse. Un bon score ponctuel ne remplace toutefois pas une surveillance dans la durée.

Testez aussi les réponses, les pièces jointes, les alias, les rejets et les messages provenant de l’extérieur. Consultez les journaux Postfix et Rspamd lorsque le comportement diffère selon le destinataire. Ne lancez pas immédiatement un volume important depuis une nouvelle IP.

Sécuriser et maintenir Mailcow

Réservez le VPS à Mailcow afin de limiter les conflits de ports et la surface d’attaque. Utilisez des clés SSH, désactivez les accès inutiles et appliquez un pare-feu strict. Surveillez les tentatives de connexion, les files d’attente SMTP et toute hausse soudaine du volume sortant, souvent révélatrice d’un compte compromis.

Mailcow fournit un script de mise à jour. Depuis le répertoire du projet, exécutez régulièrement :

./update.sh

Lisez les informations affichées avant de valider une mise à jour majeure. Planifiez l’opération, vérifiez l’espace disque et réalisez une sauvegarde préalable.

Le script de sauvegarde peut protéger les données Mailcow, notamment les boîtes vmail, la base de données et les volumes applicatifs :

MAILCOW_BACKUP_LOCATION=/srv/mailcow-backup ./helper-scripts/backup_and_restore.sh backup all

La destination ne devrait pas rester uniquement sur le même VPS. Copiez les sauvegardes vers un stockage séparé, chiffrez-les, définissez une politique de rétention et testez régulièrement une restauration. Sauvegardez également les fichiers de configuration utiles, dont mailcow.conf, en protégeant leurs secrets. Notre guide sur la stratégie de sauvegarde d’un serveur complète cette approche.

Mailcow rend l’administration d’une plateforme email complète beaucoup plus accessible, mais il ne supprime ni les contraintes réseau ni le travail de délivrabilité. Le bon choix dépend donc moins de l’installation elle-même que de la capacité de l’organisation à surveiller, mettre à jour, sauvegarder et sécuriser le service sur le long terme.