myHUB
Sign in

About myHUB

A lightweight, open-source, self-hosted mail server with web mail, calendar and contacts, in both of Canada's official languages.

What it is

myHUB is the web mail for this mail server. You read, write and organise your mail in the browser; there is nothing to install. Unlike most web mail, it does not sit on top of an IMAP server: it works directly with the mail files on disk (the Maildir format, one file per message), which keeps it small, fast and easy to back up. It is free software, released under the GNU Affero General Public License v3.

Self-hosted

Everything runs on one server that its owner controls: receiving and sending mail, filtering, the web application, and the accounts themselves. There is no outside directory, cloud service or third party involved, and your mail, calendars and contacts never leave the server. (The only thing it fetches from outside is a free public table of which country each IP address belongs to, once a month, for the administrator's reports.)

How it works

  1. Your browser connects over HTTPS (HTTP/1.1, HTTP/2 or HTTP/3) with a Let's Encrypt certificate.
  2. Caddy with a web application firewall (Coraza and the OWASP Core Rule Set) filters every request and limits how fast anyone can send them.
  3. The myHUB application (Python and Flask) checks your password or passkey against its own account database, then reads and writes your mailbox files.
  4. Postfix receives and sends mail; rspamd filters spam and signs outgoing mail with DKIM; ClamAV scans every message for viruses.
  5. vmail-lda, a small delivery agent written in Rust, files each arriving message by your own filters, puts spam in Junk and writes it to disk safely (written, flushed, then moved into place).
  6. A statistics service reads the server's logs every five minutes and writes notices, alerts and daily, weekly and monthly reports into a read-only Notifications folder.
  7. Mailboxes, contacts and calendars are plain files on a ZFS file system on SmartOS, in directories named by UUIDs, so their structure never depends on a language, a name or an address.

Why SmartOS and pkgsrc

myHUB runs on SmartOS, an open-source operating system built on illumos, the community continuation of OpenSolaris. Mail is precious data, and SmartOS keeps it on ZFS, which checksums every block, repairs damage on its own and takes instant snapshots, so a mailbox can be backed up or rolled back in seconds. The application runs in a zone, a lightweight and strongly isolated container that SmartOS has offered for nearly two decades, and every service is supervised by SMF, which restarts anything that fails.

Every piece of software comes from pkgsrc, the portable package collection that began in the NetBSD project and now builds the same tested software for many operating systems. Its quarterly stable releases give us current versions of Python, Postfix, rspamd, ClamAV and the rest, installed in their own tree, apart from the operating system, and updated with a single command. Both projects are free, open and community driven, and we are glad to build on them.

☀️ SmartOS

  • Zones: OS-level virtualization with near-native speed and strong isolation
  • ZFS: end-to-end checksums, self-healing, snapshots, clones, compression and quotas
  • DTrace: safe, live tracing of the whole system in production
  • SMF: service management with dependencies and automatic restart
  • Network virtualization: virtual NICs and per-zone network stacks
  • Hardware VMs with bhyve when a full guest system is needed

📦 pkgsrc

  • More than 20,000 packages from one portable framework
  • Runs on illumos and SmartOS, NetBSD, Linux, macOS and other systems
  • Quarterly stable branches with security fixes
  • Fast binary installs with pkgin, or builds from source with the same recipes
  • Its own prefix (/opt/local on SmartOS), separate from the base system

Features

📬 Mail

  • Three-pane reading view: folders, messages, message
  • Folders and subfolders you can create, rename, move and delete
  • Fast full-text search across all folders
  • Rich-text composer with attachments, drafts saved automatically, replies and forwards
  • Inbox, Drafts, Sent, Junk, Trash, Archive and Notifications in every mailbox
  • Filters that sort new mail into folders as it arrives, by sender, subject, list or any header

🛡 Safe reading

  • HTML mail cleaned before display and shown in a locked-down frame
  • Remote images blocked until you choose to show them
  • Sender checks for every message: SPF, DKIM, DMARC and ARC, one click away
  • The message headers, ready to copy, and the full original message

🚫 Spam and viruses

  • Spam filtering with rspamd, which learns from your Spam / Not spam choices
  • Spam goes straight to Junk, unless one of your filters says otherwise
  • Every incoming and outgoing message scanned by ClamAV
  • Forged mail from domains that ask for it (DMARC p=reject) is refused
  • Sender reputation from SenderScore

👥 Contacts

  • Address book with groups and photos
  • Import and export vCards from phones, Google, Apple and Outlook
  • Address suggestions as you type
  • Add a sender to your contacts in one click

📅 Calendar

  • Month, week, day and agenda views, several colour-coded calendars
  • Repeating events, time zones, drag to move or resize
  • Invitations by email that Gmail and Outlook understand: accept, maybe, decline
  • Reminders in the browser or by email, and your guests' free / busy times

📱 Sync

  • Calendars and contacts on your phone and computer (CalDAV and CardDAV)
  • Works with Apple Calendar and Contacts, Thunderbird and DAVx⁵ on Android
  • A separate app password for each device, revocable at any time

🔐 Security

  • Passkeys: sign in with Face ID, Touch ID, Windows Hello, your phone or a security key
  • Sign-in protected by ALTCHA, a privacy-friendly proof of work instead of a puzzle
  • Strict content security policy and secure, short-lived sessions
  • Each user's mail kept strictly apart; nothing is shared with third parties
  • No trackers, no advertising, no outside scripts

📣 Notifications

  • A read-only folder for notices from the administrator, such as planned maintenance, with an optional banner
  • A weekly summary of your own account: mail received, spam caught, sign-ins
  • For administrators: daily, weekly and monthly reports on mail, spam, viruses, web attacks blocked by the OWASP rules, sign-ins and the server's health, by country, with alerts as soon as something goes wrong

🍁 Made for Canada

  • Entirely in English and in French, switchable at any time
  • Canadian date and number formats
  • Works on phones, tablets and computers, in light or dark mode

Screenshots

Illustrations of the myHUB screens with example data (example.com). Click an image to see it full size.

The inbox: folders, message list and an open message with the DMARC panel showing SPF, DKIM, DMARC and ARC passing
Mail. Folders on the left, messages in the middle, the open message on the right. The DMARC button next to Reply shows the sender checks (SPF, DKIM, DMARC, ARC); Headers shows the headers, ready to copy.
The Filters dialog with three rules: a mailing list filed and marked read, receipts flagged, and a bank kept out of Junk
Filters. Rules that file new mail as it arrives: by mailing list, sender, subject or any header, with all / any conditions and regular expressions; mark as read or flag it. Spam goes to Junk after your rules, so a rule can keep a trusted sender in the Inbox.
The Notifications folder with a maintenance banner and a weekly system report open, showing web attacks by type and by country
Notifications. A read-only folder: notices from the administrator (here a maintenance banner), your weekly summary, and for administrators the system reports and alerts, here the web attacks the firewall blocked, by type and by country.
The calendar in week view, with an invitation open showing the guests' answers
Calendar. Week view with several calendars, a repeating stand-up and a birthday; the open invitation shows each guest's answer and an email reminder. Devices sets up phones and computers.
The contacts view: groups, the contact list and a contact's details
Contacts. Groups, a searchable list and each contact's details; import and export vCards, or sync them to your phone.
The composer in French, suggesting addresses while typing
En français. The whole interface switches between English and French; here the composer suggests addresses as you type.

Credits

myHUB was designed and built by Roger Sistla and Claude, an AI model made by Anthropic.

Free software under the GNU Affero General Public License v3. Built with Python, Flask, nh3, gunicorn, argon2-cffi, cbor2, cryptography, Rust (mail-parser, regex, serde), Vite, Caddy, Coraza and the OWASP Core Rule Set, Postfix, rspamd, ClamAV and ALTCHA. IP to country data by DB-IP (CC BY 4.0).

À propos de monCENTRE

Un serveur de courriel autohébergé, léger et libre, avec courriel Web, calendrier et contacts, dans les deux langues officielles du Canada.

Qu’est-ce que c’est?

monCENTRE est le courriel Web de ce serveur de courriel. Vous lisez, rédigez et classez votre courriel dans le navigateur, sans rien installer. Contrairement à la plupart des courriels Web, il ne repose pas sur un serveur IMAP : il travaille directement avec les fichiers de courriel sur le disque (le format Maildir, un fichier par message), ce qui le rend petit, rapide et facile à sauvegarder. C’est un logiciel libre, publié sous la licence publique générale GNU Affero, version 3.

Autohébergé

Tout fonctionne sur un seul serveur que son propriétaire contrôle : la réception et l’envoi du courriel, le filtrage, l’application Web et les comptes eux-mêmes. Aucun annuaire externe, service infonuagique ni tiers n’intervient, et votre courriel, vos calendriers et vos contacts ne quittent jamais le serveur. (La seule chose qu’il télécharge de l’extérieur est une table publique et gratuite du pays de chaque adresse IP, une fois par mois, pour les rapports de l’administrateur.)

Comment ça fonctionne

  1. Votre navigateur se connecte en HTTPS (HTTP/1.1, HTTP/2 ou HTTP/3) avec un certificat Let’s Encrypt.
  2. Caddy et un pare-feu applicatif (Coraza et l’OWASP Core Rule Set) filtrent chaque requête et limitent leur rythme.
  3. L’application monCENTRE (Python et Flask) vérifie votre mot de passe ou votre clé d’accès dans sa propre base de comptes, puis lit et écrit les fichiers de votre boîte aux lettres.
  4. Postfix reçoit et envoie le courriel; rspamd filtre les pourriels et signe le courriel sortant avec DKIM; ClamAV vérifie chaque message contre les virus.
  5. vmail-lda, un petit agent de livraison écrit en Rust, classe chaque message reçu selon vos propres filtres, met les pourriels dans Pourriels et l’écrit sur disque de façon sûre (écrit, vidé sur disque, puis mis en place).
  6. Un service de statistiques lit les journaux du serveur toutes les cinq minutes et dépose avis, alertes et rapports quotidiens, hebdomadaires et mensuels dans un dossier Avis en lecture seule.
  7. Les boîtes aux lettres, les contacts et les calendriers sont de simples fichiers sur un système de fichiers ZFS sous SmartOS, dans des répertoires nommés par des UUID, pour que leur structure ne dépende jamais d’une langue, d’un nom ni d’une adresse.

Pourquoi SmartOS et pkgsrc

monCENTRE fonctionne sous SmartOS, un système d’exploitation libre basé sur illumos, la continuation communautaire d’OpenSolaris. Le courriel est une donnée précieuse, et SmartOS le conserve sur ZFS, qui vérifie chaque bloc par somme de contrôle, répare lui-même les dommages et prend des instantanés immédiats : une boîte aux lettres peut être sauvegardée ou restaurée en quelques secondes. L’application s’exécute dans une zone, un conteneur léger et fortement isolé que SmartOS offre depuis près de vingt ans, et chaque service est supervisé par SMF, qui redémarre tout ce qui tombe en panne.

Tous les logiciels proviennent de pkgsrc, la collection de paquets portable née du projet NetBSD, qui produit aujourd’hui les mêmes logiciels éprouvés pour de nombreux systèmes d’exploitation. Ses versions stables trimestrielles nous donnent des versions à jour de Python, Postfix, rspamd, ClamAV et des autres, installées dans leur propre arborescence, à l’écart du système, et mises à jour d’une seule commande. Les deux projets sont libres, ouverts et portés par leur communauté, et nous sommes heureux de nous appuyer sur eux.

☀️ SmartOS

  • Zones : virtualisation au niveau du système, rapidité quasi native et isolation forte
  • ZFS : sommes de contrôle de bout en bout, autoréparation, instantanés, clones, compression et quotas
  • DTrace : traçage sûr et en direct de tout le système, en production
  • SMF : gestion des services avec dépendances et redémarrage automatique
  • Virtualisation réseau : cartes réseau virtuelles et piles réseau par zone
  • Machines virtuelles avec bhyve lorsqu’un système invité complet est nécessaire

📦 pkgsrc

  • Plus de 20 000 paquets issus d’un seul cadre portable
  • Fonctionne sous illumos et SmartOS, NetBSD, Linux, macOS et d’autres systèmes
  • Branches stables trimestrielles avec correctifs de sécurité
  • Installation binaire rapide avec pkgin, ou compilation à partir des sources avec les mêmes recettes
  • Son propre préfixe (/opt/local sous SmartOS), séparé du système de base

Fonctionnalités

📬 Courriel

  • Affichage en trois volets : dossiers, messages, message
  • Dossiers et sous-dossiers à créer, renommer, déplacer et supprimer
  • Recherche plein texte rapide dans tous les dossiers
  • Éditeur de texte enrichi avec pièces jointes, brouillons enregistrés automatiquement, réponses et transferts
  • Boîte de réception, Brouillons, Éléments envoyés, Courrier indésirable, Corbeille, Archives et Avis dans chaque boîte
  • Des filtres qui classent le nouveau courriel dans des dossiers dès son arrivée, selon l’expéditeur, l’objet, la liste ou tout en-tête

🛡 Lecture sécuritaire

  • Courriel HTML nettoyé avant l’affichage et présenté dans un cadre verrouillé
  • Images externes bloquées jusqu’à ce que vous choisissiez de les afficher
  • Vérification de l’expéditeur pour chaque message : SPF, DKIM, DMARC et ARC, à un clic
  • Les en-têtes du message, prêts à copier, et le message original complet

🚫 Pourriels et virus

  • Filtrage des pourriels par rspamd, qui apprend de vos choix Pourriel / Pas un pourriel
  • Les pourriels vont directement dans Courrier indésirable, sauf si l’un de vos filtres en décide autrement
  • Chaque message entrant et sortant vérifié par ClamAV
  • Le courriel falsifié des domaines qui le demandent (DMARC p=reject) est refusé
  • Réputation des expéditeurs selon SenderScore

👥 Contacts

  • Carnet d’adresses avec groupes et photos
  • Importation et exportation de vCards des téléphones, de Google, d’Apple et d’Outlook
  • Suggestions d’adresses pendant la saisie
  • Ajout d’un expéditeur à vos contacts en un clic

📅 Calendrier

  • Vues mois, semaine, jour et agenda, plusieurs calendriers en couleurs
  • Événements répétitifs, fuseaux horaires, glisser pour déplacer ou redimensionner
  • Invitations par courriel comprises par Gmail et Outlook : accepter, peut-être, refuser
  • Rappels dans le navigateur ou par courriel, et disponibilités de vos invités

📱 Synchronisation

  • Calendriers et contacts sur votre téléphone et votre ordinateur (CalDAV et CardDAV)
  • Fonctionne avec Calendrier et Contacts d’Apple, Thunderbird et DAVx⁵ sur Android
  • Un mot de passe d’application distinct par appareil, révocable en tout temps

🔐 Sécurité

  • Clés d’accès : connexion avec Face ID, Touch ID, Windows Hello, votre téléphone ou une clé de sécurité
  • Connexion protégée par ALTCHA, une preuve de travail respectueuse de la vie privée au lieu d’un casse-tête
  • Politique de sécurité du contenu stricte et sessions sécurisées de courte durée
  • Le courriel de chaque utilisateur est strictement séparé; rien n’est partagé avec des tiers
  • Aucun traceur, aucune publicité, aucun script externe

📣 Avis

  • Un dossier en lecture seule pour les avis de l’administrateur, comme un entretien prévu, avec une bannière au besoin
  • Un résumé hebdomadaire de votre propre compte : courriel reçu, pourriels arrêtés, connexions
  • Pour les administrateurs : rapports quotidiens, hebdomadaires et mensuels sur le courriel, les pourriels, les virus, les attaques Web bloquées par les règles OWASP, les connexions et l’état du serveur, par pays, avec des alertes dès qu’un problème survient

🍁 Conçu pour le Canada

  • Entièrement en français et en anglais, au choix à tout moment
  • Formats de date et de nombre canadiens
  • Fonctionne sur téléphone, tablette et ordinateur, en mode clair ou sombre

Captures d’écran

Illustrations des écrans de monCENTRE avec des données d’exemple (example.com). Cliquez sur une image pour l’agrandir.

La boîte de réception : dossiers, liste des messages et un message ouvert avec le panneau DMARC où SPF, DKIM, DMARC et ARC sont réussis
Courriel. Les dossiers à gauche, les messages au centre et le message ouvert à droite. Le bouton DMARC, à côté de Répondre, affiche la vérification de l’expéditeur (SPF, DKIM, DMARC, ARC); En-têtes affiche les en-têtes, prêts à copier.
La fenêtre Filtres avec trois règles : une liste de diffusion classée et marquée comme lue, des reçus signalés et une banque gardée hors des pourriels
Filtres. Des règles qui classent le nouveau courriel dès son arrivée : par liste de diffusion, expéditeur, objet ou tout en-tête, avec des conditions « toutes » ou « l’une », et des expressions régulières; marquer comme lu ou signaler. Les pourriels vont dans Courrier indésirable après vos règles, pour qu’une règle puisse garder un expéditeur de confiance dans la Boîte de réception.
Le dossier Avis avec une bannière d’entretien et un rapport système hebdomadaire ouvert, qui montre les attaques Web par type et par pays
Avis. Un dossier en lecture seule : les avis de l’administrateur (ici une bannière d’entretien), votre résumé hebdomadaire et, pour les administrateurs, les rapports et alertes du système, ici les attaques Web bloquées par le pare-feu, par type et par pays. (Image en anglais.)
Le calendrier en vue semaine, avec une invitation ouverte qui montre les réponses des invités
Calendrier. Vue semaine avec plusieurs calendriers, une réunion quotidienne répétitive et un anniversaire; l’invitation ouverte montre la réponse de chaque invité et un rappel par courriel. Appareils configure téléphones et ordinateurs.
L’écran des contacts : groupes, liste des contacts et détails d’un contact
Contacts. Des groupes, une liste avec recherche et les détails de chaque contact; importation et exportation de vCards, ou synchronisation avec votre téléphone.
L’éditeur de message en français, qui suggère des adresses pendant la saisie
En français. Toute l’interface passe de l’anglais au français; ici, l’éditeur suggère des adresses pendant la saisie.

Crédits

monCENTRE a été conçu et réalisé par Roger Sistla et Claude, un modèle d’IA créé par Anthropic.

Logiciel libre sous la licence publique générale GNU Affero, version 3. Réalisé avec Python, Flask, nh3, gunicorn, argon2-cffi, cbor2, cryptography, Rust (mail-parser, regex, serde), Vite, Caddy, Coraza et l’OWASP Core Rule Set, Postfix, rspamd, ClamAV et ALTCHA. Données de pays des adresses IP par DB-IP (CC BY 4.0).