happyDomain est une interface qui centralise vos noms de domaines et réduit les points de friction habituels.
Notre interface centralise vos domaines et inclut toutes les fonctionnalités que l’on attendrait en 2025 pour gérer ses domaines sans peine.
Nous avons construit happyDomain parce que nous voulons faire gagner du temps aux équipes opérationnelles en leur donnant des superpouvoirs :
avoir toute la puissances des noms de domaines, sans devoir lire et apprendre toutes les nouvelles normes, en restant focalisé sur les besoins.
Voici un aperçu des principales fonctionnalités d’happyDomain :
regrouper les noms de domaines de plus de 45 prestataires de nom de domaine ou serveurs faisant autorité,
abstraire toute la complexité technique en une vue logique,
regrouper les enregistrements par services/besoins : e-mails, site web, délégation, répartition de charge, …
guider l’administrateur au moyen de formulaires clairs,
visualiser le détail des changements avant de les publier, et choisir précisément ceux à appliquer,
garder un historique des changements et revenir à un état antérieur de la zone en un clic,
surveiller vos domaines et services grâce à des vérifications automatiques (expiration, DNSSEC, temps de réponse, …),
être alerté par notifications dès qu’une vérification change d’état,
vérifier la disponibilité d’un domaine à l’enregistrement et inspecter n’importe quel domaine (WHOIS, résolveur DNS),
importer/exporter la zone sous forme d’un fichier standard (format BIND),
garder une trace des actions pour les auditer plus tard,
automatiser des tâches via une API REST.
Nous sommes un projet libre : vous pouvez utiliser l’interface officielle disponible sur www.happydomain.org, ou bien l’installer chez vous.
Le code source est disponible sur framagit, GitLab ou encore GitHub : vous pouvez le consulter, le copier, donner votre avis, rapporter des bugs ou y apporter des modifications, à votre guise.
Rejoignez-nous sur Matrix ! 💬
Nous construisons une communauté d’utilisateurs voulant reprendre le contrôle sur leur zones DNS.
Rejoignez-nous !
happyDomain est un service qui centralise la gestion de vos noms de domaines depuis différents bureaux d’enregistrement, hébergeurs ou serveurs DNS faisant autorité.
Il s’agit d’une interface web et d’une API REST qui vous proposent d’avoir une expérience des domaines plus simple que la plupart des interfaces que l’on peut voir habituellement pour gérer ses domaines, avec notamment des fonctionnalités que l’on attendrait en 2025.
Avec happyDomain, nous voulons faire en sorte que les noms de domaine et le DNS ne soient plus une expérience rebutante, mais au contraire vous redonner toutes les cartes en main pour comprendre et faire des modifications serainement.
Vous avez hâtes de commencer ? suivez le guide !
1. En ligne ou chez soi
happyDomain est un logiciel libre.
Cela signifie entre-autre que vous pouvez l’installer chez vous.
Si vous n’êtes pas un habitué de la ligne de commande ou que vous souhaitez évaluer rapidement le logiciel, nous vous recommandons de vous créer un compte sur notre service en ligne.
happyDomain va se connecter à votre hébergeur (ou à votre serveur local faisant autorité).
Votre domaine reste hébergé là où il est aujourd’hui, utiliser happyDomain n’implique aucun transfert ou changement de propriété.
Je n’ai pas encore de nom de domaine
Nous ne vendons pas de noms de domaine, il faut que vous en disposiez déjà d’un chez un hébergeur supporté.
Lorsque vous vous connectez pour la première fois à happyDomain, un assistant vous guide pour relier votre premier domaine.
Selon votre hébergeur, la procédure sera différente.
Mais pour la plupart, vous devrez vous rendre sur le compte client de votre hébergeur, et demander une clef d’API.
Pour OVH, la procédure est simplifiée car il n’y a qu’à suivre les instructions et à vous autoriser happyDomain à accéder à la partie liée aux domaines de votre compte.
Si vous avez votre propre serveur faisant autorité, vous devrez récupérer soit auprès de l’administrateur, soit en regardant dans la configuration, les clefs permettant d’interagir avec le serveur.
Une fois la connexion entre happyDomain et votre premier hébergeur ou serveur établi, vous n’avez plus qu’à sélectionner les domaines que vous souhaitez voir gérer dans happyDomain.
3. Consulter la zone DNS
On parle de zone DNS pour faire référence au contenu technique de votre domaine.
Pour afficher la zone correspondant à un domaine, cliquez sur le nom de domaine qui apparaît sur la page d’accueil d’happyDomain.
Après quelques secondes d’import et d’analyse entièrement automatique, vous verrez tout de suite une liste d’enregistrements ou de services tels qu’actuellement diffusés auprès de vos visiteurs.
À propos des « services »
La complexité du DNS vient en partie d’un décalage entre les contraintes purement techniques et l’usage concret des enregistrements.
happyDomain essai de simplifier cela en regroupant les enregistrements techniques sous leurs usages concrets. C’est cela que l’on appel « service ».
4. Modifier un enregistrement
Dans l’écran montrant la zone, appuyer sur un enregistrement pour afficher les détails.
Chaque enregistrement DNS a des caractéristiques et des contraintes particulières.
Les aides contextuelles essaient autant que possible de vous donner les informations essentielles pour vous guider dans les modifications dont vous avez besoin.
Lorsque vous faites une modification sur un enregistrement, celle-ci n’est pas directement publiée auprès de votre hébergeur ou de votre serveur.
5. Propager vos modifications
Une fois que vous avez fait toutes les modifications dont vous avez besoin, cliquez sur le bouton « Diffuser mes changements ».
Une boîte de dialogue va s’afficher pour vous montrer les changements exacts qui seront appliqués auprès de votre hébergeur.
À ce stade, il est toujours temps de sélectionner les changements que vous ne souhaitez pas/plus voir appliqués.
Avant de valider la fenêtre, vous pouvez ajouter un message qui sera enregistré dans le journal, ce qui vous permettra de vous rappeler rapidement quel était la raison de ce changement.
Car l’un des avantages d’happyDomain, c’est que vous pouvez très facilement revenir en arrière, annuler une modification, s’il s’avère que vous voyez une erreur.
L’historique fait l’objet d’une page d’aide dédiée.
Eh voilà, vous savez maintenant utilisé les principales fonctionnalités d’happyDomain.
Si vous rencontrez des problèmes ou si vous avez des idées d’amélioration, pensez à nous le faire savoir.
Installation et deploiement
Selon vos besoins, happyDomain peut être déployé de différentes manières selon votre environnement.
Grâce à plusieurs éléments modulables, il y a certainement une voie correspondant à vos attentes.
Suivez ce guide d’installation si vous souhaitez utiliser happyDomain directement sur votre machine, le plus simplement possible, sans disposer de la gestion d’utilisateurs.
C’est une configuration simple, qui est appropriée pour évaluer happyDomain ou pour l’utiliser sans authentification sur sa propre machine, ou avec une authentification fournie par un reverse proxy.
Vous pouvez le déployer en utiliser Docker ou bien en téléchargeant l’un des exécutables mis à votre disposition. Nous verrons ci-après les deux méthodes.
Via Docker/podman
Si vous être familier de Docker (ou podman), vous pouvez disposer d’happyDomain en quelques secondes avec la ligne de commande suivante :
docker container run -e HAPPYDOMAIN_NO_AUTH=1 -p 8081:8081 happydomain/happydomain
Si vous souhaitez rendre les données persistantes, il faut ajouter un volume :
Quelque soit votre choix, rendez-vous ensuite sur http://localhost:8081 pour commencer à utiliser happyDomain.
Via l’exécutable
Commencez par télécharger l’exécutable correspondant à votre architecture de processeur sur : https://get.happydomain.org/master/.
Les versions darwin sont pour MacOS, tandis que les versions linux sont pour GNU/Linux. Toutes les versions distribuées sont statiques et devraient fonctionner quelque soit votre libc (GNU libc la plupart du temps, musl pour Alpine, …).
Rendez le binaire que vous avez téléchargé exécutable : chmod +x happydomain-OS-ARCH.
Exécutez le binaire : HAPPYDOMAIN_NO_AUTH=1 ./happydomain-OS-ARCH.
L’option HAPPYDOMAIN_NO_AUTH=1 est un paramètre qui indique à happyDomain qu’il ne doit pas attendre d’authentification : les domaines sont partagées entre toutes les connexions qui arrivent. En fait, cela va automatiquement créer un utilisateur par défaut et désactiver toutes les fonctionnalités de connexion, d’enregistrement de compte, …
Peut-on le mettre sur Internet comme ça ?
Non ! Il est primordial que vous n’exposiez pas votre happyDomain sur Internet sans authentification.
En effet, tout son contenu serait accessible à n’importe qui, et pourrait prendre possession de votre/vos domaines.
Utilisez systématiquement un reverse-proxy tel que nginx, Apache, HAproxy, Treafik, … en ajoutant une étape de filtrage ou d’authentification basique.
Par exemple, vous pouvez filtrer les IP qui peuvent accéder au service.
Voici un exemple de configuration pour nginx, filtrant les IP (directive allow) :
Vous pouvez aussi ajouter une authentification à base de mot de passe simple.
Avec Docker
happyDomain est sponsorisé par Docker.
Vous trouverez notre image officielle sur le Docker Hub.
L’image exécute happyDomain en tant que processus unique avec une base de données LevelDB stockée sur le disque — aucune base de données supplémentaire à configurer.
Versions, étiquettes et architectures supportées
Toutes les étiquettes (tags) sont construites pour amd64, arm64 et arm/v7 et sont basées sur Alpine.
Les étiquettes actuellement disponibles :
latest : la version la plus récente, correspondant à la branche master de notre dépôt.
Démarrage rapide (conteneur unique)
Pour un test rapide ou un usage personnel, utilisez HAPPYDOMAIN_NO_AUTH=1 pour désactiver la gestion des comptes :
docker run -e HAPPYDOMAIN_NO_AUTH=1 -p 8081:8081 happydomain/happydomain
Les données sont stockées à l’intérieur du conteneur. Pour les conserver entre les redémarrages, attachez un volume :
happyDomain intègre tous les vérificateurs (checkers) en natif, mais certains
d’entre eux s’appuient sur des outils externes (DNSViz, Zonemaster, Matrix
federation tester) distribués dans leurs propres images Docker. Les faire
tourner comme des services séparés vous donne l’expérience complète des
vérificateurs et une meilleure isolation.
L’approche recommandée est docker compose. Enregistrez le fichier suivant
sous le nom docker-compose.yml et lancez docker compose up -d.
Chaque vérificateur tourne comme un service HTTP autonome. happyDomain lui délègue
les demandes de vérification via la variable d’environnement
HAPPYDOMAIN_CHECKER_<ID>_ENDPOINT. Si aucun point d’accès n’est configuré, le
vérificateur correspondant s’exécute localement dans le processus happyDomain.
Deux vérificateurs s’appuient sur des services tiers supplémentaires :
Zonemaster (checker-zonemaster) interroge le service zonemaster/backend.
La variable HAPPYDOMAIN_CHECKER_ZONEMASTER_ZONEMASTERAPIURL indique au
vérificateur l’adresse de ce service.
Matrix federation tester (checker-matrix) interroge le service
matrixdotorg/federation-tester-backend. La variable
HAPPYDOMAIN_CHECKER_MATRIXIM_FEDERATIONTESTERSERVER pointe vers son point
d’accès de rapport.
Optionnel : happyDeliver
Si vous exploitez une instance happyDeliver pour
surveiller les flux e-mail, décommentez la ligne
HAPPYDOMAIN_CHECKER_HAPPYDELIVER_ENDPOINT et ajoutez le service correspondant :
Le service checker-blacklist fonctionne sans clé API (il utilise des listes
de blocage DNS par défaut), mais vous pouvez activer des sources supplémentaires
— Google Safe Browsing, VirusTotal, abuse.ch URLhaus — en configurant les
options d’administration correspondantes depuis l’interface d’administration de
happyDomain une fois la pile démarrée.
Interface d’administration
happyDomain expose des commandes d’administration à travers un socket Unix.
Le conteneur inclut l’utilitaire hadmin :
hadmin est une surcouche légère autour de curl — commencez par le chemin
d’URL, puis ajoutez les options curl après.
Utilisation d’un fichier de configuration
Plutôt que des variables d’environnement, vous pouvez placer un fichier de
configuration dans /data/happydomain.conf (dans le volume de données) ou le
monter directement sur /etc/happydomain.conf :
docker run -v happydomain.conf:/etc/happydomain.conf -p 8081:8081 happydomain/happydomain
Configuration
happyDomain respecte la méthodologie 12 factor et permet notamment d’agir sur la configuration de l’application de plusieurs manières.
Par quels moyens configurer happyDomain ?
Il est possible de configurer happyDomain de trois manières différentes : fichier de configuration, environnement, ligne de commande. Toutes les options sont disponibles pour chacun de ces mécanismes.
La précédence, lorsqu’une option est définie par plusieurs mécanismes simultanément, est qu’une option présente dans un fichier de configuration sera écrasé par l’environnement, qui sera écrasée par une option passée sur la ligne de commande.
Configuration par fichier
Au lancement de l’application, le premier fichier de configuration parmi la liste suivante sera utilisé :
./happydomain.conf
$XDG_CONFIG_HOME/happydomain/happydomain.conf
/etc/happydomain.conf
Seulement le premier fichier existant est pris en compte. Il n’est pas possible d’avoir une partie de ses options dans /etc/happydomain.conf et une autre dans ./happydomain.conf, seul ce dernier fichier de configuration sera pris en compte.
Il est possible de préciser un chemin personnalisé en l’ajoutant comme paramètre supplémentaire à la ligne de commande. Ainsi, pour utiliser le fichier de configuration situé à /etc/happydomain/config, on utilisera :
./happydomain /etc/happydomain/config
Format du fichier de configuration
Une ligne de commentaires commence par #, il n’est pas possible d’avoir des commentaires à la fin d’une ligne, en ajoutant # suivi d’un commentaire.
Placez sur chaque ligne le nom de l’option de configuration et la valeur attendue, séparés par =. Par exemple :
La liste exhaustive des éléments configurables peut être listé en appelant happyDomain avec l’option -h ou --help.
Voici la liste des principales options :
Paramètres généraux
bind
Interface (ip, port) à utiliser pour exposer le service happyDomain.
admin-bind
Interface (ip, port ou socket) à utiliser pour exposer l’API d’administration.
default-ns
Adresse et port du serveur résolveur de noms à utiliser par défaut lorsqu’une résolution de nom est nécessaire.
dev
URL vers laquelle toutes les requêtes liées à l’interface graphique seront renvoyées.
externalurl
URL du service, tel qu’il doit apparaître dans les mails et contenus à destination du public.
disable-providers-edit
Interdit toute action sur les fournisseurs de service DNS (ajour/édition/suppression), par exemple pour avoir un mode de démonstration.
Mise en page
custom-head-html
Chaîne de caractères à placer avant la fin de l’en-tête HTML.
custom-body-html
Chaîne de caractères à placer avant la fin du corps HTML.
hide-feedback-button
Cache l’icône permettant de donner son retour d’expérience.
msg-header-text
Ajoute un message personnalisé dans une bannière en haut de toutes les pages.
msg-header-color
Classe de couleur de fond pour la bannière ajoutée en haut de l’application web (par défaut “danger”, pourrait être primary, secondary, info, success, warning, danger, light, dark, ou toute autre classe de couleur bootstrap).
Stockage des données
storage-engine
Permet de choisir le mécanisme de stockage des données parmi tous les mécanismes supportés.
LevelDB (storage-engine=leveldb)
leveldb-path
Chemin vers le dossier contenant la base LevelDB à utiliser.
Paramètres e-mail
Nous employons go-mail comme bibliothèque pour envoyer les mails.
mail-from
Définit le nom et l’adresse de l’expéditeur des mails envoyés par le service.
Notez que sans les options mail-smtp-*, happyDomain utilisera le binaire sendmail pour envoyer les mails. Cela peut être couplé aux paquets msmtp ou ssmtp par exemple, pour définir les paramètres pour tout le système.
mail-smtp-host
IP ou nom d’hôte du serveur SMTP à utiliser.
mail-smtp-port
Port à utiliser sur le serveur distant.
mail-smtp-username
Lorsque de l’authentification est nécessaire sur le serveur distant, nom d’utilisateur à utiliser.
mail-smtp-password
Lorsque de l’authentification est nécessaire sur le serveur distant, mot de passe à utiliser.
Authentification
no-auth
Désactive la notion d’utilisateurs et de contrôle d’accès. Un compte par défaut est utilisé.
disable-embedded-login
Désactive le mécanisme de connexion interne en faveur de l’external-auth ou d’OIDC.
disable-registration
Interdit la création de nouveau compte à travers le formulaire ou l’API (cela ne désactive pas la création de compte lorsque l’on se connecte pour la première fois à partir d’un service d’authentification externe).
external-auth
Base de l’URL du service d’authentification et d’enregistrement à utiliser à la place du système de connexion embarqué.
jwt-secret-key
Clef secrète utilisée pour vérifier les tokens JWT.
Certain bureau d’enregistrement nécessitent que les applications tierces s’identifient en plus d’identifier l’utilisateur.
Bind
with-bind-provider
Active BIND en tant que fournisseur DNS (attention, ce paramètre n’est pas adapté à un environnement partagé/cloud car il accède au système de fichiers local).
OVH
Veuillez vous référer à cette documentation afin de générer les identifiants.
ovh-application-key
Application key pour l’API d’OVH
ovh-application-secret
Clef secrète pour l’API d’OVH
OpenID Connect
happyDomain supporte l’authentification d’utilisateurs via le protocole OpenID Connect. Si vous avez un prestataire pour l’authentification (Auth0, Okta, …) ou que vous avez un logiciel dit “Identity Provider” (IdP) tel que Keycloak, Authentik, Authelia, … vous pouvez l’utiliser avec happyDomain et vous passez, éventuellement, du système d’inscription et d’authentification embarqué.
Configuration
Pour activer l’authentification OpenID Connect, vous aurez besoin de définir les options suivantes :
L’option PROVIDER_URL correspond à l’URL de base du service d’authentification. Celui-ci doit mettre à disposition une page de découverte de ses paramètres (accessible à /.well-known/openid-configuration).
Paramétrage du fournisseur OpenID Connect
Vous aurez besoin de créer une application dans votre fournisseur d’authentification, avec les paramètres suivants :
Provider type: OIDC ou OAuth2
Grant type: Authorization Code
Application type: Web ou PWA
Client type: private
Scopes: openid, profile, email
Définissez également une adresse de retour autorisée :
Il est possible de l’utiliser avec happyDomain en passant par le Dynamic DNS (RFC 2136).
Cette documentation vous guidera dans la configuration de BIND pour activer le DNS dynamique, puis pour relier ensemble happyDoain et votre serveur BIND.
Configurer BIND pour activer le DNS dynamique
Tout d’abord, vous devez modifier le fichier de configuration principal de BIND (généralement /etc/named.conf ou /etc/bind/named.conf selon votre distribution) pour ajouter un secret qui sera partagé entre happyDomain et BIND pour authentifier les modifications. Ensuite, vous devez indiquer quels domaines seront gérés par happyDomain.
Ajouter un secret partagé
Sous la section principale key de votre configuration, ajoutez la clé suivante :
Remplacez <SOME_SECRET> par une chaîne obtenue en utilisant openssl rand -base64 48.
Créer une règle d’autorisation pour happyDomain
En plus de la clé, vous devez spécifier comment la clé peut être utilisée en définissant une ACL et en autorisant les mises à jour à partir de celle-ci.
Ajoutez l’ACL suivante à votre configuration :
acl "happydomain_acl" {
key happydomain;
};
Autoriser les mises à jour pour chaque zone
Maintenant que vous avez créé une règle permettant à la clé happydomain d’apporter des modifications, vous devez indiquer à quelles zones cette règle s’applique.
Pour chaque zone, vous devez ajouter une déclaration update-policy référencant l’ACL happydomain_acl :
Par exemple, pour une zone existante happydomain.org, ajoutez la déclaration update-policy comme suit :
zone "happydomain.org" {
type master;
file "/var/named/happydomain.org.db";
update-policy {
grant happydomain_acl name happydomain.org. ANY;
};
};
La déclaration update-policy est une liste, donc vous pouvez déjà avoir d’autres politiques dans cette liste. Dans ce cas, ajoutez simplement la déclaration grant pour happydomain_acl.
Autoriser les mises à jour pour routes les zones
Si vous gérez de nombreuses zones, il peut être plus pratique de définir l’autorisation par défaut pour toutes les zones. Dans ce cas, vous pouvez utiliser une update-policy globale dans la section options :
options {
update-policy {
grant happydomain_acl zonesub ANY;
};
};
Cela appliquera la update-policy à toutes les zones, permettant à l’ACL happydomain_acl de mettre à jour n’importe quel enregistrement.
Appliquer la configuration
Après avoir modifié le fichier de configuration, rechargez le service BIND pour appliquer les modifications :
rndc reload
Lier happyDomain et BIND
Une fois BIND bien configuré, vous pouvez le lier à happyDomain en utilisant le connecteur Dynamic DNS :.
Remplissez ensuite le formulaire avec l’adresse à laquelle votre serveur BIND est accessible, puis ensuite les différents champs Key avec les informations indiqués dans votre configuration :
Key Name : correspond au champ id ;
Key Algorithm : correspond au champ algorithm ;
Secret Key : correspond au champ secret.
Une fois le fournisseur ajouté, il ne permet pas de lister les domaines existants, mais vous pouvez toujours ajouter manuellement tous vos domaines.
En suivant ces étapes, vous aurez configuré BIND pour fonctionner avec happyDomain en utilisant le DNS dynamique, assurant des mises à jour DNS sécurisées et authentifiées.
Connexion à un knot local
Knot est un serveur DNS faisant autorité développé par l’association cz.nic.
Il est possible de l’utiliser avec happyDomain en passant par le Dynamic DNS (RFC 2136).
Configurer Knot pour permettre le Dynamic DNS
Tout d’abord, il faut éditer le fichier de configuration principal de knot (généralement /etc/knot/knot.conf) afin d’ajouter un secret qui sera partagé entre happyDomain et knot pour authentifier les modifications. Puis il faudra indiquer quels domaines vont être gérés par happyDomain.
Ajout d’un secret partagé
Sous la section principale key de votre configuration, ajoutez la clef suivante :
Cela associe la key définie juste avant aux actions transfer et update, respectivement pour permettre de récupérer la zone et pour mettre à jour des enregistrements.
Associer l’autorisation à chaque zone
Maintenant que vous avez créé une règle autorisant la clef happydomain à apporter des modifications, il faut indiquer à quelles zones cette règle s’applique.
Pour chaque zone, il faut ajouter un élément acl référençant la règle acl_happydomain :
Par exemple, pour une zone happydomain.org déjà existante, on ajoutera la ligne acl comme suit :
L’élément acl est une liste, vous pouvez donc avoir déjà d’autres éléments acl dans cette liste. Il convient alors d’ajouter simplement l’élément acl_happydomain à la liste déjà existante.
Il faut ajouter cet élément acl pour chaque zone, sauf à utiliser l’astuce suivante.
Associer l’autorisation à toutes les zones
Si vous gérez de nombreuses zones, il peut être plus pratique de définir l’autorisation par défaut pour toutes les zones. Dans ce cas, à la place de la section précédente, on modifiera le modèle default :
Le modèle default est appliqué par défaut à toutes les zones. En faisant ainsi, toutes les zones hériteront de la règle acl_happydomain.
Appliquer la configuration
Maintenant que le fichier de configuration a été modifié, indiquez à knotd qu’il doit recharger sa configuration :
knotc reload
Liaison entre happyDomain et knot
Une fois knot bien configuré, vous pouvez le relier à happyDomain en utilisant le connecteur Dynamic DNS :
Remplissez ensuite le formulaire avec l’adresse à laquelle votre serveur knot est accessible, puis ensuite les différents champs Key avec les informations de la section key de knot :
Key Name : correspond au champ id ;
Key Algorithm : correspond au champ algorithm ;
Secret Key : correspond au champ secret.
Une fois le fournisseur ajouté, il ne permet pas de lister les domaines existants, mais vous pouvez tout de même ajouter manuellement tous vos domaines.
Configuration pour l'API OVH
Afin de pouvoir gérer des domaines hébergés par OVH, il est nécessaire de passer par une étape de configuration supplémentaire.
En effet, le principe de fonctionnement de l’authentification à l’API d’OVH se fait en 2 étapes :
Tout d’abord il faut enregistrer une application (par exemple happyDomain). Une application dispose d’un identifiant et d’un secret qu’il convient de renseigner en tant que paramètre d’happyDomain.
Pour chaque compte OVH que l’on souhaite gérer, l’interface d’happyDomain redirige vers la page d’OVH permettant de créer la Consumer key.
L’application doit être créée à partir d’un compte OVH existant, peu importe qu’il dispose de domaines ou non, il s’agit d’identifier la personne responsable de la mise en œuvre de l’application désignée.
L’accès aux données d’un compte, notamment aux domaines qu’ils gèrent, se fait au travers de la Consumer key.
Remplissez le formulaire avec un nom et une description qui refléte le nom et l’usage de votre application, par exemple happyDomain.
Une fois le formulaire validé, vous obtiendrez une clef et un secret.
Ces informations sont à indiquer dans la configuration d’happyDomain :
ovh-application-key
Application key pour l’API d’OVH
ovh-application-secret
Clef secrète pour l’API d’OVH
Fonctionnalités
Cette section présente happyDomain fonctionnalité par fonctionnalité, en suivant le
parcours d’un nouvel utilisateur : de la création de son compte jusqu’à la publication
d’une zone entièrement gérée.
Avant de pouvoir gérer vos domaines, il vous faut un compte happyDomain. Sa création prend moins de deux minutes et ne demande qu’une adresse e-mail et un mot de passe.
Remplir le formulaire d’inscription
Depuis la page d’accueil, suivez le lien d’inscription, puis remplissez le formulaire :
Adresse e-mail : cette adresse vous identifie sur la plateforme et sert à vous contacter pour les opérations liées à la sécurité (récupération de mot de passe, informations importantes). Elle doit contenir un @ valide.
Mot de passe : choisissez un mot de passe robuste (voir ci-dessous).
Confirmation du mot de passe : ressaisissez exactement le même mot de passe afin d’éviter toute faute de frappe.
Tenez-moi informé des prochaines grandes améliorations : une case à cocher facultative pour vous abonner à la lettre d’information du projet. Laissez-la décochée si vous ne souhaitez pas recevoir ces nouvelles.
La langue de l’interface que vous utilisez est automatiquement enregistrée avec votre compte ; les e-mails que vous recevrez seront ainsi dans cette langue.
Exigences du mot de passe
Un mot de passe n’est accepté que s’il contient au moins 8 caractères, dont au moins une majuscule, une minuscule et un chiffre. Il doit en outre contenir un caractère spécial, ou bien faire au moins 11 caractères.
Certains serveurs affichent une vérification anti-robot (captcha) sous le formulaire. Le cas échéant, complétez-la avant de valider.
Lorsque tout est correctement renseigné, cliquez sur « Inscrivez-vous ! ».
Valider votre adresse e-mail
Sur la plupart des serveurs, un e-mail est envoyé à l’adresse indiquée juste après l’inscription. Ouvrez votre messagerie et cliquez sur le lien de validation qu’il contient pour activer votre compte.
Si vous n’avez pas reçu le message (vérifiez d’abord votre dossier de courrier indésirable), vous pouvez en demander un nouveau depuis la page de validation : saisissez à nouveau votre adresse, puis cliquez sur « Renvoyer ».
Serveurs sans e-mail
Certaines instances happyDomain fonctionnent sans service de messagerie. Sur ces serveurs, aucun message de validation n’est envoyé : votre compte est utilisable immédiatement et vous pouvez vous connecter sans attendre.
Une fois votre adresse validée, vous êtes redirigé vers la page de connexion où vous pourrez vous identifier avec vos nouveaux identifiants.
Se connecter
Une fois votre compte créé et votre adresse e-mail validée, vous pouvez vous connecter pour accéder à vos domaines.
Se connecter
Sur la page de connexion, saisissez l’adresse e-mail et le mot de passe choisis lors de l’inscription, puis cliquez sur « C’est parti ».
Si les identifiants sont corrects, vous arrivez sur votre tableau de bord. Sinon, un message d’erreur s’affiche : vérifiez votre adresse et votre mot de passe, puis réessayez.
Tentatives répétées
Pour des raisons de sécurité, le serveur peut vous demander de compléter une vérification anti-robot (captcha) après plusieurs échecs, ou limiter temporairement les nouvelles tentatives. Patientez un instant, puis réessayez.
Se connecter avec un fournisseur externe
Lorsque le serveur est configuré pour cela, un bouton supplémentaire permet de se connecter via un fournisseur d’identité externe (par exemple Google, GitLab, GitHub, Microsoft ou Apple). Cliquez dessus pour être redirigé vers ce fournisseur et vous y authentifier.
Mot de passe oublié
Si vous ne vous souvenez plus de votre mot de passe, cliquez sur « Mot de passe oublié ? » sous le formulaire de connexion.
Saisissez l’adresse e-mail de votre compte, puis cliquez sur « Envoyer le lien de récupération ». Si un compte correspond, un message contenant un lien de récupération est envoyé à cette adresse.
Ouvrez le lien depuis votre messagerie pour accéder au formulaire de récupération de compte, où vous pourrez définir un nouveau mot de passe :
Saisissez votre nouveau mot de passe (il doit respecter les mêmes exigences de robustesse qu’à l’inscription).
Ressaisissez-le dans le champ de confirmation.
Cliquez sur « Redéfinir mon mot de passe ».
Une fois le mot de passe redéfini, vous êtes redirigé vers la page de connexion pour vous identifier avec vos nouveaux identifiants.
Serveurs sans e-mail
Sur les instances fonctionnant sans service de messagerie, la récupération de mot de passe n’est pas disponible : cliquer sur « Mot de passe oublié ? » affiche un message vous invitant à contacter l’administrateur du serveur pour réinitialiser votre mot de passe.
Regrouper vos domaines
happyDomain vous apporte une interface graphique unifiée et avec des fonctionnalités modernes quelque soit l’endroit où sont hébergés vos noms de domaine. Ils peuvent être sur un serveur DNS (PowerDNS, bind, knot, …) qui vous est propre, ou bien chez un ou plusieurs hébergeurs (une 50aine sont supportés à l’heure actuelle).
Vos domaines
La page d’accueil présente la liste de l’ensemble des domaines gérés par happyDomain, quelque soit leur hébergeur :
Cliquez sur l’un des domaines pour commencer à y apporter des modifications (ajouter un sous-domaine, ajouter un service, …).
Vos hébergeurs de domaines
Sur la droite, vous voyez la liste des différents hébergeurs de vos domaines :
En cliquant sur une ligne de ce tableau, vous filtrerez la liste des domaines pour n’afficher que les domaines gérés par cet hébergeur.
Vous verrez aussi, si l’hébergeur permet de lister les domaines qui vous appartiennent, les domaines que vous pouvez ajouter à happyDomain :
Pour afficher à nouveau la liste dans son intégralité, recliquez simplement sur l’hébergeur qui est sélectionné.
Modifier ou supprimer un hébergeur
Si vous constatez une erreur ou n’avez plus besoin d’un hébergeur, cliquez sur les … sur la ligne de l’hébergeur concerné. Vous aurez alors la possibilité de choisir entre mettre à jour les informations ou supprimer l’hébergeur :
Notez que vous ne pourrez pas supprimer l’hébergeur tant que des domaines y faisant référence existeront dans la liste de gauche.
Ajouter un domaine
Vous avez un nouveau domaine que vous souhaitez gérer dans happyDomain ? Commencez par entrer son nom dans le champ présent sous la liste. Vous serez ensuite guidé vers l’écran permettant de choisir l’hébergeur.
Certains hébergeurs DNS vous permettent de créer un domaine directement dans leur base de données, même s’il n’était pas déjà enregistré. Vous devrez d’abord sélectionner le bon hébergeur. Vous verrez alors un bouton « Créer sur » dédié.
Certains hébergeurs peuvent vous facturer cette action, soyez donc attentif si cela implique d’acheter réellement le domaine.
Lister vos hébergeurs de noms
Vous accédez à cette page en cliquant sur le lien « Les hébergeurs de mes domaines » dans le menu en haut.
Vos registres et hébergeurs de domaines
Cette page montre uniquement la liste des registres et des hébergeurs de domaines que vous avez ajouté à votre compte, et vous permet d’en ajouter.
Vous pouvez ajouter un nouvel hébergeur en cliquant sur le bouton +, présent en haut de la page.
En cliquant sur une ligne du tableau, vous accéderez aux paramètres qu’utilise happyDomain pour contacter cet hébergeur.
C’est là que vous allez pouvoir modifier le nom que vous avez donné à cet hébergeur, et que vous pourrez modifier les paramètres d’accès.
Ajouter un hébergeur
Vous accédez à cet écran en cliquant sur le lien « Les hébergeurs de mes domaines » dans le menu en haut, puis en cliquant sur le bouton « + Ajouter un nouvel hébergeur de domaines ».
Les registres et hébergeurs de domaines compatibles
La première étape lorsque vous souhaitez ajouter un domaine, est de déterminer chez quel hébergeur il se trouve.
Dans cet écran, on vous demande de sélectionner, parmi la liste des hébergeurs compatibles (d’autres seront ajoutés plus tard, si vous ne trouvez pas le votre, contactez-nous !), l’hébergeur chez qui vous avez votre domaine :
lorsque vous souhaitez ajouter un hébergeur, après avoir sélectionné le fournisseur,
lorsque vous souhaitez modifier les paramètres de connexion entre happyDomain et un hébergeur, par exemple sur la page d’accueil.
Nom de la connexion
Afin de vous y retrouvez parmi les différents hébergeurs, le premier champ qui vous est demandé est un nom.
Ce nom servira uniquement pour vous permettre d’identifier facilement l’hébergeur de votre domaine, si vous en avez plusieurs.
Autres champs
Chaque hébergeur a besoin d’informations différentes pour établir une connexion avec happyDomain.
Suivez les instructions sur chaque écran.
Fonctionnalités des fournisseurs
Tous les hébergeurs DNS ne prennent pas en charge les mêmes capacités. Certains savent lister automatiquement les domaines de votre compte, d’autres ne gèrent que les types d’enregistrements les plus courants, et quelques-uns prennent en charge des enregistrements plus spécialisés comme CAA ou TLSA. La page Fournisseurs supportés présente ces informations sous la forme d’un unique tableau comparatif, afin de vous aider à choisir le bon hébergeur, ou à comprendre pourquoi un service donné n’est pas disponible pour l’un de vos domaines.
Lire la matrice des fonctionnalités
La page liste tous les hébergeurs avec lesquels happyDomain s’intègre, un par ligne, avec son logo et son nom. Chaque colonne correspond à une capacité, et la cellule indique si l’hébergeur la prend en charge :
une coche verte signifie que la capacité est prise en charge ;
une croix rouge signifie qu’elle n’est pas prise en charge.
Le tableau défile horizontalement s’il est plus large que votre écran, et la ligne d’en-tête reste visible pendant le défilement : vous savez ainsi toujours à quelle capacité se rapporte chaque colonne.
Les capacités
La matrice compare les capacités suivantes :
Colonne
Signification
Fournisseurs supportés
L’hébergeur sait lister automatiquement les domaines de votre compte, ce qui vous permet de les importer sans saisir chaque nom. Lorsque ce n’est pas pris en charge, vous ajoutez les domaines manuellement.
Types courants
L’hébergeur prend en charge les types d’enregistrements du quotidien (comme A, AAAA, MX, TXT, CNAME). C’est ce dont la plupart des domaines ont besoin.
CAA
Prise en charge des enregistrements CAA, qui déclarent les autorités de certification autorisées à émettre des certificats pour votre domaine.
OPENPGPKEY
Prise en charge des enregistrements OPENPGPKEY, utilisés pour publier des clés publiques OpenPGP dans le DNS.
PTR
Prise en charge des enregistrements PTR, utilisés principalement pour le DNS inverse (associer une adresse IP à un nom).
SRV
Prise en charge des enregistrements SRV, qui annoncent l’emplacement d’un service (port et hôte) pour les protocoles qui s’appuient dessus.
SSHFP
Prise en charge des enregistrements SSHFP, qui publient les empreintes des clés d’hôte SSH dans le DNS.
TLSA
Prise en charge des enregistrements TLSA, utilisés par DANE pour lier un certificat à un nom.
Pourquoi c’est important
Lorsque vous ajoutez un service à un sous-domaine, happyDomain ne propose que les types de services que votre hébergeur peut réellement publier. Si un service que vous attendiez apparaît grisé, la matrice des fonctionnalités est l’endroit où vérifier si le type d’enregistrement sous-jacent est pris en charge par cet hébergeur.
Choisir un hébergeur
Si vous hésitez encore sur l’endroit où héberger votre DNS, servez-vous de cette page pour vous assurer que l’hébergeur envisagé couvre les types d’enregistrements dont vous avez besoin. Un hébergeur qui prend en charge les types courants suffit pour la plupart des sites web et des configurations de messagerie ; les colonnes spécialisées ne comptent que si vous utilisez les fonctionnalités correspondantes (DANE, DNS inverse, empreintes SSH, etc.).
Une fois votre hébergeur choisi, rendez-vous sur la page pour l’ajouter à happyDomain.
Importer un domaine
Importer un domaine dans happyDomain ne rend pas happyDomain propriétaire de votre domaine. Cette action n’implique aucune modification auprès de votre hébergeur habituel. happyDomain va communiquer avec votre hébergeur ou votre serveur afin de consulter les services qui sont actuellement enregistrés.
Vous pouvez voir sur cet écran les différents hébergeurs que vous avez déjà configuré.
Si votre domaine fait parti d’un des comptes listés, cliquez simplement dessus, il sera ajouté automatiquement.
Si vous n’avez pas encore ajouté l’hébergeur, vous pouvez le faire maintenant, en suivant le lien « Ajouter maintenant ! ».
Utiliser l'éditeur de zone
L’éditeur de zone est l’écran principal pour travailler sur un domaine. Il présente le contenu de votre zone regroupé par sous-domaine, et vous permet d’ajouter, modifier et supprimer les services et enregistrements qui composent votre zone, sans rien changer chez votre hébergeur tant que vous n’avez pas décidé de publier vos changements.
Disposition de l’éditeur
Lorsque vous ouvrez un domaine, l’écran est divisé en deux parties :
À gauche, une barre latérale liste tous les sous-domaines de la zone. Elle donne aussi accès aux actions concernant l’ensemble du domaine (historique, journal d’audit, contrôles, WHOIS, import/export, etc.).
À droite, le Visualiseur de zone affiche le contenu de la zone, un bloc par sous-domaine.
Tout en haut de la barre latérale se trouvent le bouton Ajouter un sous-domaine et un menu en forme d’engrenage regroupant les autres actions. Le bouton servant à transmettre vos changements à votre hébergeur (« Diffuser mes changements ») est également accessible depuis cet écran ; voyez cette page pour les détails.
Rien n’est envoyé automatiquement
Chaque modification que vous faites dans l’éditeur est conservée localement dans happyDomain. Elle n’est transmise à votre hébergeur que lorsque vous la publiez explicitement.
Parcourir la zone
La zone est organisée par sous-domaine. La racine du domaine apparaît en premier (affichée avec le nom de domaine seul), suivie de chaque sous-domaine. Les sous-domaines intermédiaires qui ne portent aucun service sont tout de même affichés, signalés par une icône en pointillés, afin que vous puissiez toujours voir l’arborescence complète.
Cliquez sur le titre d’un sous-domaine pour le déplier ou le replier et révéler les services qu’il contient.
Lorsqu’un bloc est replié, un badge indique combien de services il contient ; survolez-le pour obtenir un aperçu rapide.
Utilisez la barre latérale pour accéder directement à un sous-domaine : elle reflète la liste et fait défiler le visualiseur jusqu’au bloc correspondant.
Les alias pointant vers un sous-domaine apparaissent à côté de son titre, sous forme d’un badge « + N alias ».
Enregistrements et services
Par défaut, happyDomain ne vous présente pas une liste brute d’enregistrements DNS. Il regroupe au contraire les enregistrements liés en services, des objets de plus haut niveau plus simples à appréhender (un serveur de courrier, un site web, une délégation, etc.). Chaque service se déploie en montrant les enregistrements concrets qu’il génère.
Si vous préférez travailler directement avec les enregistrements individuels, vous pouvez changer le mode d’affichage de la zone dans vos préférences. L’éditeur propose alors un bouton Ajouter un enregistrement au lieu d’Ajouter un service.
Ajouter un sous-domaine
Cliquez sur Ajouter un sous-domaine en haut de la barre latérale.
Saisissez le nom du sous-domaine à créer (relatif à votre domaine).
happyDomain vous propose ensuite d’ajouter immédiatement un premier service sur ce sous-domaine.
Un sous-domaine n’existe réellement qu’à partir du moment où il porte au moins un service : les deux étapes sont donc enchaînées.
Ajouter un service
Pour ajouter un service à un sous-domaine existant :
Repérez le bloc du sous-domaine (ou la racine du domaine) dans le visualiseur.
Cliquez sur le bouton + présent sur le titre du sous-domaine, ou utilisez l’action Ajouter un service.
Choisissez le type de service dans le sélecteur. La liste s’adapte à ce qui existe déjà sur ce sous-domaine (par exemple, vous ne pouvez pas ajouter deux services en conflit).
Remplissez le formulaire du service choisi, puis enregistrez.
Inspecter un service
Cliquez sur un service pour ouvrir le panneau de détails qui apparaît par la droite. Il présente :
Une description du type de service et le commentaire éventuel que vous avez défini.
Les enregistrements DNS concrets que le service produit.
L’état de propagation (date de la dernière publication de la modification).
Les contrôles de santé éventuellement rattachés à ce service (voyez /fr/pages/checks/).
Depuis ce panneau, vous pouvez aussi ajuster le TTL par défaut du service, le modifier ou le supprimer.
Modifier un service
Ouvrez le panneau de détails du service, puis cliquez sur Modifier ce service ; ou utilisez le bouton crayon affiché sur les services simples comme les alias.
happyDomain ouvre le formulaire d’édition complet du service.
Effectuez vos changements et enregistrez. Le visualiseur se met à jour pour les refléter.
Supprimer un service
Ouvrez le panneau de détails du service.
Cliquez sur Supprimer ce service.
Le service et tous les enregistrements qu’il générait sont retirés de votre copie de travail de la zone.
Certains services ne peuvent pas être supprimés
Le service d’origine d’une zone (celui qui porte le SOA et les serveurs de noms faisant autorité) est essentiel et ne peut pas être supprimé depuis l’éditeur.
Pour les alias (CNAME) et les pointeurs inverses (PTR), un bouton de suppression dédié est disponible directement sur le titre du sous-domaine.
Alias
Lorsqu’un sous-domaine porte des services, vous pouvez lui rattacher un alias à l’aide du bouton en forme de lien présent sur son titre. L’alias fait pointer un autre nom vers ce sous-domaine.
Et ensuite
Aucune des opérations ci-dessus ne change quoi que ce soit chez votre hébergeur pour l’instant. Lorsque vos modifications vous conviennent :
Examinez ce qui va changer, puis envoyez les changements ; voyez /fr/pages/publish-changes/.
Un domaine est rarement plat : il se compose d’une racine (l’apex, noté @) et d’une hiérarchie de sous-domaines tels que www, mail ou blog.staging. happyDomain présente cette hiérarchie de façon claire et navigable, afin que vous puissiez retrouver et gérer rapidement chaque partie de votre zone.
La liste des sous-domaines
Lorsque vous ouvrez un domaine, la barre latérale de gauche affiche la liste des sous-domaines pour la version de zone sélectionnée. Chaque entrée est présentée sous la forme d’un chemin relatif au domaine, l’apex étant affiché sous la forme du nom de domaine lui-même.
Cette liste se comporte comme une table des matières :
elle est indentée pour refléter la hiérarchie : un sous-domaine est décalé vers la droite en fonction de sa profondeur dans l’arbre, si bien que blog.staging apparaît imbriqué sous staging ;
cliquer sur une entrée fait défiler le panneau principal jusqu’au sous-domaine correspondant ;
au fil de votre défilement dans la zone, la barre latérale met en évidence le sous-domaine que vous consultez et suit automatiquement votre position.
Les niveaux intermédiaires qui ne portent aucun service propre restent affichés, de sorte que l’arbre demeure cohérent et facile à lire. (Pour les zones inverses, seules les entrées réelles sont listées.)
Gérer un sous-domaine
Dans le panneau principal, chaque sous-domaine regroupe les services qui lui sont rattachés. Vous pouvez y ajouter, modifier ou supprimer des services. L’ajout d’un service à un sous-domaine existant est détaillé dans la page Services.
Créer un nouveau sous-domaine
Pour créer un sous-domaine entièrement nouveau (qui n’existe pas encore dans votre zone), utilisez l’action Ajouter un sous-domaine, en haut de la barre latérale.
1. Saisir le nom du sous-domaine
Une fenêtre s’ouvre et vous demande le nouveau sous-domaine à créer sous votre domaine. Saisissez le nom relatif au domaine : par exemple, entrez www pour créer www.example.com, ou blog.staging pour créer un chemin imbriqué en une seule fois.
Le nom est validé au fur et à mesure de la saisie. Vous n’avez besoin de fournir que la partie située à gauche de votre nom de domaine ; happyDomain ajoute le domaine pour vous.
Apex et chemins imbriqués
Laissez le champ vide (ou utilisez @) pour viser la racine du domaine elle-même. Vous pouvez aussi créer plusieurs niveaux d’un coup en saisissant un chemin avec des points, comme a.b.c : les niveaux intermédiaires sont créés au besoin.
2. Ajouter un premier service
Créer un sous-domaine n’a de sens que s’il porte au moins un service : happyDomain enchaîne donc directement avec le sélecteur de services dès que vous confirmez le nom. Choisissez le type de service et remplissez son formulaire exactement comme décrit dans la page Services.
Le nouveau sous-domaine apparaît alors dans la barre latérale et dans le panneau principal, avec le service que vous venez d’ajouter.
Les modifications sont préparées
Créer un sous-domaine et son service ne contacte pas immédiatement votre hébergeur DNS. Comme toute autre modification, l’opération est préparée localement et n’est envoyée à votre hébergeur qu’au moment de la publication de la zone. Consultez la vue abstraite pour savoir comment vérifier et appliquer vos modifications.
Autres actions sur le domaine
À côté du bouton Ajouter un sous-domaine, un menu donne accès aux actions concernant l’ensemble du domaine, notamment :
afficher ou réimporter la zone, ou téléverser un fichier de zone ;
retirer le domaine de happyDomain.
Services
happyDomain ne vous demande pas de raisonner en termes d’enregistrements DNS individuels. À la place, il regroupe les enregistrements qui vont ensemble au sein d’un unique service porteur de sens : une messagerie, un site web, une délégation, une politique CAA, etc. C’est le fondement de la vue abstraite de votre zone.
Qu’est-ce qu’un service ?
Un service est un objet de plus haut niveau qui masque la complexité d’un ou de plusieurs enregistrements DNS derrière un formulaire clair, orienté usage.
Par exemple, au lieu d’éditer séparément un enregistrement MX, quelques enregistrements A/AAAA et un enregistrement SPF de type TXT, vous remplissez un seul service messagerie. happyDomain se charge de générer les bons enregistrements, avec les bons noms et la bonne syntaxe.
Chaque service appartient à une famille :
Services (abstraits) : les objets recommandés, pensés pour les humains (messagerie, site web, CAA, délégation, etc.). Ils se traduisent automatiquement en un ou plusieurs enregistrements.
Fournisseurs : des services liés à un acteur tiers précis qui publie son propre assistant (par exemple un service hébergé nécessitant un ensemble d’enregistrements prédéfini).
Ressources DNS brutes : une solution de repli qui vous permet d’ajouter directement un enregistrement unique (A, TXT, SRV, etc.), lorsqu’aucun service abstrait ne correspond à votre besoin.
Pourquoi des services plutôt que des enregistrements ?
Travailler avec des services vous évite d’avoir à mémoriser les types d’enregistrements exacts, leur ordre ou leur syntaxe. happyDomain valide votre saisie et génère du DNS correct à votre place, ce qui réduit fortement le risque d’erreur de configuration.
La vue par services d’un sous-domaine
Lorsque vous ouvrez un domaine, chaque sous-domaine est présenté sous la forme d’une liste des services qui lui sont rattachés. Un sous-domaine peut accueillir plusieurs services à la fois : par exemple, la racine (@) d’un domaine porte souvent à la fois un service de messagerie, un service de site web et une politique CAA.
Depuis cette vue, vous pouvez :
Ajouter un nouveau service au sous-domaine ;
Modifier un service existant pour en changer les valeurs ;
Supprimer un service dont vous n’avez plus besoin.
Toutes ces modifications sont préparées localement et ne sont appliquées chez votre hébergeur qu’au moment de leur publication. Consultez la vue abstraite pour comprendre le fonctionnement de l’édition et de la propagation.
Ajouter un service à un sous-domaine
Pour rattacher un nouveau service, placez-vous sur le sous-domaine où vous le souhaitez (voir Sous-domaines pour naviguer dans la zone), puis suivez ces étapes.
1. Ouvrir le sélecteur de services
Cliquez sur l’action Ajouter un service du sous-domaine. Un sélecteur s’ouvre, listant tous les types de services que vous pouvez ajouter.
Le sélecteur est organisé en onglets pour vous aider à restreindre la liste :
Tous : tous les types de services disponibles.
Services : les services abstraits de haut niveau (recommandé).
Fournisseurs : les services spécifiques à un fournisseur.
Ressources DNS brutes : un type d’enregistrement unique, lorsque vous avez besoin d’un contrôle total.
Vous pouvez également saisir un terme dans le champ de recherche, en haut, pour filtrer la liste par nom. Appuyer sur Entrée sélectionne le premier résultat disponible.
Entrées grisées
Certains types de services peuvent apparaître désactivés. Cela se produit lorsque le service ne peut pas être ajouté dans le contexte actuel : par exemple parce que votre hébergeur DNS ne prend pas en charge le type d’enregistrement sous-jacent, ou parce que ce service existe déjà sur ce sous-domaine et qu’une seule instance est autorisée. Survolez une entrée désactivée pour en connaître la raison.
2. Choisir le type de service
Sélectionnez le service correspondant à ce que vous souhaitez publier. happyDomain connaît les types d’enregistrements pris en charge par votre hébergeur : seuls les choix pertinents vous sont donc proposés. Pour savoir ce qu’un hébergeur donné sait gérer, consultez la page Fonctionnalités des fournisseurs.
3. Remplir le formulaire du service
happyDomain présente alors un formulaire adapté au service choisi. Chaque champ correspond à une information porteuse de sens (un hôte cible, une priorité, une clé publique, une valeur de politique, etc.) plutôt qu’à de la syntaxe d’enregistrement brute.
Renseignez les champs, puis validez pour ajouter le service au sous-domaine.
4. Vérifier les enregistrements générés
Une fois le formulaire validé, happyDomain convertit votre saisie en enregistrements DNS correspondants et les ajoute à la zone en préparation. Vous pouvez les vérifier dans la vue abstraite avant de publier vos modifications chez votre hébergeur.
Essayer les services sans compte
happyDomain propose également un générateur d’enregistrements public qui vous permet de construire et de prévisualiser les enregistrements DNS produits par un service sans être connecté. Choisissez un type de service, saisissez un nom de domaine, remplissez le formulaire : les entrées de fichier de zone générées s’affichent instantanément.
C’est un moyen pratique de découvrir comment un service donné se traduit en véritables enregistrements DNS, ou de récupérer un enregistrement à coller ailleurs.
Publier des modifications
Lorsque vous effectuez un changement dans happyDomain, celui-ci n’est pas immédiatement répercuté auprès de votre hébergeur. Vos modifications s’accumulent dans une copie de travail, et rien n’est transmis à votre hébergeur tant que vous n’avez pas décidé de publier. Avant cela, happyDomain vous permet d’examiner la liste exacte des changements produits par vos modifications, d’ajuster finement ce qui sera appliqué, et de consigner un message dans votre historique.
Ouvrir le différentiel
Dans l’éditeur de zone, le bouton « Diffuser mes changements » affiche un petit compteur indiquant le nombre de changements en attente détectés pour votre zone. Cliquez dessus pour ouvrir la fenêtre de relecture.
happyDomain calcule la différence entre la zone telle qu’elle existe actuellement chez votre hébergeur et la copie de travail que vous avez éditée. Si tout est déjà synchronisé, un message vous indiquera simplement qu’il n’y a rien à appliquer.
Comprendre le différentiel
Chaque ligne du différentiel décrit une correction concrète, formulée de façon lisible et colorée selon sa nature :
Couleur
Signification
Vert
Un ajout (un enregistrement créé)
Rouge
Une suppression (un enregistrement retiré)
Jaune
Une modification (un enregistrement existant modifié)
Bleu
Un autre type de changement (par exemple un réordonnancement ou une opération propre à l’hébergeur)
En bas de la fenêtre, un résumé récapitule le nombre d’ajouts, de suppressions et de modifications actuellement sélectionnés.
Choisir les changements à appliquer
Chaque ligne du différentiel comporte une case à cocher. Par défaut, les changements sont listés pour votre relecture, et c’est vous qui décidez lesquels conserver :
Décochez tout changement que vous ne souhaitez pas appliquer maintenant. Il reste dans votre copie de travail et réapparaîtra la prochaine fois.
Ne laissez cochés que les changements dont vous êtes sûr.
C’est utile lorsque vous avez fait plusieurs modifications sans rapport entre elles mais ne voulez en publier qu’une partie, ou lorsque vous souhaitez déployer un changement sensible séparément.
Le résumé et le bouton d’application se mettent à jour en direct selon votre sélection. Si rien n’est sélectionné, le bouton d’application reste désactivé.
Rédiger un message de validation
Avant d’appliquer, saisissez un message dans le champ « Qu’est-ce qui a changé ? ». Ce message est consigné dans votre historique aux côtés des changements.
Décrivez l’intention, pas les adresses IP
Le différentiel décrit les opérations techniques, mais c’est votre message qui rendra votre historique lisible plus tard. Lorsque vous aurez besoin de revoir ce que vous avez fait, « Déplacement du courrier vers un nouvel hébergeur » est bien plus facile à comprendre que de reconstituer le sens à partir d’une liste de changements d’IP.
Une étape de confirmation par sécurité
Selon les préférences de votre compte, happyDomain peut afficher un écran de confirmation supplémentaire après que vous avez choisi d’appliquer :
Il demande à votre hébergeur de préparer les corrections, puis vous montre exactement combien d’opérations l’hébergeur exécutera réellement pour votre sélection.
Si ce nombre diffère de ce que vous avez sélectionné (par exemple parce qu’un changement était déjà appliqué, ou parce que l’hébergeur décompose un changement en plusieurs), un avertissement s’affiche pour que vous puissiez vérifier avant de confirmer.
Vous pouvez configurer si cette confirmation apparaît toujours, jamais, ou uniquement lorsque les corrections préparées ne correspondent pas à votre sélection.
Après la publication
Une fois que vous confirmez, happyDomain envoie les changements sélectionnés à votre hébergeur et consigne l’opération, avec votre message, dans le journal du domaine. Vous pouvez ensuite consulter les déploiements passés à tout moment, et revenir à un état antérieur si besoin.
Pour inspecter la zone résultante elle-même plutôt que le différentiel, ou pour en conserver une copie sous forme de fichier de zone standard, consultez la page Importer et exporter.
Voir l'historique des changements
À chaque fois que vous publiez des modifications avec happyDomain, celles-ci sont enregistrées dans un journal. Ce journal vous permet de retrouver facilement l’état de vos domaines tels qu’ils étaient déployés précédemment, et de voir quand vous avez fait chaque modification.
Ouvrir l’historique
Depuis la page de votre domaine, ouvrez l’entrée Historique dans le menu. happyDomain affiche toutes les versions enregistrées de la zone, de la plus récente en haut à la plus ancienne en bas.
Pour garder la liste lisible, les versions sont regroupées par mois. Un en-tête marque le début de chaque mois, ce qui vous permet de retrouver rapidement une modification d’après sa période.
Lire une version
Chaque version est identifiée par le moment de sa dernière modification, accompagné de l’avatar et de l’adresse électronique de l’auteur qui l’a effectuée.
Trois dates peuvent être affichées pour une version :
Publiée le : le moment où cette version a été déployée chez votre fournisseur DNS. Une version sans cette date a été enregistrée, mais jamais publiée.
Enregistrée le : le moment où la version a été figée (sauvegardée comme un état définitif de la zone).
Dernière modification le : le moment où la version a été modifiée pour la dernière fois.
Si un message a été associé lors de la publication des changements, il apparaît sous les dates, à la manière d’un message de commit dans un gestionnaire de versions.
Voir la zone à un instant donné
Pour examiner le contenu complet de la zone tel qu’il était pour une version donnée, cliquez sur le bouton en forme d’œil situé à côté de sa date. happyDomain ouvre cette version en lecture seule, ce qui vous permet de parcourir tous les enregistrements exactement tels qu’ils étaient à ce moment.
Comparer deux versions
Sous chaque version (sauf la plus ancienne), la section Voir les changements vous permet de la comparer avec la version qui la précède immédiatement.
Dépliez la section pour révéler les modifications : les enregistrements ajoutés, supprimés et modifiés sont mis en évidence, ce qui vous permet de voir d’un coup d’œil ce que chaque publication a changé. La comparaison la plus récente est dépliée automatiquement à l’ouverture de la page.
Pas encore d’historique ?
Un domaine ne se constitue un historique qu’à partir du moment où vous commencez à y publier des changements. Si vous venez d’importer un domaine, son historique se remplira au fur et à mesure que vous effectuerez et publierez vos premières modifications.
Importer et exporter une zone
happyDomain peut échanger votre zone avec le reste du monde DNS en utilisant le format de fichier de zone standard (le célèbre format BIND). Vous pouvez importer un fichier de zone pour alimenter votre copie de travail, et exporter la zone actuelle pour la lire, la copier ou la conserver ailleurs.
Ces actions sont accessibles depuis le menu en forme d’engrenage situé en haut de la barre latérale de l’éditeur de zone.
Réimporter la zone en ligne
Avant de travailler avec des fichiers, il est utile de savoir que vous pouvez toujours récupérer la zone actuelle auprès de votre hébergeur. Dans le menu engrenage, choisissez « Récupérer la zone actuelle ».
Cette action contacte votre hébergeur, lit la zone telle qu’elle est en ce moment, et rafraîchit votre copie de travail à partir d’elle. Utilisez-la lorsque la zone a pu être modifiée en dehors de happyDomain, ou pour repartir d’un état propre.
Cela remplace les modifications non publiées
Réimporter la zone en ligne récupère la version de l’hébergeur. Tout changement local que vous n’aviez pas encore publié peut être écrasé : examinez donc d’abord vos changements en attente si vous souhaitez les conserver.
Importer un fichier de zone
Pour charger une zone à partir d’un fichier de zone standard :
Ouvrez le menu engrenage de la barre latérale et choisissez l’action d’import de zone.
Une fenêtre s’ouvre avec deux onglets :
Depuis du texte : collez le contenu d’un fichier de zone directement dans la zone de saisie.
Depuis un fichier de zone : sélectionnez un fichier sur votre ordinateur.
Cliquez sur le bouton d’envoi pour le transmettre.
happyDomain analyse le fichier de zone, reconnaît les enregistrements et les regroupe à nouveau en services dans votre copie de travail. Comme pour toute autre modification, le contenu importé reste local tant que vous ne l’avez pas publié.
Format standard
Le format attendu est le fichier de zone textuel standard, le même que celui qu’utilisent BIND et la plupart des outils DNS. Une ligne telle que @ 4269 IN SOA root ns 2042070136 ... est un exemple typique de ce que vous pouvez coller.
Exporter / visualiser la zone
Pour obtenir votre zone sous forme de fichier de zone standard :
Ouvrez le menu engrenage et choisissez « Voir ma zone ».
happyDomain affiche la zone actuelle au format BIND standard, avec coloration syntaxique.
Utilisez le bouton Copier dans le presse-papier pour récupérer le fichier entier en un clic.
Cette vue reflète toujours la zone que vous consultez actuellement. Si vous parcourez une version passée depuis l’historique, l’export montre cette version historique, ce qui est pratique pour comparer ou restaurer un état antérieur.
Cas d’usage typiques
Migrer depuis un autre outil : exportez la zone de votre outil précédent sous forme de fichier de zone, puis importez-la ici avec « Depuis un fichier de zone ».
Conserver une sauvegarde : ouvrez « Voir ma zone » et copiez le contenu dans un endroit sûr.
Édition en masse : exportez, modifiez le fichier dans votre éditeur favori, puis réimportez le résultat.
Après un import
Un import ne modifie que votre copie de travail. Pour le rendre effectif chez votre hébergeur :
happyDomain intègre un système de surveillance qui permet de lancer des vérifications automatiques sur vos domaines et vos services. Les vérificateurs collectent périodiquement des données (temps de réponse au ping, date d’expiration d’un domaine ou résultats d’audit DNS, par exemple), les évaluent au regard des seuils que vous définissez et rapportent un statut clair : OK, Avertissement, Critique ou Erreur.
Parcourir les vérificateurs disponibles
Vous pouvez consulter l’ensemble des vérificateurs disponibles depuis la page Vérifications, accessible par le menu principal.
Chaque vérificateur indique la portée à laquelle il s’applique :
Niveau domaine : vérifications qui concernent le domaine lui-même, indépendamment des enregistrements DNS (par exemple l’expiration du domaine via WHOIS).
Niveau zone : vérifications qui nécessitent le contenu complet de la zone (par exemple la validation DNSSEC).
Niveau service : vérifications qui ciblent un service précis sur un sous-domaine (par exemple un ping ou une vérification HTTP).
Utilisez la barre de recherche pour filtrer les vérificateurs par nom. Cliquez sur un vérificateur pour afficher sa description et ses options de configuration.
Configurer un vérificateur pour votre domaine
Pour mettre en place un vérificateur sur l’un de vos domaines :
Rendez-vous sur la page de votre domaine et ouvrez l’onglet Vérifications.
Un tableau présente les vérificateurs disponibles pour ce domaine. Cliquez sur Configurer en regard du vérificateur souhaité.
La page de configuration regroupe plusieurs sections :
Options du vérificateur
Les options sont réparties par catégorie :
Options d’administration : paramètres globaux contrôlés par l’administrateur (en lecture seule pour les utilisateurs ordinaires).
Configuration : préférences au niveau de l’utilisateur, comme les seuils d’avertissement et critique. Ce sont les principaux réglages que vous ajusterez.
Paramètres propres au domaine : valeurs renseignées automatiquement à partir du domaine vérifié (par exemple le nom de domaine lui-même).
Paramètres du vérificateur : paramètres d’exécution supplémentaires.
Renseignez ou ajustez les options selon vos besoins, puis cliquez sur Enregistrer.
Règles
Chaque vérificateur s’accompagne d’une ou plusieurs règles qui évaluent différents aspects des données collectées. Un vérificateur de ping peut par exemple comporter des règles distinctes pour la latence et la perte de paquets.
Vous pouvez activer ou désactiver chaque règle à l’aide des interrupteurs. Chaque règle peut également disposer de ses propres options à configurer.
Planifier des vérifications automatiques
Une fois un vérificateur configuré, vous pouvez planifier son exécution automatique à intervalle régulier.
Dans la section Planification de la page de configuration du vérificateur :
Activez Exécuter automatiquement pour mettre en place la planification.
Définissez l’intervalle de vérification (en heures) : il détermine la fréquence d’exécution.
L’heure de la prochaine exécution planifiée est affichée afin que vous sachiez quand aura lieu la prochaine vérification.
Cliquez sur Enregistrer pour appliquer la planification.
Limites d’intervalle
Chaque vérificateur définit un intervalle minimal et maximal afin d’éviter de surcharger les services externes. L’interface respecte ces bornes lorsque vous configurez la planification.
Lorsque la planification est désactivée, le vérificateur peut tout de même être lancé manuellement à tout moment.
Lancer une vérification manuellement
Vous pouvez déclencher une vérification à tout moment, sans attendre la planification :
Rendez-vous sur la page Exécutions du vérificateur (depuis la liste des vérifications du domaine, cliquez sur Voir les résultats).
Cliquez sur Lancer la vérification.
Une fenêtre s’ouvre, dans laquelle vous pouvez :
Sélectionner les règles à exécuter pour cette exécution.
Remplacer temporairement certaines options (ces remplacements ne sont pas enregistrés).
Cliquez sur Lancer la vérification pour démarrer l’exécution.
Un message de confirmation apparaît avec l’identifiant de l’exécution. Le résultat s’affiche dans la liste des exécutions une fois la vérification terminée.
Consulter les résultats des vérifications
Toutes les exécutions passées sont répertoriées sur la page Exécutions du vérificateur, accessible depuis l’onglet Vérifications de votre domaine en cliquant sur Voir les résultats.
Le tableau des exécutions présente :
Colonne
Description
Exécutée le
Date à laquelle la vérification a été lancée
Statut
Le résultat : OK, Avertissement, Critique, Erreur ou Inconnu
Message
Un résumé des constats
Durée
Le temps qu’a pris la vérification
Type
S’il s’agit d’une exécution planifiée ou manuelle
Cliquez sur Voir sur une exécution pour en afficher les résultats détaillés.
Comprendre le détail d’une exécution
La page de détail d’une exécution présente les résultats sous la forme la plus adaptée à ce que fournit le vérificateur.
Métriques
Lorsqu’un vérificateur produit des métriques (temps de réponse, pourcentage de perte de paquets, etc.), la page de détail affiche :
Un graphique en courbes qui trace l’évolution des valeurs de la métrique au fil des exécutions récentes.
Un tableau de données qui répertorie chaque métrique avec son nom, sa valeur et son unité.
Rapports HTML
Certains vérificateurs génèrent des rapports HTML détaillés (par exemple les résultats d’un audit DNS). Ces rapports sont affichés directement dans la page.
Données brutes
Vous pouvez à tout moment basculer vers la vue JSON brut pour examiner l’ensemble des données d’observation collectées durant l’exécution. Utilisez le sélecteur de vue en haut de la section du rapport pour passer de Métriques à Rapport HTML et JSON brut.
Évaluation des règles
Chaque règle exécutée durant l’exécution rapporte son propre statut et son propre message. Le détail règle par règle permet de comprendre quel aspect précis a déclenché un statut d’avertissement ou critique.
Vérifications au niveau service
Les vérificateurs qui s’appliquent au niveau service se configurent depuis la page du service concerné, et non depuis l’onglet Vérifications du domaine.
Rendez-vous sur votre domaine, puis sur le sous-domaine et le service concernés.
Ouvrez l’onglet Vérifications de ce service.
Le déroulement est identique à celui des vérificateurs de niveau domaine : configurer les options, mettre en place la planification, lancer des vérifications et consulter les résultats.
Les vérificateurs de niveau service reçoivent automatiquement les informations relatives au service auquel ils sont rattachés (comme les adresses IP d’un service Serveur), ce qui réduit la configuration manuelle.
Gérer les résultats des vérifications
Depuis la liste des exécutions, vous pouvez :
Supprimer un résultat en cliquant sur l’action de suppression d’une exécution précise.
Supprimer tous les résultats d’un vérificateur grâce à l’option de suppression groupée (une fenêtre de confirmation apparaît).
Cela peut être utile pour faire le ménage dans les anciennes données ou repartir de zéro après des changements de configuration.
Référence des statuts
Les vérificateurs rapportent l’un des statuts suivants, par ordre de gravité :
Statut
Signification
OK
Tout se situe dans les paramètres acceptables
Information
Constat informatif, aucune action nécessaire
Avertissement
Un seuil est sur le point d’être atteint ; une attention est recommandée
Critique
Un seuil a été dépassé ; une action est requise
Erreur
La vérification elle-même a échoué (erreur de collecte, mauvaise configuration)
Inconnu
La vérification n’a pas pu déterminer de résultat
Disponibilité et recherches de domaines
happyDomain embarque quelques outils de diagnostic qui fonctionnent sur n’importe quel nom de domaine, qu’il soit ou non géré dans happyDomain. Ils permettent de vérifier si un nom est disponible à l’enregistrement, de consulter ses informations d’enregistrement (WHOIS), et d’interroger directement ses enregistrements DNS (résolveur).
Vérificateur de disponibilité
La page Disponibilité vous permet de surveiller un ou plusieurs noms de domaine que vous souhaiteriez enregistrer, et d’être prévenu dès que l’un d’eux devient disponible.
Surveiller un domaine
Pour commencer à surveiller un nom :
Saisissez le domaine qui vous intéresse (par exemple mondomaine.example) dans le champ situé en haut de la page.
Cliquez sur Ajouter.
Le nom est ajouté à votre liste de surveillance et une première vérification est lancée immédiatement en arrière-plan, afin de ne pas avoir à attendre la prochaine vérification automatique pour connaître son état actuel.
Lire le statut
Chaque domaine surveillé affiche un badge qui reflète le résultat de la dernière vérification :
Badge
Signification
Disponible
Le nom semble libre et peut probablement être enregistré.
Enregistré
Le nom est déjà pris.
(message d’erreur)
La vérification n’a pas pu aboutir (par exemple l’extension n’est pas prise en charge, ou le registre n’a pas pu être contacté).
Jamais vérifié
Aucun résultat n’est encore disponible.
La date de la dernière vérification est indiquée à côté du statut.
Revérifier et supprimer
Cliquez sur Vérifier maintenant à côté d’un domaine pour déclencher immédiatement une nouvelle vérification. Une animation est affichée pendant que le contrôle s’exécute en arrière-plan, et le statut se met à jour automatiquement une fois terminé.
Cliquez sur l’icône de corbeille pour cesser de surveiller un domaine. Une confirmation est demandée avant la suppression.
La disponibilité reste indicative
Le résultat de disponibilité n’est qu’une indication. Certaines extensions ne peuvent pas être vérifiées de manière fiable, et un nom qui semble libre peut tout de même être réservé ou bloqué au moment de l’enregistrement. Confirmez toujours auprès d’un bureau d’enregistrement avant de compter sur un nom.
Recherche WHOIS
L’outil WHOIS affiche les informations publiques d’enregistrement d’un domaine : son bureau d’enregistrement, ses dates importantes et son statut actuel.
Saisissez un nom de domaine puis lancez la recherche. happyDomain affiche alors un résumé clair des informations collectées :
Statut : les statuts d’enregistrement renvoyés pour le domaine (par exemple active, clientTransferProhibited, un état hold, etc.), présentés sous forme de badges colorés.
Date de création et Date d’expiration : la date du premier enregistrement du domaine et celle à laquelle son enregistrement doit expirer. L’expiration est accompagnée d’une barre de progression et d’un compte à rebours, qui passe à l’orange puis au rouge à l’approche de l’échéance.
Bureau d’enregistrement : l’organisme auprès duquel le domaine est enregistré, avec un lien vers son site lorsqu’il est disponible.
Serveurs de noms : les serveurs de noms faisant autorité déclarés pour le domaine.
Si le nom n’est pas enregistré, un message vous indique que le domaine est introuvable. Si la recherche elle-même échoue, l’erreur est affichée.
WHOIS et vérificateur de disponibilité
Le vérificateur de disponibilité s’appuie sur les mêmes données d’enregistrement que la recherche WHOIS. Si vous souhaitez la vue complète de l’enregistrement d’un nom, utilisez l’outil WHOIS ; si vous voulez simplement savoir si un nom est libre (et être prévenu ultérieurement), ajoutez-le à votre liste de surveillance de disponibilité.
Résolveur DNS
Le résolveur DNS vous permet d’interroger le DNS en direct de n’importe quel domaine, exactement tel qu’il est publié sur Internet en cet instant. C’est pratique pour confirmer qu’une modification s’est bien propagée, ou pour inspecter un domaine que vous ne gérez pas.
Saisissez un nom de domaine puis lancez la requête. Par défaut, tous les types d’enregistrement sont demandés (ANY). Ouvrez les options Avancées pour affiner la requête :
Champ (type d’enregistrement) : restreignez la requête à un seul type d’enregistrement (A, AAAA, MX, TXT, etc.).
Résolveur : choisissez le résolveur DNS auquel envoyer la requête. Plusieurs résolveurs publics réputés sont proposés, et vous pouvez sélectionner Personnalisé pour saisir l’adresse du résolveur de votre choix.
Afficher les enregistrements DNSSEC : inclure les enregistrements liés à DNSSEC (RRSIG, NSEC, NSEC3) dans les résultats, masqués par défaut.
Si vous gérez des domaines dans happyDomain, leurs noms vous sont suggérés au fur et à mesure que vous saisissez le domaine à interroger.
Les résultats sont regroupés par type d’enregistrement, et chaque entrée affiche ses champs ainsi que son TTL. Lorsque le domaine existe mais ne possède aucun enregistrement du type demandé, un message l’indique explicitement.
Résolveur et votre zone dans happyDomain
Le résolveur montre ce qui est actuellement publié par les serveurs faisant autorité, ce qui peut différer d’une zone en cours d’édition dans happyDomain tant que vous n’avez pas publié vos modifications.
Tester un domaine
Documentation à faire
Votre compte et vos réglages
happyDomain vous permet de gérer votre compte et d’ajuster le comportement de l’interface. Vos préférences sont enregistrées avec votre compte ; vous les retrouvez ainsi sur chaque appareil depuis lequel vous vous connectez.
Vous accédez à cette page en cliquant sur le lien « Mon compte » dans le menu en haut. Chaque option est décrite ci-dessous.
Langue
Choisissez la langue utilisée dans toute l’interface. La liste contient toutes les langues actuellement disponibles sur votre instance happyDomain. Le changement prend effet dès l’enregistrement.
Aide des champs
Les champs des formulaires sont souvent accompagnés d’un court texte d’aide. Ce réglage détermine la façon dont cette aide s’affiche :
Masquer : aucun texte d’aide n’est affiché.
Infobulle près du champ : l’aide apparaît sous forme d’infobulle au survol du champ.
Sous le champ lors de la saisie : l’aide apparaît sous le champ, mais uniquement pendant que vous le modifiez.
Sous le champ, en permanence : l’aide reste affichée sous chaque champ.
Choisissez le niveau d’accompagnement adapté à votre aisance avec le DNS.
Confirmation avant application
Lorsque vous publiez des modifications chez votre fournisseur DNS, happyDomain peut afficher une étape de confirmation au préalable. Ce réglage décide du moment :
Demander en cas de différences inattendues : la confirmation n’apparaît que lorsque les modifications diffèrent de ce qui était attendu.
Toujours demander : une confirmation est systématiquement affichée avant l’application.
Ne jamais demander, écraser à la publication : les modifications sont appliquées directement, sans étape de confirmation.
Choisissez la façon dont la zone d’un domaine est présentée :
Vue en grille (le plus simple) : la présentation la plus visuelle et la plus accessible.
Vue en liste (le plus rapide) : une liste compacte, plus rapide à parcourir.
Liste avec enregistrements (avancé) : une liste qui expose également les enregistrements DNS sous-jacents, pour les utilisateurs avancés.
Afficher les types d’enregistrements DNS
Cet interrupteur affiche le type d’enregistrement (A, MX, CNAME, etc.) associé à chaque service. Il s’adresse aux personnes déjà familières du DNS qui souhaitent voir les types techniques derrière les noms de services simplifiés.
Lettre d’information
L’option permettant de recevoir les nouvelles des prochaines améliorations vous est proposée lors de la création de votre compte. Pour modifier ensuite votre abonnement, référez-vous au lien de désinscription présent dans les messages que vous recevez.
Enregistrement
Une fois vos préférences définies, cliquez sur « Enregistrer les réglages ». Un message de confirmation apparaît et les nouveaux réglages prennent effet immédiatement, y compris un changement de langue si vous en avez effectué un.
Changer de mot de passe
Une partie dédiée de la page vous permet de changer le mot de passe de votre compte.
Changer l’adresse électronique de compte
Il n’est pour l’instant pas possible de changer l’adresse électronique de votre compte. Nous vous invitons à nous contacter si vous souhaitez la changer.
Supprimer son compte
La dernière partie de la page vous permet de supprimer votre compte happyDomain.
Une fois la suppression validée, votre compte ne sera plus accessible et l’ensemble des données vous appartenant sera supprimé peu de temps après, lors d’un nettoyage régulier de la base de données.
À partir du moment où vous supprimez votre compte, vos domaines continueront de répondre selon la dernière mise à jour que vous avez effectué sur happyDomain. La suppression n’affectera pas les données distribuées.
Sessions et accès à l'API
happyDomain ne propose pas de fonctionnalité distincte de « clés d’API ». À la place, toutes les façons d’accéder à la plateforme, que ce soit via l’interface web ou via l’API REST, reposent sur le même type de jeton de session. Gérer ses sessions revient donc aussi à gérer ses accès à l’API.
Vous gérez vos sessions depuis la section sécurité de votre compte, sous « Sessions actives ».
Lister vos sessions actives
La liste présente toutes les sessions actuellement ouvertes sur votre compte. Pour chacune, vous voyez :
sa description (le nom donné lors de sa création), suivie d’une courte empreinte dérivée du jeton ;
un badge « session actuelle » sur la session que vous utilisez en ce moment ;
sa date de création, sa date de dernière utilisation et sa date d’expiration.
Les sessions sont triées de la plus récemment utilisée à la plus ancienne.
Créer un jeton pour accéder à l’API
Pour obtenir un jeton utilisable pour appeler l’API :
Cliquez sur « Créer une clé d’API ».
Donnez une description à la session (par exemple le nom du script ou de la machine qui l’utilisera). Cela vous aidera à la reconnaître plus tard dans la liste.
Validez la création.
Le secret du jeton est alors affiché une seule fois. Utilisez le bouton en forme d’œil pour le révéler et le bouton de copie pour le placer dans votre presse-papiers.
Copiez le secret immédiatement
Le secret de la session n’est affiché qu’au moment de sa création et n’est plus jamais montré ensuite. Copiez-le et conservez-le en lieu sûr avant de fermer la fenêtre. En cas de perte, supprimez la session et créez-en une nouvelle.
Utiliser un jeton avec l’API REST
Le jeton se transmet dans l’en-tête HTTP Authorization, en tant que jeton « Bearer ». Par exemple, pour lister vos domaines :
Remplacez VOTRE_JETON_SECRET par le secret que vous avez copié, et l’hôte par l’adresse de votre instance happyDomain. On atteint n’importe quel point d’accès de l’API de la même manière, en envoyant cet en-tête à chaque requête.
Révoquer une session
Pour révoquer une session (et le jeton qui lui est associé), cliquez sur le bouton de suppression sur sa ligne. Le jeton cesse aussitôt de fonctionner. Vous ne pouvez pas supprimer depuis cette liste la session que vous utilisez actuellement ; pour y mettre fin, déconnectez-vous simplement, ou utilisez l’option ci-dessous.
Fermer toutes les sessions
Le bouton « Fermer toutes les sessions » referme l’ensemble des sessions d’un coup, y compris celle que vous utilisez. C’est utile si vous soupçonnez la fuite d’un jeton : tous les jetons existants deviennent invalides et vous êtes renvoyé vers la page de connexion. Il vous faudra alors vous reconnecter et recréer les jetons d’API dont vous avez encore besoin.
Notifications
happyDomain peut vous prévenir lorsque quelque chose change sur vos domaines. Les notifications reposent sur le système de supervision et contrôles : chaque fois qu’un contrôle change de statut (par exemple de OK à Avertissement, ou un retour à OK après un problème), happyDomain peut envoyer une alerte vers les canaux que vous avez configurés.
Vous gérez les notifications depuis la page Notifications des paramètres de votre compte. Elle s’organise en trois onglets : Canaux, Préférences et Historique.
Ce qui déclenche une notification
Les notifications sont liées à vos contrôles. happyDomain surveille le statut rapporté par chaque contrôle et envoie une notification lorsque :
un contrôle se dégrade jusqu’à (ou au-delà d’) une gravité qui vous importe, par exemple en atteignant Avertissement, Critique ou Erreur ;
un contrôle se rétablit, en revenant à un état sain, si vous avez demandé à être prévenu des rétablissements.
Chaque notification décrit donc une transition de statut (l’ancien statut et le nouveau) pour une cible donnée. Les transitions qui vous parviennent, et par quels canaux, sont entièrement déterminées par vos préférences (voir ci-dessous).
Canaux
Un canal est une destination vers laquelle les notifications sont envoyées. Ouvrez l’onglet Canaux pour les gérer.
Pour en ajouter un, cliquez sur Ajouter, choisissez un Type, donnez-lui un Nom (afin de le reconnaître par la suite) et renseignez les champs propres à ce type. Un canal peut être activé ou désactivé à l’aide d’un interrupteur, sans avoir à le supprimer.
happyDomain propose les types de canaux suivants d’origine :
E-mail
Envoie les notifications à une adresse e-mail.
Adresse e-mail : le destinataire. Si le champ est laissé vide, la notification est envoyée à l’adresse e-mail de votre compte.
Webhook
Envoie une requête HTTP vers une URL de votre choix, ce qui est utile pour intégrer happyDomain à des outils de discussion, des plateformes d’automatisation ou vos propres services.
URL du webhook (obligatoire) : le point d’accès qui recevra la notification.
En-têtes du webhook : des en-têtes HTTP personnalisés facultatifs (paires nom/valeur) à ajouter à la requête, par exemple un en-tête d’autorisation.
Secret du webhook : un secret facultatif servant à signer la requête, afin que le destinataire puisse vérifier qu’elle provient bien de happyDomain.
UnifiedPush
Délivre des notifications push sur vos appareils via un distributeur UnifiedPush.
Point d’accès UnifiedPush (obligatoire) : l’URL du point d’accès fournie par votre application UnifiedPush.
Autres types de canaux
La liste des types disponibles dépend de ce que l’administrateur de l’instance a activé. Pour les types pour lesquels happyDomain ne propose pas de formulaire dédié, l’éditeur bascule sur un champ de configuration JSON brut.
Tester un canal
Une fois un canal créé et activé, utilisez le bouton d’envoi/test situé à côté de lui pour délivrer une notification de test. Cela confirme que la configuration fonctionne avant de compter dessus pour de vraies alertes.
Préférences
Les canaux indiquent où vont les notifications ; les préférences indiquent quoi est envoyé et quand. Ouvrez l’onglet Préférences puis cliquez sur Ajouter pour créer une règle.
Une préférence combine les réglages suivants :
Portée
Choisissez l’étendue d’application de la règle :
Globale : s’applique à l’ensemble de vos domaines et services.
Domaine : s’applique à un seul domaine que vous sélectionnez.
Service : s’applique à un service précis (vous sélectionnez le domaine et fournissez l’identifiant du service).
Canaux
Sélectionnez un ou plusieurs de vos canaux configurés pour recevoir les notifications correspondant à cette préférence. Si vous n’avez pas encore de canal, créez-en un d’abord dans l’onglet Canaux.
Statut minimum
Choisissez la gravité la plus basse qui doit déclencher une notification. Les niveaux disponibles, par gravité croissante, sont OK, Info, Avertissement, Critique et Erreur. Seuls les changements de statut qui atteignent ce niveau (ou un niveau supérieur) sont notifiés. Par exemple, choisir Avertissement signifie que vous êtes alerté pour les états Avertissement, Critique et Erreur, mais pas pour les changements purement informatifs.
Notifier le rétablissement
Lorsque cette option est activée, vous recevez également une notification quand un contrôle auparavant dégradé revient à un état sain, afin de savoir qu’un problème a été résolu.
Heures calmes
Vous pouvez définir une période durant laquelle les notifications sont retenues, par exemple la nuit. Indiquez une heure de début et une heure de fin (de 0 à 23). Lorsque les heures calmes sont actives, les alertes survenant dans cette plage ne sont pas envoyées immédiatement.
Activée
Chaque préférence peut être activée ou désactivée à l’aide d’un interrupteur, ce qui permet de suspendre temporairement une règle sans la supprimer.
Commencez simplement
Une configuration courante consiste en une unique préférence Globale, pointant vers un canal, avec un statut minimum d’Avertissement et les notifications de rétablissement activées. Vous pourrez ensuite ajouter des règles plus spécifiques par domaine ou par service au fur et à mesure de vos besoins.
Historique
L’onglet Historique liste les notifications que happyDomain a tenté d’envoyer. Pour chaque entrée, vous pouvez voir :
la cible concernée ;
la transition de statut (ancien statut → nouveau statut) ;
si l’envoi a réussi ou échoué (avec le message d’erreur en cas d’échec).
Utilisez Charger plus pour remonter dans les entrées plus anciennes. Cette vue est l’endroit où vérifier pourquoi une alerte attendue ne vous est pas parvenue, par exemple un canal mal configuré provoquant des échecs répétés.
Quotas et limites
Une instance happyDomain peut appliquer des quotas à chaque compte. Les quotas sont des limites définies par la personne qui administre l’instance (l’administrateur), et non par vous. Ils servent principalement à préserver l’équité sur une instance partagée et à éviter de surcharger les serveurs ; ils concernent avant tout le système de supervision et contrôles.
Les quotas sont gérés par l’administrateur
Les quotas sont en lecture seule pour les utilisateurs ordinaires. Il n’existe aucun écran dans votre compte permettant de consulter ou de modifier votre propre quota : ils sont configurés côté serveur et ne sont ajustés qu’au travers de l’interface d’administration. Si une limite vous gêne, la bonne démarche consiste à contacter l’administrateur de votre instance.
Ce que les quotas peuvent couvrir
Sur une instance happyDomain par défaut, les quotas portent sur le fonctionnement du planificateur de supervision pour votre compte. Un administrateur peut définir, par compte ou pour l’ensemble de l’instance :
Nombre maximal de contrôles par jour : un plafond sur le nombre d’exécutions de contrôles lancées automatiquement pour vous chaque jour. Une fois ce plafond atteint, les contrôles planifiés suivants attendent le lendemain.
Conservation des résultats : la durée pendant laquelle les résultats de vos contrôles sont conservés avant que les anciennes exécutions ne soient automatiquement nettoyées.
Pause pour inactivité : après une période sans connexion, le planificateur peut cesser d’exécuter vos contrôles automatiques jusqu’à votre prochaine connexion. Cela évite que l’instance ne dépense des ressources pour des comptes abandonnés.
Pause de planification : un administrateur peut entièrement suspendre la planification automatique d’un compte.
Chacun de ces réglages peut rester à la valeur par défaut de l’instance, être fixé à une valeur particulière pour votre compte, ou être explicitement rendu illimité, à la discrétion de l’administrateur.
Pas de limite fixe sur le nombre de domaines
Sur une instance happyDomain standard, le système de quotas n’impose pas de plafond intégré sur le nombre de domaines que vous pouvez gérer. Si une instance particulière restreint ce point, il s’agit d’une politique propre à cette instance ; demandez à son administrateur les détails qui vous concernent.
Ce que vous voyez lorsqu’une limite est atteinte
Les quotas agissent surtout en arrière-plan. Vous ne verrez généralement pas d’écran de quota ; vous en constatez plutôt les effets :
Les contrôles automatiques cessent de s’exécuter : si votre plafond quotidien de contrôles est atteint, ou si votre compte est en pause pour inactivité ou de planification, les contrôles planifiés ne s’exécutent simplement plus tant que la condition persiste. Vous pouvez toujours déclencher un contrôle manuellement depuis l’interface des contrôles.
Les anciens résultats disparaissent : avec une limite de conservation, les exécutions plus anciennes que la durée autorisée sont supprimées lors du nettoyage régulier, si bien que l’historique ne remonte que jusqu’à un certain point.
Une action est refusée : lorsqu’une opération dépasserait une limite, l’interface affiche un message d’erreur expliquant ce qui n’a pas fonctionné.
Si vous ne savez pas si un comportement est dû à un quota, ou si vous avez besoin qu’une limite soit relevée, contactez l’administrateur de votre instance.
L’enregistrement Start Of Authority (SOA) est défini par la RFC 1035. Il est obligatoire et unique : un seul SOA figure à l’apex (la racine) de chaque zone DNS. Sa présence indique que le serveur de noms fait autorité sur la zone. Il porte également les paramètres qui régissent la réplication de la zone entre serveurs et sa mise en cache par les résolveurs.
Les champs de l’enregistrement SOA
Le SOA réunit sept valeurs :
Champ
Description
MNAME (serveur primaire)
Le nom du serveur de noms primaire (maître) de la zone.
RNAME (responsable)
L’adresse de courriel du responsable de la zone, encodée à la manière du DNS : le @ est remplacé par un point. Ainsi, hostmaster.example.com. désigne hostmaster@example.com.
Serial
Un numéro de version de la zone. Il augmente à chaque modification, afin que les serveurs secondaires sachent qu’ils doivent transférer le nouveau contenu.
Refresh
L’intervalle (en secondes) au bout duquel un serveur secondaire vérifie le numéro de série auprès du primaire.
Retry
Le délai (en secondes) que respecte un secondaire avant de retenter une vérification ayant échoué.
Expire
La durée (en secondes) pendant laquelle un secondaire continue de servir la zone lorsqu’il ne parvient pas à joindre le primaire, avant de considérer les données comme périmées.
Minimum (cache négatif)
La durée pendant laquelle les résolveurs conservent en cache les réponses négatives (NXDOMAIN), selon la RFC 2308.
Le SOA dans happyDomain
happyDomain ne présente pas le SOA comme un enregistrement à éditer champ par champ. La racine de votre zone est plutôt modélisée par un service Origin, qui regroupe le SOA et les serveurs de noms de la zone (les enregistrements NS). On retrouve donc le SOA à la racine du domaine, aux côtés de la liste des serveurs faisant autorité, et non dans un formulaire distinct.
Le numéro de série est, dans la plupart des cas, géré automatiquement. Lors de la publication de vos modifications, de nombreux hébergeurs DNS gèrent eux-mêmes ce numéro. happyDomain détecte cette capacité, puis relit la zone après publication afin de refléter le numéro de série réellement attribué par l’hébergeur. Vous n’avez normalement pas à le renseigner à la main.
Ce que l’on peut modifier, et ce que l’on ne peut pas
Le comportement exact dépend de votre hébergeur DNS. Certains exposent l’ensemble du SOA et laissent happyDomain en transmettre les valeurs ; d’autres gèrent eux-mêmes le numéro de série (et parfois les autres minuteries). Lorsque l’hébergeur prend en charge le numéro de série, la valeur affichée par happyDomain reflète simplement l’état publié et se met à jour automatiquement.
Pour en savoir plus sur la représentation de l’apex et des autres regroupements, consultez le chapitre /fr/reference/services/.
TXT
Un enregistrement TXT (défini par la RFC 1035) associe une ou plusieurs chaînes de texte libre à un nom de votre zone. Il ne porte aucune signification propre. C’est ce qui en fait l’un des types d’enregistrement les plus polyvalents : chaque application est libre de définir sa propre convention pour le texte qu’elle y dépose.
Usages courants
Comme un enregistrement TXT peut contenir n’importe quel texte, il est devenu le support de nombreuses conventions répandues :
Vérification de propriété ou de site : un fournisseur demande de publier un jeton afin de confirmer que l’on contrôle bien le domaine.
SPF : déclare quels serveurs sont autorisés à envoyer du courrier pour le domaine.
DKIM : publie la clé publique servant à signer le courrier sortant.
DMARC : définit la politique à appliquer lorsqu’une vérification SPF ou DKIM échoue.
Diverses autres publications de clés ou de politiques propres à différents outils.
Pour la plupart de ces usages, happyDomain propose des services dédiés, de plus haut niveau (SPF, DKIM, DMARC, vérification de site, etc.). Ils sont plus simples et plus sûrs à utiliser qu’un enregistrement TXT brut : ils guident la saisie avec les bons champs et en valident la syntaxe. On les retrouve dans le chapitre /fr/reference/services/, notamment parmi les services liés au courrier électronique. Mieux vaut recourir à ces services dès que l’un d’eux correspond au besoin.
Quand un enregistrement TXT devient un service
Lorsque happyDomain lit votre zone, il reconnaît les enregistrements TXT qui suivent une convention connue (SPF, DKIM, DMARC, etc.) et les présente sous leur service dédié plutôt que comme un simple enregistrement texte. Seuls les enregistrements TXT sans préfixe ni syntaxe reconnus apparaissent comme un Enregistrement texte brut.
Éditer un enregistrement TXT dans happyDomain
Dans l’éditeur de zone, un enregistrement TXT ordinaire apparaît sous la forme d’un service Enregistrement texte. Il est volontairement minimal : un unique champ contient le contenu textuel de l’enregistrement.
Pour le manipuler :
Ouvrez le sous-domaine où l’enregistrement doit se trouver (la racine de la zone, ou un sous-domaine comme www).
Ajoutez ou ouvrez le service Enregistrement texte.
Saisissez la chaîne de texte complète dans son unique champ.
Ajustez la durée de vie (TTL) si besoin, puis publiez vos modifications pour les appliquer.
La valeur saisie est conservée telle quelle. La modifier puis publier met à jour l’enregistrement TXT correspondant sur ce sous-domaine.
Chaînes longues
Au niveau du protocole DNS, une chaîne de texte ne peut excéder 255 octets dans un enregistrement TXT. Les valeurs plus longues sont automatiquement découpées en fragments de 255 octets. Il suffit de saisir la chaîne complète dans happyDomain : aucun découpage manuel n’est nécessaire.
Le service E-Mail permet de déclarer les serveurs de courrier responsables d’une zone. Il oriente également vers les services associés, qui régissent la manière dont le courrier est envoyé et authentifié pour le domaine.
Dans happyDomain, ce service porte le nom de E-Mail servers. Son unique rôle consiste à publier les enregistrements MX, ceux qui indiquent au reste d’Internet où livrer les courriels adressés à votre domaine. Tout ce qui protège le courrier sortant, c’est-à-dire prouver qu’un message provient réellement de vous, relève de services dédiés et distincts, décrits plus bas.
Recevoir du courrier : les enregistrements MX
Un enregistrement MX (Mail eXchanger) désigne une machine qui accepte le courrier du domaine. Une zone en publie généralement plusieurs, afin que la livraison continue de fonctionner si l’un des serveurs devient indisponible.
Chaque entrée comporte deux parties :
La priorité : un nombre qui ordonne les serveurs. Les serveurs émetteurs essaient d’abord le nombre le plus bas ; les valeurs plus élevées ne servent que de secours. Deux enregistrements partageant la même priorité sont considérés comme équivalents et se répartissent la charge.
Le serveur de courrier : le nom d’hôte de la machine qui reçoit le courrier (par exemple mx1.example.com.). Cet hôte doit lui-même se résoudre vers une adresse ; il ne s’agit pas d’indiquer directement une adresse IP.
Une configuration courante ressemble à ceci :
Priorité
Serveur de courrier
10
mx1.example.com.
20
mx2.example.com.
Ici, mx1 est contacté en premier et mx2 sert de secours.
Un seul service E-Mail par sous-domaine
Le service E-Mail servers est unique : un sous-domaine donné ne peut héberger qu’un seul service de ce type, qui rassemble l’ensemble de ses enregistrements MX. Pour déclarer des serveurs de courrier à la fois sur l’apex (example.com) et sur un sous-domaine (mail.example.com), on ajoute le service à chacun d’eux séparément.
Envoyer du courrier : authentification et lutte contre l’usurpation
Publier des enregistrements MX suffit pour recevoir du courrier, mais ne dit rien sur les serveurs autorisés à en envoyer en votre nom. Sans cette indication, n’importe qui peut forger des messages au nom de votre domaine. happyDomain propose plusieurs services dédiés, chacun gérant ses propres enregistrements DNS, pour établir cette protection :
SPF (Sender Policy Framework) : un enregistrement TXT, placé en général à l’apex de la zone, qui énumère les serveurs autorisés à envoyer du courrier pour le domaine. Les destinataires comparent le serveur émetteur à cette liste.
DKIM (DomainKeys Identified Mail) : publie la partie publique d’une clé de signature dans un enregistrement TXT, sous un sélecteur ._domainkey. Vos serveurs signent les messages sortants, et les destinataires vérifient la signature à l’aide de cette clé publiée.
DMARC (Domain-based Message Authentication, Reporting and Conformance) : un enregistrement TXT placé sur _dmarc, qui indique aux destinataires comment traiter les messages échouant aux contrôles SPF ou DKIM (les laisser passer, les mettre en quarantaine ou les rejeter), et où envoyer les rapports agrégés.
Deux autres services couvrent la sécurité du transport et la remontée d’informations :
MTA-STS : déclare que le courrier destiné à votre domaine doit être livré au travers d’une connexion sécurisée (TLS).
TLS-RPT : recueille les rapports relatifs aux problèmes de livraison TLS rencontrés par les serveurs émetteurs.
Ces services sont indépendants du service E-Mail servers. On peut n’ajouter que ceux dont on a besoin, mais une configuration de courrier complète et bien protégée associe le plus souvent MX, SPF, DKIM et DMARC.
Dans l’éditeur de zone
Pour configurer le courrier d’un sous-domaine dans l’éditeur de zone de happyDomain :
On ajoute le service E-Mail servers au sous-domaine, puis on renseigne une ligne par serveur de courrier, avec sa priorité et son nom d’hôte.
On ajoute SPF, DKIM et DMARC en tant que services à part entière sur le sous-domaine concerné (SPF et DMARC se placent généralement à l’apex). Chacun présente un formulaire dédié plutôt que le contenu brut de l’enregistrement.
Comme chacune de ces abstractions constitue un service distinct, on les gère séparément, même si elles concourent toutes à rendre le courrier de votre domaine à la fois livrable et digne de confiance. Le chapitre /fr/reference/services/ présente la liste complète des services disponibles.
Vérificateurs
Les vérificateurs sont les briques de base du système de surveillance de happyDomain. Chacun collecte des données sur un domaine, une zone ou un service, les évalue selon un ensemble de règles, puis rapporte un état clair (OK, Avertissement, Critique ou Erreur).
Ce chapitre documente chaque vérificateur fourni avec happyDomain : ce qu’il contrôle, la portée à laquelle il s’applique, les options que vous pouvez régler et les règles qu’il évalue. Pour le fonctionnement au quotidien (configuration, planification et lecture des résultats dans l’interface), consultez /fr/pages/checks/.
Portées
Chaque vérificateur déclare la portée sur laquelle il opère :
Niveau domaine : concerne le domaine lui-même, indépendamment de ses enregistrements DNS (statut d’enregistrement, expiration, verrou de transfert…).
Niveau zone : nécessite le contenu complet de la zone (validation DNSSEC, cohérence de la délégation…).
Niveau service : cible un service précis publié sur un sous-domaine (HTTP, TLS, ping…), et se configure depuis l’onglet Vérifications de ce service.
États
Les vérificateurs rapportent l’un des états suivants, par ordre de gravité :
État
Signification
OK
Tout se situe dans les paramètres acceptables
Info
Information utile, aucune action requise
Avertissement
Un seuil est sur le point d’être atteint ; attention recommandée
Critique
Un seuil a été dépassé ; action requise
Erreur
La vérification elle-même a échoué (erreur de collecte, mauvaise configuration)
Le vérificateur Expiration du domaine surveille la date d’expiration de l’enregistrement d’un nom de domaine et vous avertit avant qu’elle ne soit dépassée. Laisser un domaine expirer peut conduire à le perdre au profit d’un autre titulaire : c’est l’une des vérifications les plus importantes au niveau du domaine.
Il s’agit d’un vérificateur de niveau domaine : il concerne l’enregistrement du domaine lui-même, et non ses enregistrements DNS. La date d’expiration est obtenue auprès du registre via une requête WHOIS/RDAP, en même temps que le nom du bureau d’enregistrement.
Ce qui est vérifié
Une seule règle, domain_expiry_check, compare le nombre de jours restant avant l’expiration à deux seuils et rapporte le statut correspondant.
Statut
Condition
Critique
Jours restants ≤ seuil critique
Avertissement
Jours restants ≤ seuil d’avertissement (mais au-dessus du critique)
OK
Jours restants au-dessus du seuil d’avertissement
Erreur
La requête WHOIS/RDAP a échoué ou aucune date d’expiration n’est disponible
Le message indique toujours le nombre de jours restant avant l’expiration, quel que soit le statut.
Le vérificateur expose également une métrique, domain_expiry_days_remaining, étiquetée avec le bureau d’enregistrement, afin de suivre l’évolution du temps restant.
Options
Option
Signification
Défaut
Seuil d’avertissement (jours)
Nombre de jours avant l’expiration déclenchant un avertissement. Doit être positif.
30
Seuil critique (jours)
Nombre de jours avant l’expiration déclenchant une alerte critique. Doit être positif.
7
Le critique doit être inférieur à l’avertissement
Le seuil critique doit être strictement inférieur au seuil d’avertissement. happyDomain refuse une configuration où critical_days est supérieur ou égal à warning_days.
Dans happyDomain
Activez ce vérificateur depuis la vue Vérifications du domaine ; consultez /fr/pages/checks/ pour savoir comment configurer et planifier les vérifications. Le nom de domaine est renseigné automatiquement.
Pour la situation inverse, surveiller un domaine que vous ne possédez pas encore afin de l’enregistrer dès qu’il se libère, consultez le vérificateur /fr/reference/checkers/domain-availability/ et /fr/pages/domain-availability/. Les vérificateurs de niveau domaine apparentés incluent /fr/reference/checkers/domain-lock/ et /fr/reference/checkers/domain-contact/.
Verrou de transfert du domaine
Le vérificateur Verrou de transfert du domaine vérifie qu’un domaine porte les codes de statut EPP qui le protègent contre les transferts, modifications ou suppressions non autorisés. Un domaine verrouillé (par exemple portant clientTransferProhibited) ne peut pas être transféré sans que le verrou soit d’abord retiré, ce qui constitue une défense essentielle contre le détournement de domaine.
Il s’agit d’un vérificateur de niveau domaine : les codes de statut sont lus auprès du registre via une requête WHOIS/RDAP, et non dans les enregistrements DNS de la zone.
Ce qui est vérifié
Une seule règle, domain_lock_check, compare les codes de statut EPP rapportés par le registre à la liste des statuts que vous exigez.
Statut
Condition
OK
Tous les statuts requis sont présents sur le domaine
Critique
Un ou plusieurs statuts requis sont absents (les codes manquants sont listés)
Inconnu
Aucun statut requis n’est configuré (rien à vérifier)
Erreur
La requête WHOIS/RDAP a échoué
La comparaison tolère les différences de format : les espaces, tirets et tirets bas sont ignorés et la casse n’a pas d’importance. Ainsi clientTransferProhibited, client-transfer-prohibited et client transfer prohibited sont tous considérés comme équivalents.
Options
Option
Signification
Défaut
Statuts de verrouillage requis
Liste de codes de statut EPP séparés par des virgules qui doivent être présents sur le domaine (par exemple clientTransferProhibited, clientUpdateProhibited, clientDeleteProhibited). Au moins un code doit être fourni.
clientTransferProhibited
Dans happyDomain
Activez ce vérificateur depuis la vue Vérifications du domaine ; consultez /fr/pages/checks/ pour savoir comment configurer et planifier les vérifications. Le nom de domaine est renseigné automatiquement.
Ce vérificateur se combine naturellement avec /fr/reference/checkers/domain-expiry/ et /fr/reference/checkers/domain-contact/ pour garder la maîtrise de l’enregistrement d’un domaine.
Contacts du domaine
Le vérificateur Contacts du domaine compare les informations de contact enregistrées pour un domaine (contacts titulaire, administratif et technique) aux valeurs que vous attendez. Une modification inattendue d’un contact, en particulier le titulaire, peut être un signe précoce de détournement ou d’une erreur administrative.
Il s’agit d’un vérificateur de niveau domaine : les données de contact sont lues auprès du registre via une requête WHOIS/RDAP. De nombreux registres masquent les champs de contact pour des raisons de confidentialité ; ce vérificateur détecte ce masquage et le signale au lieu de le traiter comme une divergence.
Ce qui est vérifié
Une seule règle, domain_contact_check, évalue chaque rôle de contact sélectionné et émet un résultat par rôle.
Statut
Condition
OK
Le contact du rôle correspond à chaque valeur attendue fournie
Avertissement
Un champ ne correspond pas à la valeur attendue, ou le rôle est absent de l’enregistrement
Info
Le contact est protégé par confidentialité (masqué) et ne peut donc pas être comparé
Inconnu
Aucune valeur attendue n’est configurée, ou aucun rôle n’est sélectionné (rien à vérifier)
Erreur
La requête WHOIS/RDAP a échoué
Les comparaisons sont exactes et insensibles à la casse. Le masquage est détecté à partir de marqueurs courants dans les champs de contact comme redacted, privacy, withheld, not disclosed, data protected, contact privacy et whoisguard.
Options
Option
Signification
Défaut
Nom du titulaire attendu
Si renseigné, les rôles configurés doivent rapporter ce nom exact (insensible à la casse).
(vide)
Organisation attendue
Si renseignée, les rôles configurés doivent rapporter cette organisation exacte (insensible à la casse).
(vide)
Adresse e-mail attendue
Si renseignée, les rôles configurés doivent rapporter cette adresse exacte (insensible à la casse).
(vide)
Rôles de contact à vérifier
Liste de rôles séparés par des virgules parmi registrant, admin, tech.
registrant
Au moins une valeur attendue est nécessaire
Si ni le nom, ni l’organisation, ni l’adresse e-mail attendus ne sont renseignés, le vérificateur n’a rien à comparer et rapporte un statut Inconnu. Renseignez au moins une valeur attendue pour que la vérification ait du sens.
Dans happyDomain
Activez ce vérificateur depuis la vue Vérifications du domaine ; consultez /fr/pages/checks/ pour savoir comment configurer et planifier les vérifications. Le nom de domaine est renseigné automatiquement.
Ce vérificateur complète /fr/reference/checkers/domain-expiry/ et /fr/reference/checkers/domain-lock/, qui ensemble gardent l’enregistrement d’un domaine sous surveillance.
Disponibilité du domaine
Le vérificateur Disponibilité du domaine surveille un nom de domaine que vous ne possédez pas et vous notifie dès qu’il devient disponible à l’enregistrement. C’est le pendant de /fr/reference/checkers/domain-expiry/ : au lieu de protéger un domaine que vous détenez, il vous permet d’en saisir un dès qu’il se libère.
Il s’agit d’un vérificateur de niveau domaine : l’état d’enregistrement est déterminé auprès du registre via une requête WHOIS/RDAP. Un domaine est considéré comme disponible lorsque le registre indique qu’il n’existe pas.
Ce qui est vérifié
Une seule règle, domain_availability_check, indique si le domaine surveillé est toujours enregistré ou s’il s’est libéré.
Statut
Condition
Critique
Le domaine est désormais disponible à l’enregistrement
OK
Le domaine est toujours enregistré (le bureau d’enregistrement et la date d’expiration sont rapportés lorsqu’ils sont connus)
Erreur
La requête de disponibilité a échoué
Pourquoi la disponibilité est rapportée comme Critique
Le statut est volontairement inversé par rapport à la convention habituelle. Rapporter Critique lorsque le domaine devient disponible fait franchir le seuil de notification à la transition enregistré → disponible, de sorte que vous êtes alerté exactement une fois lorsque le domaine se libère.
Options
Ce vérificateur ne propose aucune option configurable. Le nom de domaine surveillé est fourni automatiquement.
Dans happyDomain
Contrairement aux autres vérificateurs de niveau domaine, Disponibilité du domaine n’est pas planifié sur les domaines que vous gérez. Il est piloté par la liste dédiée de surveillance de disponibilité. Consultez /fr/pages/domain-availability/ pour savoir comment ajouter un domaine à surveiller, et /fr/pages/checks/ pour le fonctionnement général des vérifications.
Expiration des références externes
Le vérificateur Expiration des références externes récupère les informations d’enregistrement des domaines externes auxquels votre zone fait référence. Lorsqu’un enregistrement pointe vers un nom que vous ne possédez pas (un CNAME vers un service tiers, un MX vers un prestataire externe, une délégation NS, etc.), la sûreté de votre zone dépend du maintien de l’enregistrement de ce domaine externe. S’il expire et qu’il est ré-enregistré par quelqu’un d’autre, le pointeur peut être détourné.
Il s’agit d’un vérificateur de niveau zone : il énumère les cibles externes découvertes dans la zone et effectue une requête WHOIS/RDAP par domaine enregistrable distinct. Les cibles partageant le même domaine enregistrable réutilisent une seule requête, et les requêtes s’exécutent avec une concurrence limitée afin qu’une zone volumineuse ne sature pas le registre.
Ce qui est vérifié
Ce vérificateur est avant tout un collecteur. Il rassemble les informations WHOIS par cible (nom enregistrable, date d’expiration, date de création, bureau d’enregistrement, statuts) et les publie pour le vérificateur de références orphelines, où sont émis les verdicts exploitables sur l’expiration, la période de rédemption ou un ré-enregistrement récent.
Sa propre règle, external_whois_collected, ne rapporte que le déroulement de la collecte :
Statut
Condition
OK
Le WHOIS a été collecté pour toutes les cibles externes
Info
Certaines requêtes ont réussi et d’autres ont échoué (résultat partiel), ou aucune cible externe n’a été signalée
Avertissement
La requête WHOIS a échoué pour toutes les cibles externes
Erreur
L’observation WHOIS externe n’a pas pu être lue
Les verdicts se trouvent dans le vérificateur de références orphelines
Ce vérificateur ne décide pas si un domaine externe est dangereusement proche de l’expiration. Il se contente d’en récupérer les informations. Les verdicts d’expiration, de rédemption et de ré-enregistrement sont produits par le vérificateur de références orphelines associé, qui consomme les informations collectées ici.
Options
Ce vérificateur ne propose aucune option configurable. La liste des cibles externes est fournie automatiquement à partir des références découvertes dans la zone.
Dans happyDomain
Activez ce vérificateur depuis la vue Vérifications de la zone ; consultez /fr/pages/checks/ pour savoir comment configurer et planifier les vérifications. La découverte des cibles externes est automatique.
Pour l’enregistrement des domaines que vous possédez directement, consultez /fr/reference/checkers/domain-expiry/.
Validation DNSSEC
Le vérificateur DNSSEC audite l’hygiène opérationnelle d’une zone signée. Il ne revalide pas de bout en bout la chaîne de confiance cryptographique (cette tâche est confiée à un vérificateur dédié fondé sur DNSViz) : il se concentre sur les aspects de politique et d’exploitation au quotidien de la signature, à savoir les algorithmes et tailles de clés utilisés, la validité et la fraîcheur des signatures, le mode de déni d’existence (NSEC ou NSEC3) et la cohérence de la vue servie par chaque serveur faisant autorité.
Ce vérificateur s’applique au niveau du domaine : il opère sur l’apex de la zone. À partir d’un résolveur récursif d’amorçage, il découvre les serveurs de noms de l’apex et interroge le DS parent, puis questionne directement chaque serveur faisant autorité.
Ce qu’il vérifie
Le vérificateur évalue les règles suivantes. Plusieurs d’entre elles sont pilotées par les options décrites plus bas.
Chaîne et matériel de clés
Règle
Vérifie
Sévérité
dnssec_zone_signed
Le parent annonce un DS mais l’apex ne sert aucun DNSKEY (zone signée cassée).
Critique
dnssec_dnskey_consistent
Tous les serveurs faisant autorité renvoient le même RRset DNSKEY.
Critique
dnssec_dnskey_query_ok
Tous les serveurs faisant autorité ont répondu à la requête DNSKEY.
Critique
dnssec_ksk_present
Au moins un DNSKEY porte le bit SEP (clé de signature de clé, KSK).
Critique
dnssec_dnskey_count
Avertit lorsque trop de DNSKEY sont publiés, ce qui gonfle les réponses et le potentiel d’amplification.
Avertissement
Algorithmes et robustesse des clés
Règle
Vérifie
Sévérité
dnssec_algorithm_allowed
Aucun DNSKEY n’utilise un algorithme interdit ou hors de la liste autorisée.
Critique
dnssec_algorithm_modern
Recommande ECDSAP256SHA256 (13) ou Ed25519 (15) plutôt que RSA.
Avertissement
dnssec_rsa_keysize
Les DNSKEY RSA atteignent la taille de module minimale.
Critique
Signatures
Règle
Vérifie
Sévérité
dnssec_rrsig_present_dnskey
Le RRset DNSKEY est signé.
Critique
dnssec_rrsig_present_soa
Le RRset SOA est signé.
Critique
dnssec_rrsig_validity_window
Chaque RRSIG observé est dans sa fenêtre d’inception/expiration.
Critique
dnssec_rrsig_freshness
Alerte anticipée lorsque les RRSIG approchent de l’expiration (détecte les signeurs bloqués).
Critique
Déni d’existence (NSEC / NSEC3)
Règle
Vérifie
Sévérité
dnssec_denial_uses_nsec3
Avertit lorsque la zone utilise NSEC nu, ce qui la rend parcourable (RFC 5155 / RFC 7129).
Avertissement
dnssec_nsec3_iterations
NSEC3PARAM.Iterations ne dépasse pas le plafond configuré (la RFC 9276 §3.1 recommande 0).
Critique
dnssec_nsec3_salt_empty
NSEC3PARAM.SaltLength vaut 0 (RFC 9276 §3.1 : un sel n’apporte aucune protection mesurable).
Avertissement
dnssec_nsec3_optout_only_when_signed_delegations
Note informative lorsque le drapeau OPT-OUT est positionné dans une zone feuille.
Info
dnssec_denial_consistent
Tous les serveurs faisant autorité utilisent le même schéma de déni d’existence.
Avertissement
Hygiène des TTL
Règle
Vérifie
Sévérité
dnssec_dnskey_ttl_min
Avertit lorsque le TTL des DNSKEY est trop court pour être utile au cache.
Avertissement
Options
Option
Signification
Défaut
nsec3IterationsMax
Plafond RFC 9276 §3.1 sur NSEC3PARAM.Iterations. À relever uniquement si votre signeur ne sait pas encore publier 0.
0
nsec3IterationsSeverity
Sévérité lorsque les itérations dépassent le plafond. Mettre crit pour appliquer strictement la RFC 9276.
warn
signatureFreshness
Avertit lorsque le RRSIG le plus proche expire dans moins de ce nombre de jours.
7
signatureFreshnessCrit
Critique lorsque le RRSIG le plus proche expire dans moins de ce nombre de jours.
1
minRSAKeySize
Taille de module RSA minimale acceptable, en bits.
2048
requireSEP
Exige au moins un DNSKEY portant le bit SEP (KSK).
true
dnskeyTTLMin
TTL minimal des DNSKEY, en secondes ; des TTL plus courts nuisent à la mise en cache.
3600
L’administrateur peut également définir un résolveur d’amorçage (resolver, au format host:port) servant à découvrir les serveurs de noms de l’apex et à interroger le DS parent ; sa valeur par défaut est /etc/resolv.conf.
Ce que ce vérificateur ne fait pas
Le vérificateur DNSSEC ne vérifie pas l’intégralité de la chaîne de confiance cryptographique depuis la racine. Pour cette validation de bout en bout, utilisez le vérificateur fondé sur DNSViz. Le présent vérificateur le complète en détectant les problèmes de politique et d’exploitation (algorithmes faibles, signatures expirantes, NSEC parcourable) qu’une validation de chaîne seule ne révélerait pas.
Dans happyDomain
Activez le vérificateur DNSSEC sur un domaine depuis sa vue Vérifications. Consultez /fr/pages/checks/ pour le déroulé complet de l’ajout, de la planification et de la lecture des vérifications. Pour le passage de relais DS/DNSKEY côté délégation, voyez le vérificateur /fr/reference/checkers/delegation/.
Délégation
Le vérificateur Délégation audite la façon dont une zone est déléguée depuis son parent. Il confronte la zone parente et les serveurs de noms enfants pour confirmer la cohérence du passage de relais : le parent et l’enfant s’accordent sur l’ensemble des NS, les enregistrements de glue sont corrects, la chaîne DNSSEC DS/DNSKEY est alignée, et chaque serveur délégué est joignable et réellement faisant autorité pour la zone.
Ce vérificateur s’applique au niveau du service : il cible un service de délégation (abstract.Delegation) publié sur un sous-domaine, et se configure depuis l’onglet Vérifications de ce service.
Ce qu’il vérifie
Chaque règle émet un code de constat stable, afin que les résultats puissent être appariés de façon déterministe.
Nombre de serveurs de noms et découverte du parent
Code de constat
Ce qui est vérifié
delegation_too_few_ns
La zone déclare au moins minNameServers enregistrements NS (la RFC 1034 recommande ≥ 2).
delegation_no_parent_ns
La zone parente et ses serveurs faisant autorité peuvent être découverts.
delegation_parent_query_failed
Chaque serveur de noms parent répond à la requête NS pour la zone déléguée.
delegation_parent_tcp_failed
Chaque serveur de noms parent est joignable en TCP (RFC 7766).
NS et glue au parent
Code de constat
Ce qui est vérifié
delegation_ns_mismatch
Le RRset NS au parent correspond à l’ensemble NS déclaré par le service.
delegation_missing_glue
Les serveurs de noms dans le bailliage disposent de glue (A/AAAA) au parent.
delegation_unnecessary_glue
Les serveurs de noms hors bailliage ne portent pas de glue superflue.
Passage de relais DNSSEC
Code de constat
Ce qui est vérifié
delegation_ds_query_failed
Le RRset DS peut être interrogé auprès des serveurs de noms parents.
delegation_ds_mismatch
Le RRset DS au parent correspond à l’ensemble DS déclaré par le service.
delegation_ds_missing
Des enregistrements DS sont présents au parent lorsque DNSSEC est attendu (conditionné par requireDS).
delegation_ds_rrsig_invalid
Le RRset DS est couvert par un RRSIG valide au parent.
delegation_dnskey_query_failed
Le RRset DNSKEY peut être interrogé auprès de chaque serveur de noms enfant.
delegation_dnskey_no_match
Au moins un DNSKEY enfant correspond à un condensat DS publié au parent.
Joignabilité et autorité des serveurs enfants
Code de constat
Ce qui est vérifié
delegation_ns_unresolvable
Chaque nom de serveur déclaré se résout en au moins une adresse.
delegation_unreachable
Chaque serveur de noms enfant répond aux requêtes DNS sur ses adresses annoncées.
delegation_lame
Chaque serveur de noms enfant fait autorité pour la zone (pas de délégation boiteuse).
delegation_no_authoritative_answer
Chaque serveur de noms enfant positionne le drapeau AA dans ses réponses pour la zone.
delegation_tcp_failed
Chaque serveur de noms enfant répond en TCP (conditionné par requireTCP).
delegation_soa_serial_drift
Le numéro de série SOA est cohérent entre tous les serveurs de noms enfants.
delegation_ns_drift
Le RRset NS renvoyé par chaque enfant correspond au RRset NS au parent.
delegation_glue_mismatch
Les adresses de glue chez l’enfant correspondent à celles du parent (conditionné par allowGlueMismatch).
Options
Option
Signification
Défaut
requireDS
Si activé, l’absence de DS au parent est traitée comme critique (sinon informative).
false
requireTCP
Si activé, les serveurs de noms qui ne répondent pas en TCP sont signalés comme critiques (sinon en avertissement).
true
minNameServers
En dessous de ce nombre, la délégation est signalée en avertissement (la RFC 1034 recommande au moins 2).
2
allowGlueMismatch
Si désactivé, les divergences de glue/adresses entre parent et enfant sont signalées comme critiques.
false
Dans happyDomain
Activez le vérificateur Délégation depuis l’onglet Vérifications d’un service de délégation. Consultez /fr/pages/checks/ pour le déroulé complet. Pour la cohérence entre les serveurs faisant autorité de l’apex lui-même (plutôt que le passage de relais parent/enfant), voyez /fr/reference/checkers/authoritative-consistency/ ; pour l’hygiène DNSSEC de la zone signée, voyez /fr/reference/checkers/dnssec/.
Cohérence des serveurs faisant autorité
Le vérificateur Cohérence des serveurs faisant autorité sonde chaque serveur faisant autorité d’une zone et vérifie qu’ils s’accordent, entre eux et avec la délégation parente. Là où le vérificateur /fr/reference/checkers/delegation/ se concentre sur le passage de relais parent/enfant, celui-ci porte sur l’apex lui-même : tous les serveurs servent-ils les mêmes NS et SOA, sont-ils tous joignables en UDP et en TCP, prennent-ils en charge EDNS0, répondent-ils de façon autoritaire, et à quelle vitesse répondent-ils ?
Ce vérificateur s’applique au niveau du service : il cible un service d’origine ou d’origine NS-seule (abstract.Origin, abstract.NSOnlyOrigin) et se configure depuis l’onglet Vérifications de ce service.
Ce qu’il vérifie
Chaque règle émet un code de constat. Plusieurs sévérités dépendent des options ci-dessous.
Code de constat
Sévérité par défaut
Condition
authoritative_consistency_no_ns
Critique
Aucun serveur de noms n’a pu être découvert (liste déclarée vide et requête parente sans réponse).
authoritative_consistency_too_few_ns
Avertissement
Moins de serveurs déclarés que minNameServers (la RFC 1034 recommande au moins 2).
authoritative_consistency_parent_query_failed
Avertissement
La requête de délégation parente a échoué (erreur réseau, REFUSED, etc.).
authoritative_consistency_parent_drift
Avertissement
Le RRset NS du parent ne correspond pas aux NS déclarés dans le service.
authoritative_consistency_ns_unresolvable
Critique
Un serveur de noms déclaré n’a aucun enregistrement A ni AAAA.
authoritative_consistency_ns_udp_failed
Critique
Un serveur de noms n’a répondu à aucune requête SOA en UDP/53.
authoritative_consistency_ns_tcp_failed
Critique avec requireTCP, sinon avertissement
Un serveur de noms n’a pas répondu en TCP/53 (exigé par la RFC 7766 et par DNSSEC).
authoritative_consistency_lame
Critique
Un serveur de noms a répondu sans le bit AA pour la zone (délégation boiteuse).
authoritative_consistency_no_soa
Critique
Un serveur fait autorité mais n’a renvoyé aucun SOA.
authoritative_consistency_edns_unsupported
Avertissement
Un serveur ignore ou gère mal les requêtes EDNS0 (RFC 6891).
authoritative_consistency_slow_ns
Info
Le temps de réponse d’un serveur a dépassé latencyThresholdMs.
authoritative_consistency_serial_drift
Avertissement
Les serveurs divergent sur le numéro de série SOA (zone non entièrement propagée).
authoritative_consistency_serial_stale_vs_saved
Avertissement
Le numéro de série enregistré dans happyDomain est plus récent que celui publié (changement probablement non poussé).
authoritative_consistency_serial_ahead_of_saved
Info
Les serveurs publient un numéro de série plus récent que celui enregistré (changement hors bande).
authoritative_consistency_soa_fields_drift
Avertissement
Les serveurs divergent sur les champs SOA (MNAME, RNAME, refresh, retry, expire, minimum).
authoritative_consistency_ns_rrset_drift
Avertissement
Les serveurs divergent sur le RRset NS qu’ils publient à l’apex.
Le RRset NS publié ne correspond pas aux NS déclarés dans le service.
Options
Option
Signification
Défaut
requireTCP
Si activé, un serveur défaillant en TCP est critique (sinon avertissement). TCP/53 est exigé par la RFC 7766 et par DNSSEC.
true
checkEDNS
Sonde chaque serveur de noms pour EDNS0 (RFC 6891). Les serveurs qui gèrent mal EDNS0 cassent DNSSEC et les grandes réponses.
true
checkLatency
Mesure le temps de réponse de chaque serveur et avertit en cas de lenteur.
true
latencyThresholdMs
Les temps de réponse au-delà de cette valeur déclenchent un avertissement de lenteur.
500
useParentNS
Interroge le parent pour le RRset NS de délégation et le compare aux serveurs de noms déclarés dans le service.
true
warnOnStaleSaved
Avertit lorsque le numéro de série SOA enregistré est plus récent que celui publié par les serveurs faisant autorité.
true
minNameServers
En dessous de ce nombre, un avertissement est émis (la RFC 1034 recommande au moins 2).
2
Dans happyDomain
Activez le vérificateur Cohérence des serveurs faisant autorité depuis l’onglet Vérifications d’un service d’origine. Consultez /fr/pages/checks/ pour le déroulé complet. Pour comparer ce que voient les résolveurs récursifs à travers le monde à la réponse faisant autorité, associez-le à /fr/reference/checkers/resolver-propagation/.
Restrictions des serveurs de noms
Le vérificateur Restrictions des serveurs de noms vérifie que les serveurs faisant autorité d’une zone sont correctement verrouillés. Pour chaque serveur de noms déclaré, il résout le nom d’hôte puis lance une série de sondes DNS contre chaque adresse IPv4 et IPv6 renvoyée (les cibles IPv6 sont ignorées sans erreur lorsque l’hôte n’a pas de connectivité IPv6). L’objectif est de détecter les erreurs de configuration courantes qui divulguent des données ou transforment un serveur de noms en vecteur d’abus : transferts de zone ouverts, récursion ouverte et réponses ANY non bornées.
Ce vérificateur s’applique au niveau du service : il cible un service d’origine ou d’origine NS-seule (abstract.Origin, abstract.NSOnlyOrigin) et se configure depuis l’onglet Vérifications de ce service.
Ce qu’il vérifie
Chaque règle émet un constat par adresse de serveur de noms sondée, avec un code stable.
Règle
Vérifie
Sévérité en cas d’échec
ns_resolution
Chaque nom d’hôte NS déclaré dans la délégation se résout en au moins une adresse IP.
Critique
ns_axfr_refused
Les transferts de zone AXFR sont refusés par chaque serveur faisant autorité.
Critique
ns_ixfr_refused
Les transferts de zone IXFR sont refusés par chaque serveur faisant autorité.
Avertissement
ns_no_recursion
Les serveurs faisant autorité n’annoncent pas la récursion (bit RA non positionné).
Avertissement
ns_any_handled
Les requêtes ANY sont traitées conformément à la RFC 8482 (HINFO ou réponse minimale plutôt que le contenu complet de la zone).
Avertissement
ns_is_authoritative
Les serveurs de noms répondent de façon autoritaire (bit AA positionné) pour la zone.
Info
Pourquoi c’est important
Un AXFR ouvert permet à quiconque de télécharger la zone entière, exposant votre nommage interne. La récursion ouverte transforme votre serveur faisant autorité en relais d’amplification et en cible d’empoisonnement de cache. Les réponses ANY non bornées constituent un vecteur d’amplification classique que la RFC 8482 a été écrite pour neutraliser.
Options
Ce vérificateur n’expose aucune option réglable : il exécute un ensemble fixe de sondes contre chaque adresse de serveur de noms résolue.
Dans happyDomain
Activez le vérificateur Restrictions des serveurs de noms depuis l’onglet Vérifications d’un service d’origine. Consultez /fr/pages/checks/ pour le déroulé complet. Pour la santé et l’accord plus larges de ces mêmes serveurs faisant autorité, voyez /fr/reference/checkers/authoritative-consistency/.
Propagation chez les résolveurs
Le vérificateur Propagation chez les résolveurs mesure la façon dont une zone est vue depuis l’extérieur, à travers l’internet public. Il sonde un catalogue choisi de résolveurs récursifs publics (Cloudflare, Google, Quad9, OpenDNS, Yandex, FAI régionaux et autres) sur plusieurs transports (UDP, TCP, DoT, DoH) et depuis plusieurs régions, puis compare leurs réponses entre elles et avec celles des serveurs faisant autorité de la zone. Cela révèle les retards de propagation, les divergences régionales, les écarts de numéro de série SOA, les caches périmés, les échecs de validation DNSSEC, les incohérences SERVFAIL/NXDOMAIN et le filtrage par les résolveurs.
Ce vérificateur s’applique au niveau du service : il cible un service d’origine ou d’origine NS-seule (abstract.Origin, abstract.NSOnlyOrigin) et se configure depuis l’onglet Vérifications de ce service.
Ce qu’il vérifie
Code de constat
Ce qui est vérifié
Sévérité
resolver_propagation.selection
Le jeu d’options courant sélectionne au moins un résolveur public.
Critique
resolver_propagation.reachable
Au moins un résolveur sélectionné a répondu à une requête.
Critique
resolver_propagation.latency
Résolveurs injoignables ou dont le temps de réponse moyen dépasse le seuil.
Avertissement
resolver_propagation.filtered_hit
Résolveurs filtrants renvoyant une réponse différente du consensus (comportement typique d’une liste de blocage).
Info
resolver_propagation.consensus
Les résolveurs publics s’accordent sur une réponse unique pour chaque RRset sondé.
Avertissement
resolver_propagation.matches_authoritative
Le consensus public correspond à la réponse servie par les serveurs faisant autorité de la zone.
Critique
resolver_propagation.nxdomain
RRset pour lesquels certains résolveurs renvoient NXDOMAIN quand d’autres renvoient NOERROR.
Critique
resolver_propagation.servfail
RRset pour lesquels un résolveur renvoie SERVFAIL (généralement échec DNSSEC ou de joignabilité).
Critique
resolver_propagation.regional_split
Régions où tous les résolveurs s’accordent sur une réponse différente du consensus mondial.
Avertissement
resolver_propagation.serial_drift
Désaccord sur le numéro de série SOA parmi les résolveurs non filtrants.
Avertissement
resolver_propagation.stale_cache
Résolveurs servant encore un numéro de série SOA inférieur à celui enregistré par happyDomain.
Info
resolver_propagation.dnssec
Les résolveurs validants valident avec succès la chaîne DNSSEC de la zone.
Critique
Options
Option
Signification
Défaut
recordTypes
Types de RR à sonder à chaque propriétaire, séparés par des virgules. Vide : dérivés de la zone de travail (SOA/NS à l’apex plus les types de RR réellement définis sur chaque propriétaire).
dérivé de la zone
subdomains
Noms de propriétaires à sonder en plus de l’apex, séparés par des virgules (par exemple www,mail,@). Vide : apex seul.
www
includeFiltered
Sonde les résolveurs filtrants (malware/famille/anti-pub). Leurs réponses divergent par conception ; n’activer que pour diagnostiquer un blocage.
false
region
Restreint à une région : all, global, na, eu, asia, ru, me.
all
transports
Transports à sonder, séparés par des virgules : udp, tcp, dot, doh. Les transports chiffrés ne sont utilisés que là où ils sont publiés.
udp
resolverAllowlist
Identifiants ou IP de résolveurs à sonder exclusivement, séparés par des virgules (par exemple cloudflare,google,9.9.9.9). Vide : sélection du catalogue.
(vide)
latencyThresholdMs
Les résolveurs dont la moyenne dépasse cette valeur émettent un constat d’information.
500
runTimeoutSeconds
Budget temps absolu pour une exécution de propagation. Les résolveurs plus lents sont signalés comme injoignables.
30
Dans happyDomain
Activez le vérificateur Propagation chez les résolveurs depuis l’onglet Vérifications d’un service d’origine. Consultez /fr/pages/checks/ pour le déroulé complet. Ce vérificateur est le pendant tourné vers l’extérieur de /fr/reference/checkers/authoritative-consistency/, qui examine directement les serveurs faisant autorité ; exécuter les deux donne la vue depuis l’origine et depuis les résolveurs qui l’interrogent.
Zone inverse
Le vérificateur Zone inverse inspecte les enregistrements PTR d’une zone DNS inverse (in-addr.arpa ou ip6.arpa) et valide qu’ils sont bien formés et cohérents avec le DNS direct. Il vérifie le Forward-Confirmed Reverse DNS (FCrDNS), s’assure que les cibles se résolvent et sont des noms d’hôtes syntaxiquement valides, signale les noms génériques ou auto-générés et les TTL trop courts, et détecte les violations de plusieurs PTR par IP (RFC 1912 §2.1). Un DNS inverse correct compte en pratique : les serveurs de courrier et les points d’accès SSH rejettent ou dégradent régulièrement les connexions provenant d’IP sans FCrDNS valide.
Ce vérificateur s’applique au niveau de la zone : il opère sur le contenu complet d’une zone inverse (il s’applique au domaine et lit l’intégralité de la zone).
Ce qu’il vérifie
Code de constat
Ce qui est vérifié
Sévérité
reverse_zone.is_reverse_arpa
La zone est sous in-addr.arpa ou ip6.arpa.
Critique
reverse_zone.has_ptrs
La zone inverse déclare au moins un enregistrement PTR.
Avertissement
reverse_zone.fcrdns
Le A/AAAA de chaque cible PTR revient bien à l’IP d’origine (Forward-Confirmed Reverse DNS).
Critique
reverse_zone.target_resolves
Chaque cible PTR se résout en au moins un enregistrement A ou AAAA.
Critique
reverse_zone.single_ptr_per_ip
Signale les IP ayant plusieurs PTR (la RFC 1912 §2.1 en recommande exactement un).
Avertissement
reverse_zone.target_syntax
Chaque cible PTR est un nom d’hôte syntaxiquement valide.
Critique
reverse_zone.generic_hostname
Signale les cibles PTR qui intègrent l’IP ou correspondent aux motifs auto-générés courants des FAI.
Avertissement
reverse_zone.ttl_hygiene
Signale les PTR dont le TTL est inférieur au minimum configuré.
Avertissement
reverse_zone.truncated
Signale lorsque la zone compte plus de PTR que le plafond configuré ne permet d’inspecter.
Info
Options
Option
Signification
Défaut
requireForwardMatch
Si activé, un PTR dont la cible ne revient pas à l’IP d’origine est critique (sinon avertissement). Les serveurs de courrier et SSH exigent le FCrDNS.
true
allowMultiplePTR
Si désactivé, plus d’un PTR au même propriétaire est signalé en avertissement (la RFC 1912 §2.1 recommande un seul PTR par IP).
false
minTTL
Les PTR dont le TTL est inférieur à ce seuil (en secondes) sont signalés en avertissement.
300
flagGenericPTR
Si activé, les cibles PTR qui intègrent l’IP pointée ou correspondent aux motifs auto-générés courants des FAI sont signalées en avertissement.
true
maxPTRsToCheck
Plafonne le nombre de PTR inspectés par exécution, protégeant le vérificateur contre les très grandes zones inverses.
1024
Forward-Confirmed Reverse DNS
Le FCrDNS signifie que la cible du PTR, résolue en direct, revient bien à l’adresse IP d’origine. Un PTR pointant vers un hôte dont le A/AAAA n’inclut pas cette IP échoue à l’aller-retour et est considéré comme une mauvaise configuration par de nombreux serveurs de courrier et SSH.
Dans happyDomain
Activez le vérificateur Zone inverse sur un domaine inverse (in-addr.arpa / ip6.arpa) depuis sa vue Vérifications. Consultez /fr/pages/checks/ pour le déroulé complet.
Enregistrements PTR
Le vérificateur PTR / DNS inverse vérifie qu’une adresse IP dispose d’un enregistrement de DNS inverse correct et exploitable. Un PTR associe une IP à un nom d’hôte ; les serveurs de messagerie, les démons SSH et de nombreux outils de journalisation s’appuient dessus, et un PTR absent ou incohérent est l’une des causes les plus fréquentes de rejet du courrier sortant.
Il s’agit d’un vérificateur de niveau service : il s’exécute sur un service PTR et se configure depuis l’onglet Vérifications de ce service. Il localise la zone inverse (sous in-addr.arpa ou ip6.arpa), interroge les serveurs faisant autorité et inspecte ce qu’ils servent réellement, aussi bien pour les adresses IPv4 qu’IPv6.
Ce qui est vérifié
Le vérificateur enchaîne une série de règles, de la cohérence structurelle au succès de la requête, puis à l’hygiène de la cible et au Forward-Confirmed Reverse DNS (FCrDNS).
Règle
Ce qui est vérifié
Sévérité
ptr.in_reverse_arpa
Le propriétaire du PTR se trouve sous in-addr.arpa ou ip6.arpa.
Critique
ptr.owner_decodable
Le nom du propriétaire en .arpa se décode bien en une adresse IP.
Critique
ptr.reverse_zone_located
La zone inverse servant ce propriétaire peut être localisée (SOA trouvé).
Critique
ptr.query_succeeded
La requête PTR renvoie NOERROR depuis les serveurs faisant autorité.
Critique
ptr.record_present
Au moins un enregistrement PTR est servi au nom du propriétaire.
Critique
ptr.single_record
Signale plusieurs PTR sur la même IP (la RFC 1912 §2.1 en recommande un seul).
Avertissement
ptr.declared_match
La cible PTR servie fait autorité correspond à celle déclarée dans happyDomain.
Critique
ptr.target_syntax_valid
La cible PTR est un nom d’hôte syntaxiquement valide (RFC 952/1123).
Critique
ptr.generic_hostname
Signale les cibles PTR qui contiennent l’IP ou suivent un motif générique de FAI.
Avertissement
ptr.target_resolves
La cible PTR se résout vers au moins un enregistrement A ou AAAA.
Critique / Avertissement
ptr.fcrdns_match
Le A/AAAA de la cible PTR se résout de nouveau vers l’IP d’origine (FCrDNS).
Critique / Avertissement
ptr.ipv6
Indique si le PTR concerne une adresse IPv6 (ip6.arpa) et qu’un PTR est présent pour elle.
Critique
ptr.ttl_hygiene
Le TTL du PTR est supérieur ou égal au minimum configuré.
Avertissement
Les règles ptr.target_resolves et ptr.fcrdns_match sont critiques par défaut, mais passent en avertissement lorsque l’option Exiger le Forward-Confirmed Reverse DNS est désactivée.
Le FCrDNS, la règle de l’aller-retour
Le Forward-Confirmed Reverse DNS signifie que la chaîne boucle sur elle-même : le PTR de l’IP pointe vers un nom d’hôte, et le A/AAAA de ce nom d’hôte inclut l’IP d’origine. Les serveurs de messagerie rejettent les connexions des IP qui échouent à cet aller-retour ; laissez donc Exiger le Forward-Confirmed Reverse DNS activé pour tout hôte qui envoie du courrier.
Options
Option
Signification
Défaut
Exiger le Forward-Confirmed Reverse DNS (FCrDNS)
Lorsqu’activée, un PTR dont la cible ne se résout pas vers l’IP d’origine est critique ; sinon, c’est un avertissement.
true
Autoriser plusieurs PTR sur la même IP
Lorsqu’elle est désactivée, plusieurs PTR au même propriétaire sont signalés comme avertissement (RFC 1912 §2.1).
false
TTL minimal du PTR (secondes)
Les PTR dont le TTL est inférieur à ce seuil sont signalés comme avertissement.
300
Signaler les noms d’hôte PTR génériques
Lorsqu’activée, les cibles PTR contenant l’IP en notation pointée ou suivant un motif générique de FAI déclenchent un avertissement.
true
Dans happyDomain
Ajoutez le service PTR au sous-domaine portant l’enregistrement inverse, puis activez ce vérificateur depuis l’onglet Vérifications de ce service. Consultez /fr/pages/checks/ pour configurer et planifier les vérifications. La zone inverse, l’enregistrement PTR et la cible déclarée sont renseignés automatiquement à partir du service.
Pour le versant direct de la résolution des alias et des noms d’hôte, voyez le vérificateur /fr/reference/checkers/alias/.
Chaîne d'alias
Le vérificateur Chaîne CNAME / DNAME / ALIAS suit la chaîne d’alias d’un nom et vérifie qu’elle se résout proprement : pas de boucle, pas trop de sauts, des TTL raisonnables, une cible finale résolvable, aucune coexistence d’enregistrements interdite et un RRset CNAME correctement signé lorsque la zone utilise DNSSEC.
Il s’agit d’un vérificateur de niveau service : il s’exécute sur un service CNAME (ou CNAME spécial) et se configure depuis l’onglet Vérifications de ce service. À partir du nom interrogé, il localise l’apex de la zone, parcourt chaque saut CNAME/DNAME, puis résout la cible de la chaîne vers des enregistrements A/AAAA.
Ce qui est vérifié
Chaque règle émet un code de constat. Certaines sévérités sont atténuées par les options ci-dessous.
Règle
Ce qui est vérifié ou signalé
Sévérité
apex_lookup
L’apex de la zone (SOA) du nom interrogé peut être localisé.
Critique
chain_loop
Un cycle CNAME/DNAME dans la chaîne de résolution.
Critique
chain_length
La chaîne dépasse le nombre de sauts de Longueur maximale de chaîne.
Critique
chain_query_error
Une requête DNS échoue pendant le parcours de la chaîne (erreur réseau, délai dépassé).
Avertissement
chain_rcode
Un code de réponse autre que NOERROR en milieu de chaîne ou sur la résolution A/AAAA finale.
Critique (milieu) / Avertissement (final)
hop_ttl
Un saut CNAME/DNAME a un TTL inférieur à TTL minimal de la cible.
Avertissement
cname_at_apex
Un CNAME existe à l’apex de la zone, en conflit avec SOA/NS (RFC 1912 §2.4).
Critique / Avertissement
apex_flattening
Des A/AAAA coexistent avec SOA/NS à l’apex sans CNAME (aplatissement ALIAS/ANAME côté hébergeur).
Info
cname_coexistence
D’autres RRset (au-delà de A/AAAA) coexistent chez un propriétaire CNAME, en violation des RFC 1034 §3.6.2 / RFC 2181 §10.1.
Critique / Avertissement à l’apex
cname_dnssec
La zone est signée DNSSEC mais le RRset CNAME ne possède pas de RRSIG.
Critique
target_resolvable
La cible finale de la chaîne n’a aucun enregistrement A ni AAAA.
Critique
multiple_records
Un propriétaire de la chaîne porte plus d’un enregistrement CNAME/DNAME (malformé).
Critique
Pourquoi un CNAME à l’apex pose problème
Un propriétaire de CNAME ne peut porter aucun autre type d’enregistrement, mais l’apex de la zone doit toujours contenir des enregistrements SOA et NS. Ces deux exigences sont incompatibles : un CNAME à l’apex est donc invalide (RFC 1912 §2.4). Certains hébergeurs contournent cela par un aplatissement ALIAS/ANAME côté serveur qui publie de simples A/AAAA à l’apex ; la règle apex_flattening reconnaît ce motif comme intentionnel lorsque l’option Reconnaître l’aplatissement ALIAS/ANAME est activée.
Options
Option
Signification
Défaut
Longueur maximale de chaîne
Au-delà de ce nombre de sauts, la chaîne est rapportée comme critique.
8
TTL minimal de la cible
Les sauts dont le TTL est inférieur à ce seuil (en secondes) sont signalés comme avertissement.
60
Autoriser un CNAME à l’apex
Lorsqu’activée, un CNAME à l’apex d’une zone et ses violations de coexistence sont rétrogradés en avertissements. La RFC 1912 l’interdit : il est fortement recommandé de laisser cette option désactivée.
false
Reconnaître l’aplatissement ALIAS/ANAME
Lorsqu’activée, les hébergeurs servant des A/AAAA à l’apex (pseudo-enregistrements ALIAS/ANAME) sont reconnus comme intentionnels et dispensés des violations de coexistence.
true
Dans happyDomain
Ajoutez le service CNAME au sous-domaine, puis activez ce vérificateur depuis l’onglet Vérifications de ce service. Consultez /fr/pages/checks/ pour configurer et planifier les vérifications. Le domaine parent et le sous-domaine sont renseignés automatiquement.
Vérificateurs apparentés : /fr/reference/checkers/dangling/ surveille les cibles d’alias devenues non enregistrées ou NXDOMAIN, et /fr/reference/checkers/ptr/ couvre le versant DNS inverse.
Enregistrements orphelins
Le vérificateur Sous-domaines orphelins analyse une zone à la recherche d’enregistrements pointeurs (CNAME, MX, SRV, NS) dont les cibles sont devenues obsolètes : elles renvoient NXDOMAIN, ou leur domaine enregistrable externe a expiré, est en pendingDelete, ou a été ré-enregistré récemment. C’est la classe d’attaques par prise de contrôle de sous-domaine popularisée en 2017, où des institutions ont fini par servir du contenu hostile depuis des CNAME pointant vers des services tiers désaffectés, après que des attaquants eurent ré-enregistré les cibles libérées.
Il s’agit d’un vérificateur de niveau zone : il nécessite le contenu complet de la zone et la parcourt en une seule passe, consolidant les constats par propriétaire plutôt que de produire un résultat par enregistrement.
Ce qui est vérifié
Le vérificateur parcourt chaque service de la zone de travail et extrait les enregistrements pointeurs des corps CNAME, CNAME spécial, MX, SRV inconnu et orphelin (enregistrements NS/CNAME/MX nus). Pour chaque triplet (propriétaire, type, cible), il classe la cible comme interne ou externe à la zone (par rapport au domaine enregistrable de la zone), effectue une résolution DNS unique et bornée dans le temps pour détecter une rupture immédiate, et publie une entrée de découverte afin qu’un vérificateur domain_expiry compagnon puisse lancer une requête RDAP/WHOIS sur les cibles externes.
Il émet un constat par propriétaire concerné, classé par sévérité décroissante :
Domaine enregistrable créé au cours des 90 derniers jours
Avertissement
Observation whois apparentée
Les signaux WHOIS nécessitent un vérificateur compagnon
Les signaux issus de la résolution DNS (NXDOMAIN, SERVFAIL, réponse vide) fonctionnent seuls. Les signaux issus du WHOIS (expiré, pendingDelete, créé récemment) ne se déclenchent que lorsque le vérificateur domain_expiry de l’hôte s’abonne aux entrées de découverte de cibles externes de ce vérificateur et publie une observation whois par cible. Sans ce câblage, le vérificateur fonctionne tout de même comme un détecteur d’orphelins basé uniquement sur le DNS.
Options
Option
Signification
Défaut
Ignorer la résolution DNS en direct
Lorsqu’elle est activée, le vérificateur ne rapporte que la structure statique des enregistrements pointeurs (analyse hors ligne), sans résoudre les cibles.
false
Dans happyDomain
Activez ce vérificateur sur le domaine depuis la vue /fr/pages/checks/ ; le nom de domaine et le contenu de la zone sont renseignés automatiquement. Étant de niveau zone, il s’exécute sur l’ensemble de la zone en une seule passe.
Vérificateurs apparentés : /fr/reference/checkers/alias/ valide la structure des chaînes d’alias individuelles, et /fr/reference/checkers/domain-expiry/ surveille l’expiration de vos propres domaines, avec la même mécanique WHOIS qui alimente les signaux de cibles externes de ce vérificateur.
CAA
Le vérificateur Conformité CAA vérifie que les certificats TLS réellement déployés sur un domaine ont été émis par une autorité de certification que les enregistrements CAA du domaine autorisent. Un enregistrement CAA (Certification Authority Authorization) permet à un domaine de déclarer quelles autorités de certification peuvent émettre des certificats pour lui ; ce vérificateur confirme que la réalité correspond à cette politique.
Il s’agit d’un vérificateur de niveau service : il s’exécute sur un service de politique CAA. Il n’effectue aucune sonde réseau : il lit la politique CAA déjà analysée dans le corps du service et les certificats TLS observés par la famille /fr/reference/checkers/dane/ / checker-tls, puis associe chaque émetteur observé à son domaine d’identifiant CAA à l’aide de la base de données Common CA Database (CCADB).
Ce qui est vérifié
Une seule règle, caa_compliance, charge la politique CAA issue / issuewild de la zone, rassemble chaque sonde TLS observée sur la cible, résout l’émetteur de chaque certificat (par Authority Key Identifier, avec repli sur le Distinguished Name de l’émetteur) à l’aide du mappage « CAA Identifiers » embarqué de CCADB, puis compare le résultat à la liste d’autorisations.
Résultat
Signification
Statut
caa_ok
Chaque émetteur observé est autorisé par la politique CAA.
OK
caa_no_tls
Aucune sonde TLS liée à cette cible n’a encore été publiée.
Inconnu
caa_not_authorized
CCADB a associé un émetteur observé à un domaine que la politique ne liste pas.
Critique
caa_issuance_disallowed
La politique contient CAA 0 issue ";" (émission explicitement interdite) mais un certificat a tout de même été observé.
Critique
caa_issuer_unknown
CCADB n’a aucun mappage pour l’émetteur observé (AKI + DN).
Info
Cohérence à terme avec les sondes TLS
L’état caa_no_tls est un état stable normal, pas une erreur : tant que checker-tls n’a pas sondé un point d’accès sur la cible ni publié de certificat, le vérificateur CAA n’a rien à comparer et rapporte Inconnu. Dès que les sondes arrivent, la vérification se résout à son exécution suivante. Le résultat caa_issuer_unknown signifie simplement que l’autorité n’est pas dans l’instantané CCADB courant ; le correctif consiste à soumettre une mise à jour à CCADB, pas à modifier votre zone.
Le mappage émetteur vers domaine CAA provient d’un instantané embarqué du rapport « CAA Identifiers (V2) » de CCADB. Le rafraîchir ne demande que de ré-embarquer un CSV plus récent et de recompiler : aucun changement de code ni dépendance réseau à la compilation.
Options
Ce vérificateur n’a aucune option réglable par l’utilisateur. Ses deux entrées sont renseignées automatiquement :
Option
Signification
Domaine
Le domaine vérifié (renseigné automatiquement, requis).
Service
Le corps du service de politique CAA (renseigné automatiquement).
Dans happyDomain
Ajoutez le service de politique CAA au sous-domaine concerné (généralement l’apex), puis activez ce vérificateur depuis l’onglet Vérifications de ce service. Consultez /fr/pages/checks/ pour configurer et planifier les vérifications. Pour que la comparaison produise un verdict, un vérificateur de sonde TLS comme /fr/reference/checkers/dane/ (ou le checker-tls autonome) doit avoir observé des certificats sur la cible.
DANE / TLSA
Le vérificateur DANE / TLSA vérifie que les enregistrements TLSA publiés pour un service épinglent correctement le certificat TLS que le point d’accès correspondant présente réellement. DANE (DNS-based Authentication of Named Entities) permet à un domaine de lier un certificat ou une clé publique à un nom via le DNS, sécurisé par DNSSEC ; ce vérificateur confirme que la liaison tient.
Il s’agit d’un vérificateur de niveau service : il s’exécute sur un service TLSAs. Il regroupe les enregistrements TLSA déclarés par (port, proto, base), publie une entrée de découverte de point d’accès TLS par point d’accès afin que checker-tls le sonde, puis compare chaque TLSA à la chaîne de certificats observée selon la RFC 6698.
Ce qui est vérifié
Règle
Ce qui est vérifié ou signalé
Sévérité
dane.has_records
Au moins un enregistrement TLSA est déclaré sur le service.
variable
dane.dnssec_validated
Les enregistrements TLSA ont été récupérés via un résolveur validant DNSSEC (bit AD positionné).
variable
dane.probe_available
Une sonde TLS est disponible pour chaque point d’accès DANE afin de comparer la chaîne.
variable
dane.handshake_ok
La poignée de main TLS réussit sur chaque point d’accès DANE.
variable
dane.records_match_chain
Au moins un enregistrement TLSA correspond à la chaîne de certificats présentée par chaque point d’accès.
variable
dane.pkix_chain_valid
Lorsque les usages 0 ou 1 sont publiés, la chaîne se valide aussi face aux racines de confiance du système.
variable
dane.usage_coherent
Signale les TLSA dont l’usage déclaré ne correspond pas à l’emplacement de chaîne qu’ils hachent réellement (par exemple un usage 3 correspondant à un intermédiaire).
variable
Interprétation des champs TLSA
Usage 0 (PKIX-TA) / 1 (PKIX-EE) : le TLSA doit correspondre et la chaîne doit se valider face aux racines de confiance PKIX publiques.
Usage 2 (DANE-TA) / 3 (DANE-EE) : le TLSA fait lui-même office d’ancre de confiance ; la validité PKIX est informative.
Le sélecteur 0 (certificat complet) ou 1 (Subject Public Key Info), et le type de correspondance 0 (complet) / 1 (SHA-256) / 2 (SHA-512), sont comparés à l’emplacement de chaîne impliqué par l’usage.
DANE repose sur DNSSEC
DANE n’est digne de confiance que si les enregistrements TLSA proviennent d’une zone signée DNSSEC et sont validés par le résolveur. La règle dane.dnssec_validated vérifie que les enregistrements sont arrivés avec le bit AD (Authenticated Data) positionné ; sans DNSSEC, un enregistrement TLSA pourrait être falsifié et toute la liaison perd son sens.
Options
Option
Signification
Défaut
Délai de sonde (ms)
Transmis à checker-tls comme délai d’expiration de la sonde TLS par point d’accès.
défaut de checker-tls
Surcharge STARTTLS
Une table indexée par "<port>/<proto>" surchargeant l’application STARTTLS utilisée lors de la sonde. Les ports STARTTLS courants (25, 110, 143, 389, 587, 5222, 5269) sont associés automatiquement ; ne renseignez ceci que pour des ports non standard.
(auto)
Le domaine, le sous-domaine et le service TLSAs sont renseignés automatiquement.
Dans happyDomain
Ajoutez le service TLSA au sous-domaine, puis activez ce vérificateur depuis l’onglet Vérifications de ce service. Consultez /fr/pages/checks/ pour configurer et planifier les vérifications. Le vérificateur publie ses points d’accès pour que checker-tls les sonde : laissez donc passer un cycle de sonde avant l’apparition du premier résultat de correspondance.
Vérificateur apparenté : /fr/reference/checkers/caa/ vérifie, sur les mêmes certificats, que l’autorité émettrice était bien autorisée par la politique CAA du domaine.
Posture TLS
Le vérificateur TLS (nom interne « TLS ») évalue la posture de sécurité du transport de chaque point de terminaison TLS exposé par un domaine. Il ne scanne pas de ports lui-même : il consomme des entrées de découverte de type tls.endpoint.v1 publiées par d’autres vérificateurs de service (XMPP, SRV, CalDAV, CardDAV, SMTP, etc.). Pour chaque point de terminaison découvert, il effectue une véritable connexion TCP, une bascule STARTTLS spécifique au protocole le cas échéant, puis une poignée de main TLS complète, et il rapporte une posture par point de terminaison.
Portée : niveau domaine. Le vérificateur s’exécute sur l’ensemble du domaine et intègre les points de terminaison annoncés par les autres vérificateurs de service. Un point de terminaison n’est donc sondé que si un vérificateur de service (par exemple /fr/reference/checkers/smtp/) l’a publié.
Ce qu’il vérifie
Règle
Vérifie
Sévérité
tls.endpoints_discovered
Au moins un point de terminaison TLS a été découvert pour cette cible.
Info
tls.reachability
Chaque point de terminaison découvert accepte une connexion TCP.
Critique
tls.handshake
La poignée de main TLS aboutit sur chaque point de terminaison joignable.
Critique
tls.starttls_advertised
Les points de terminaison STARTTLS annoncent la capacité de bascule.
Critique
tls.starttls_dialect_supported
Le dialecte STARTTLS découvert est implémenté par le vérificateur.
Critique
tls.peer_certificate_present
Le serveur a présenté un certificat pendant la poignée de main.
Critique
tls.chain_validity
La chaîne présentée se valide avec le magasin de confiance du système.
Critique
tls.hostname_match
Le certificat feuille couvre le nom sondé (SNI).
Critique
tls.expiry
Signale les certificats feuilles expirés ou proches de l’expiration.
Critique
tls.version
Signale les points de terminaison négociant une version TLS inférieure à TLS 1.2.
Avertissement
tls.cipher_suite
Rapporte la suite cryptographique négociée sur chaque point de terminaison.
Info
tls.enum.versions
Signale les points de terminaison acceptant encore des versions TLS inférieures à TLS 1.2 (option d’énumération).
Avertissement
tls.enum.ciphers
Signale les points de terminaison acceptant des suites cryptographiques cassées (NULL, anonyme, EXPORT, RC4, 3DES) (option d’énumération).
Avertissement
Les bascules STARTTLS sont prises en charge pour SMTP/submission, IMAP, POP3 et XMPP (c2s et s2s). Lorsqu’un vérificateur de service marque un point de terminaison comme exigeant STARTTLS, l’absence de bascule est rapportée comme critique ; sinon, elle est considérée comme opportuniste et rapportée comme avertissement.
Options
Option
Signification
Défaut
Délai de sonde par point de terminaison (ms) (probeTimeoutMs)
Temps maximal alloué pour la connexion, la bascule STARTTLS et la poignée de main TLS sur un point de terminaison.
10000
Énumérer les versions et suites TLS acceptées (enumerateCiphers)
Lorsqu’activée, chaque point de terminaison en TLS direct est balayé avec un ClientHello par paire (version, suite) afin de découvrir l’ensemble exact accepté par le serveur. Ajoute environ 50 poignées de main par point de terminaison.
false
La liste des entrées de découverte est remplie automatiquement à partir de ce que les autres vérificateurs publient et n’est pas modifiable par l’utilisateur.
Dans happyDomain
Le vérificateur TLS est une vérification de niveau domaine : activez-le depuis la vue des vérifications du domaine. Comme il travaille sur des points de terminaison découverts par d’autres vérificateurs, il s’associe naturellement aux vérificateurs de service qui publient des points de terminaison TLS, comme /fr/reference/checkers/smtp/.
Posture TLS et DANE
Ce vérificateur valide le certificat en direct avec le magasin de confiance du système. L’épinglage du certificat dans le DNS via des enregistrements TLSA est un sujet distinct, traité par le vérificateur /fr/reference/checkers/dane/.
Pour le fonctionnement général de la configuration et de la lecture des vérifications, voir /fr/pages/checks/.
HTTP / HTTPS
Le vérificateur HTTP / HTTPS sonde le serveur web déclaré par un service « Serveur » en HTTP simple (port 80) et en HTTPS (port 443), puis évalue une série de règles indépendantes sur les réponses : accessibilité, chaîne de redirections HTTP vers HTTPS et ensemble moderne des en-têtes de sécurité HTTP (HSTS, CSP, options de cadre, isolation inter-origines, etc.), ainsi que l’hygiène des cookies.
Portée : niveau service. Il s’attache aux services de type abstract.Server (un sous-domaine publiant des enregistrements A/AAAA) et se configure depuis l’onglet Vérifications de ce service.
L’analyse approfondie du TLS et des certificats est volontairement déléguée au vérificateur /fr/reference/checkers/tls/ ; ce vérificateur ne s’appuie sur TLS que comme transport.
Ce qu’il vérifie
Règle
Vérifie
Sévérité
http.tcp_reachable
Chaque IP sondée accepte une connexion HTTP sur le port 80.
Critique
https.tcp_reachable
Chaque IP sondée accepte une connexion HTTPS sur le port 443.
Critique
http.https_redirect
Le HTTP simple redirige vers une URL HTTPS sur le même hôte.
Avertissement
http.redirect_chain
La chaîne de redirections est sans boucle, sans longueur excessive ni rétrogradation de schéma.
Avertissement
http.redirect_permanence
La bascule HTTP vers HTTPS utilise 301 ou 308 (permanent) plutôt que 302/307.
Avertissement
http.hsts
Présence et qualité de l’en-tête Strict-Transport-Security en HTTPS.
Avertissement
http.csp
Présence et qualité de l’en-tête Content-Security-Policy en HTTPS.
Avertissement
http.x_frame_options
Les réponses définissent X-Frame-Options ou une directive CSP frame-ancestors.
Avertissement
http.x_content_type_options
Les réponses définissent X-Content-Type-Options: nosniff.
Avertissement
http.x_xss_protection
Rapporte la valeur de l’en-tête hérité X-XSS-Protection (CSP est le remplaçant adéquat).
Info
http.referrer_policy
Les réponses définissent un en-tête Referrer-Policy respectueux de la vie privée.
Avertissement
http.permissions_policy
L’en-tête Permissions-Policy restreint les API sensibles (caméra, microphone, géolocalisation, etc.).
Avertissement
http.coop
L’en-tête Cross-Origin-Opener-Policy est défini pour l’isolation de processus inter-origines.
Avertissement
http.coep
L’en-tête Cross-Origin-Embedder-Policy est défini (requis avec COOP pour l’isolation inter-origines).
Les cookies posés en HTTPS utilisent les attributs Secure, HttpOnly et SameSite.
Avertissement
http.cookie_prefixes
Les cookies utilisant les préfixes __Secure- / __Host- respectent les contraintes RFC 6265bis.
Avertissement
http.cookie_size
Signale les lignes Set-Cookie dépassant les 4096 octets que les navigateurs doivent supporter au minimum.
Avertissement
http.sri
Rapporte les balises script/style inter-origines dépourvues d’attributs Subresource Integrity.
Avertissement
http.security_txt
Indique si /.well-known/security.txt (RFC 9116) est publié.
Avertissement
Options
Option
Signification
Défaut
Délai par requête (ms) (probeTimeoutMs)
Temps maximal alloué à une requête HTTP/HTTPS.
10000
Nombre maximal de redirections (maxRedirects)
Arrête de suivre les redirections au-delà de ce nombre de sauts.
5
User-Agent (userAgent)
En-tête User-Agent envoyé à chaque requête.
happyDomain-checker-http/1.0
Exiger HTTPS (requireHTTPS)
Le HTTP simple doit rediriger vers HTTPS.
true
Exiger HSTS (requireHSTS)
Les réponses HTTPS doivent inclure un en-tête Strict-Transport-Security.
true
max-age HSTS minimal (jours) (minHSTSMaxAgeDays)
Valeur max-age HSTS minimale acceptable, en jours.
180
Exiger Content-Security-Policy (requireCSP)
Les réponses HTTPS doivent inclure un en-tête Content-Security-Policy.
false
Dans happyDomain
C’est un vérificateur de niveau service : configurez-le depuis l’onglet Vérifications du service « Serveur » sur le sous-domaine concerné. Pour la posture détaillée des certificats, ajoutez aussi le vérificateur /fr/reference/checkers/tls/. Pour le fonctionnement général de la configuration et de la lecture des vérifications, voir /fr/pages/checks/.
Ping
Le vérificateur Ping (ICMP) mesure l’accessibilité réseau de base des adresses derrière un service. Il envoie un petit nombre de requêtes echo ICMP à chaque adresse A/AAAA et rapporte si la cible a répondu, son temps d’aller-retour moyen (RTT), le taux de perte de paquets observé, et si au moins une adresse IPv6 a répondu.
Portée : niveau service. Il s’attache aux services de type abstract.Server (un sous-domaine publiant des enregistrements A/AAAA) et se configure depuis l’onglet Vérifications de ce service.
Ce qu’il vérifie
Règle
Vérifie
Conditions avertissement / critique
ping.reachable
Chaque cible a répondu à au moins une sonde ICMP.
Critique lorsqu’une cible ne répond jamais.
ping.rtt
Le temps d’aller-retour moyen reste dans les seuils.
Avertissement au-dessus du RTT d’avertissement, critique au-dessus du RTT critique.
ping.ipv6_reachable
Au moins une cible IPv6 a répondu à une sonde ICMP.
Avertissement quand aucune adresse IPv6 ne répond.
ping.packet_loss
Le taux de perte de paquets reste dans les seuils.
Avertissement au-dessus du taux d’avertissement, critique au-dessus du taux critique.
Options
Option
Signification
Défaut
Seuil d’avertissement RTT (ms) (warningRTT)
RTT moyen au-dessus duquel la vérification avertit.
100
Seuil critique RTT (ms) (criticalRTT)
RTT moyen au-dessus duquel la vérification est critique.
500
Seuil d’avertissement de perte de paquets (%) (warningPacketLoss)
Taux de perte au-dessus duquel la vérification avertit.
10
Seuil critique de perte de paquets (%) (criticalPacketLoss)
Taux de perte au-dessus duquel la vérification est critique.
50
Nombre de pings à envoyer (count)
Requêtes echo ICMP envoyées par cible.
5
Dans happyDomain
C’est un vérificateur de niveau service : configurez-le depuis l’onglet Vérifications du service « Serveur » sur le sous-domaine concerné. Son intervalle par défaut court le rend adapté à une surveillance d’accessibilité légère et fréquente. Pour le fonctionnement général de la configuration et de la lecture des vérifications, voir /fr/pages/checks/.
SMTP
Le vérificateur SMTP entrant (posture MX) examine le côté entrant du service de messagerie d’un domaine. Pour chaque cible MX de la zone, il effectue les sondes en direct qu’un opérateur exécuterait avec swaks ou telnet … 25 : connexion TCP, bannière ESMTP et EHLO, négociation STARTTLS, sondes de transaction (expéditeur nul, postmaster, relais ouvert), DNS inverse / FCrDNS, inventaire des extensions et couverture IPv4/IPv6. Le résultat est un rapport HTML exploitable.
Portée : niveau service. Il s’attache aux services de type svcs.MXs (l’ensemble des enregistrements MX) et se configure depuis l’onglet Vérifications de ce service.
La sonde répond à la question « ce domaine peut-il recevoir le courrier correctement ? ». Elle ne teste pas la délivrabilité sortante (alignement SPF/DKIM/DMARC, score anti-spam, statut de liste noire), ce qui est le rôle du vérificateur /fr/reference/checkers/happydeliver/. Les sondes de transaction s’arrêtent toujours à RCPT et émettent RSET : aucun DATA n’est envoyé, donc aucun message n’est délivré.
Ce qu’il vérifie
Règle
Vérifie
Sévérité
smtp.null_mx
Indique si le domaine publie un MX nul (RFC 7505).
Info
smtp.mx_present
Le domaine publie au moins un enregistrement MX (ou un MX nul).
Critique
smtp.mx_sanity
Signale les cibles MX violant la RFC 5321 § 5.1 (littéraux IP, chaînes CNAME, noms non résolus).
Critique
smtp.endpoint_reachable
Chaque point de terminaison MX accepte une connexion TCP sur le port 25.
Critique
smtp.banner_sanity
Chaque point de terminaison joignable émet une salutation SMTP 220.
Critique
smtp.ehlo_supported
Chaque point de terminaison accepte EHLO.
Critique
smtp.starttls_offered
Chaque point de terminaison annonce l’extension STARTTLS.
Critique
smtp.starttls_handshake
La poignée de main STARTTLS aboutit là où elle est annoncée.
Critique
smtp.auth_posture
Signale les points de terminaison annonçant SMTP AUTH avant STARTTLS (identifiants en clair).
Critique
smtp.reverse_dns
Chaque point de terminaison a un enregistrement PTR concordant (FCrDNS).
Avertissement
smtp.null_sender
Les points de terminaison acceptent l’expéditeur nul MAIL FROM:<> (requis pour les DSN).
Critique
smtp.postmaster
Les points de terminaison acceptent RCPT TO:<postmaster@domaine> (RFC 5321 § 4.5.1).
Critique
smtp.open_relay
Signale les points de terminaison relayant le courrier pour des destinataires hors du domaine testé.
Critique
smtp.extension_posture
Rapporte la posture des extensions ESMTP (PIPELINING, 8BITMIME).
Info
smtp.ipv6_reachable
Au moins un point de terminaison MX est joignable en IPv6.
Info
smtp.tls_quality
Intègre les constats TLS en aval (chaîne, nom, expiration) au rapport SMTP.
Critique
La posture des certificats elle-même est hors de portée ici : chaque cible MX est publiée comme entrée de découverte tls.endpoint.v1 (STARTTLS opportuniste), et le vérificateur /fr/reference/checkers/tls/ effectue l’analyse des certificats sur la même connexion. Ses constats sont réintégrés dans la règle smtp.tls_quality et dans le rapport HTML.
Options
Option
Signification
Défaut
Domaine (domain)
Domaine à tester. Rempli automatiquement depuis le service.
(depuis le service)
Délai par point de terminaison (secondes) (timeout)
Délai de connexion par point de terminaison.
12
Nom EHLO (helo_name)
Nom annoncé dans EHLO/HELO. Utilisez un nom qui résout et possède un PTR valide.
mx-checker.happydomain.org
Sonder l’expéditeur nul (test_null_sender)
Sonde MAIL FROM:<> (acceptation des DSN, RFC 5321).
Sonder la posture de relais ouvert (test_open_relay)
Sonde un destinataire hors du domaine testé pour détecter les relais ouverts.
true
Destinataire de la sonde de relais ouvert (test_probe_address)
Boîte (hors du domaine testé) utilisée pour la sonde de relais ouvert.
postmaster@example.com
Dans happyDomain
C’est un vérificateur de niveau service : configurez-le depuis l’onglet Vérifications du service « Serveurs e-mail » (MX). Pour confirmer que le courrier que votre domaine envoie arrive en boîte de réception, associez-le au vérificateur /fr/reference/checkers/happydeliver/. Pour le fonctionnement général de la configuration et de la lecture des vérifications, voir /fr/pages/checks/.
Délivrabilité sortante (happyDeliver)
Le vérificateur de délivrabilité sortante (nommé Outbound deliverability (via happyDeliver) dans happyDomain) mesure le sort que connaîtrait un message envoyé depuis votre domaine sur le chemin de la boîte de réception du destinataire. Au lieu d’examiner les enregistrements DNS isolément, il pilote une instance externe happyDeliver pour réaliser un test de bout en bout.
Ce vérificateur s’applique au niveau service : il est rattaché à un service (typiquement la configuration de messagerie d’un sous-domaine) et a besoin d’identifiants SMTP pour envoyer le message de test en votre nom.
Fonctionnement
À chaque exécution, le vérificateur :
Alloue une adresse de réception neuve sur l’instance happyDeliver configurée.
Envoie un véritable courriel de test depuis le domaine testé vers cette adresse, en utilisant le serveur de soumission SMTP et les identifiants que vous fournissez.
Interroge happyDeliver jusqu’à ce que le message ait été reçu et analysé.
Conserve le rapport de happyDeliver et expose le score de chaque section sous forme de métrique.
happyDeliver note le message sur plusieurs sections (DNS, authentification, filtres anti-spam, listes noires, en-têtes, contenu) et calcule un score global. Le vérificateur transforme chaque section en une règle.
Une instance happyDeliver externe est requise
Ce vérificateur ne fait rien seul : il lui faut une instance happyDeliver accessible, identifiée par l’URL de son API et un jeton d’authentification. Ceux-ci sont en général configurés une fois par l’administrateur et peuvent être redéfinis par domaine.
Ce qui est vérifié
Chaque règle de section compare le score happyDeliver de cette section à un minimum configurable. La vérification est Critique lorsque le score passe sous le minimum, sinon OK.
Règle
Ce qui est vérifié
Minimum par défaut
happydeliver.score.overall
Score global de happyDeliver
70
happydeliver.score.dns
Score de configuration DNS
70
happydeliver.score.authentication
Score d’authentification (SPF / DKIM / DMARC)
80
happydeliver.score.spam
Score des filtres anti-spam
70
happydeliver.score.blacklist
Score des listes noires
90
happydeliver.score.header
Score des en-têtes
70
happydeliver.score.content
Score du contenu
60
Une règle distincte, happydeliver.lifecycle, rapporte le déroulement de l’exécution elle-même : OK lorsque le message a été analysé, Critique lorsque l’adresse de test n’a pu être allouée, que le message n’a pu être envoyé, ou que happyDeliver a renvoyé une erreur d’attente, de récupération ou d’analyse, et Avertissement lorsque le message n’a pas été analysé avant l’expiration du délai.
Chaque minimum de section se règle via son option de règle min_score_<section> dans l’interface de happyDomain.
Options
Envoi (par domaine)
Option
Signification
Défaut
Serveur SMTP d’envoi (smtp_host)
Nom d’hôte ou IP du serveur de soumission utilisé pour envoyer le courriel de test. Obligatoire.
(aucun)
Port SMTP d’envoi (smtp_port)
Port de soumission (587 pour STARTTLS, 465 pour TLS implicite, 25 pour le texte clair).
587
Identifiant SMTP (smtp_username)
Identifiant du serveur de soumission (à omettre pour une soumission anonyme).
(aucun)
Mot de passe SMTP (smtp_password)
Mot de passe du serveur de soumission.
(aucun)
Mode TLS (smtp_tls)
Mode de négociation TLS : starttls, tls ou none.
starttls
Adresse d’expéditeur (from_address)
Adresse utilisée dans l’en-tête From ; elle doit appartenir au domaine testé.
no-reply@<domaine>
Contenu du message (par domaine)
Option
Signification
Défaut
Sujet (subject_override)
Remplace le sujet de test par défaut.
(intégré)
Corps texte (body_text_override)
Remplace le corps texte par défaut.
(intégré)
Corps HTML (body_html_override)
Remplace le corps HTML par défaut.
(intégré)
Temporisation (par domaine)
Option
Signification
Défaut
Délai d’attente (wait_timeout)
Secondes d’attente pour que happyDeliver reçoive et analyse le message.
900
Intervalle d’interrogation (poll_interval)
Secondes entre deux interrogations de statut (borné à la plage 2 à 60).
5
Instance (admin, redéfinissable par domaine)
Option
Signification
Défaut
URL de l’instance happyDeliver (happydeliver_url)
URL de base de l’API happyDeliver.
(admin)
Jeton d’API happyDeliver (happydeliver_token)
Jeton d’authentification de l’API happyDeliver.
(admin)
Dans happyDomain
Activez ce vérificateur depuis l’onglet Vérifications du service et fournissez les détails de soumission SMTP afin que happyDomain puisse envoyer le message de test. Voir /fr/pages/checks/ pour le fonctionnement général de la planification et de la lecture des vérifications.
La délivrabilité dépendant fortement de votre posture anti-usurpation, associez ce vérificateur à une configuration /fr/reference/services/email/ bien réglée (SPF, DKIM et DMARC). Pour la partie DNSSEC de la chaîne de confiance de votre domaine, voir /fr/reference/checkers/dnssec/.
Autoconfiguration de la messagerie
Le vérificateur d’autoconfiguration de la messagerie s’assure que les clients de messagerie peuvent découvrir automatiquement comment se connecter à vos serveurs de courriel. Lorsque l’autoconfiguration est publiée correctement, l’utilisateur saisit seulement son adresse et son mot de passe, et son client (Thunderbird, Outlook, applications mobiles) trouve de lui-même les bons hôtes IMAP/POP et SMTP, les ports et les réglages de sécurité.
Ce vérificateur s’applique au niveau service : il concerne les services d’autoconfiguration de messagerie et de RFC 6186 d’un domaine. À chaque exécution, il sonde les mécanismes de découverte utilisés par les clients réels :
Autoconfig Thunderbird (brouillon Bucksch) : https://autoconfig.<domaine>/mail/config-v1.1.xml comme URL primaire, avec le repli sur l’apex https://<domaine>/.well-known/autoconfig/..., une variante optionnelle en HTTP simple, le repli sur l’ISPDB de Mozilla et les replis via le parent MX.
Autodiscover Microsoft (POX) : https://autodiscover.<domaine>/autodiscover/autodiscover.xml.
Enregistrements SRV de la RFC 6186 : _imaps, _imap, _pop3s, _pop3, _submissions, _submission, _autodiscover.
Résolution MX, pour le contexte et la découverte fondée sur les MX.
Il analyse chaque réponse, recoupe les serveurs annoncés par les différentes sources et produit un rapport HTML accompagné d’extraits de correction prêts à coller pour les défauts les plus courants.
Ce qui est vérifié
Règle
Ce qui est vérifié
Sévérité en cas d’échec
autoconfig_presence
Au moins une méthode de découverte d’autoconfiguration répond pour le domaine.
Critique
autoconfig_preferred_endpoint
L’URL primaire https://autoconfig.<domaine>/mail/config-v1.1.xml est joignable et sert un clientConfig valide.
Avertissement
autoconfig_tls
Les points d’accès d’autoconfig sont servis en HTTPS avec un certificat TLS valide.
Critique
autoconfig_server_encryption
Les serveurs annoncés par l’autoconfig utilisent SSL ou STARTTLS et une méthode d’authentification non en clair.
Critique
autoconfig_consistency
Les noms d’hôtes et ports rapportés par l’autoconfig, l’Autodiscover et les SRV concordent entre eux.
Avertissement
autoconfig_srv_records
Les enregistrements SRV de la RFC 6186 complètent le XML d’autoconfig.
Avertissement
autoconfig_autodiscover
Si l’Autodiscover Microsoft (POX) répond sur le domaine.
Avertissement
En cas d’échec, la section « Fix this first » du rapport fournit des extraits prêts à copier : un exemple de config-v1.1.xml et ses URL canoniques lorsque rien n’est publié, une incitation à ajouter le sous-domaine autoconfig. lorsque seul .well-known répond, une redirection vers HTTPS, un rappel sur la couverture du certificat, un aide-mémoire de ports pour les serveurs en clair (SSL 993/465, STARTTLS 143/587) et un extrait de zone SRV prêt à coller.
Options
Par utilisateur
Option
Signification
Défaut
Partie locale des sondes (probeEmail)
Partie locale envoyée dans la chaîne de requête de l’URL d’autoconfig (avant le @). La plupart des serveurs l’ignorent.
test
Délai HTTP (httpTimeout)
Délai par requête, en secondes, lors du sondage des points d’accès.
8
Tenter le repli ISPDB de Mozilla (tryISPDB)
Lorsque le domaine ne publie aucun fichier d’autoconfig, interroger aussi l’ISPDB public de Mozilla.
true
Autoriser le repli HTTP simple (tryHTTPAutoconfig)
Sonder aussi la variante en HTTP simple de autoconfig.<domaine> (optionnelle dans le brouillon) ; utile pour repérer les fournisseurs encore en HTTP.
false
Sonder l’Autodiscover Microsoft (tryAutodiscoverPost)
Sonder les points d’accès Autodiscover Exchange/Outlook. À désactiver pour ne vérifier que le flux Thunderbird.
true
Admin
Option
Signification
Défaut
URL de base de l’ISPDB Mozilla (ispdbURL)
URL de base de la base de repli d’autoconfig de Mozilla.
https://autoconfig.thunderbird.net/v1.1/
User-Agent des sondes (userAgent)
User-Agent annoncé dans chaque requête de sondage.
Activez ce vérificateur depuis l’onglet Vérifications du service d’autoconfiguration de messagerie concerné. Voir /fr/pages/checks/ pour la planification et la lecture des vérifications.
Ce vérificateur est le compagnon naturel d’une configuration de messagerie complète : voir /fr/reference/services/email/ pour les services MX, SPF, DKIM et DMARC qui régissent la remise et l’authentification du courrier.
Clés de messagerie (DKIM / OpenPGP)
Le vérificateur de clés de messagerie (nommé OPENPGPKEY & SMIMEA dans happyDomain) valide les clés cryptographiques qu’un domaine publie dans le DNS afin que ses correspondants puissent chiffrer le courrier destiné à ses utilisateurs. Il couvre deux types d’enregistrements de style DANE :
OPENPGPKEY (RFC 7929) : la clé publique OpenPGP d’un utilisateur, publiée sous un nom haché du propriétaire, sous ._openpgpkey.<zone>.
SMIMEA (RFC 8162) : le certificat S/MIME d’un utilisateur, publié sous un nom haché du propriétaire, sous ._smimecert.<zone>.
Ce vérificateur s’applique au niveau service : il concerne les services OpenPGP et S/MIME d’un sous-domaine, exécute une suite de tests complète, puis produit un rapport HTML dont le bloc supérieur pointe vers la correction des défauts les plus courants.
Publication et structure, pas confiance cryptographique
Ce vérificateur valide la publication DNS ainsi que la structure et les métadonnées des clés qu’il trouve. Il ne les vérifie pas cryptographiquement : les signatures OpenPGP (auto-signatures, certifications par des tiers) ne sont pas vérifiées, et les chaînes S/MIME ne sont ni construites ni validées par rapport à une ancre de confiance (pas de CRL/OCSP). L’authenticité des enregistrements eux-mêmes est déléguée à un résolveur validant via le drapeau DNSSEC AD. Considérez un rapport vert comme « l’enregistrement est bien formé et signé par DNSSEC », et non comme « la clé est digne de confiance ».
Ce qui est vérifié
DNS et DNSSEC
Règle
Ce qui est vérifié
Sévérité
dns_query_failed
La requête DNS de l’enregistrement aboutit.
Critique
dns_no_record
Un enregistrement est publié au nom de propriétaire attendu.
Critique
dns_record_mismatch
L’enregistrement renvoyé par le DNS correspond à celui déclaré par le service.
Avertissement
dnssec_not_validated
L’enregistrement est authentifié par DNSSEC (drapeau AD posé).
Critique (Avertissement si DNSSEC non exigé)
owner_hash_mismatch
Le premier label du nom de propriétaire vaut hex(sha256(username))[:28].
Critique
OpenPGP (OPENPGPKEY)
Règle
Ce qui est vérifié
Sévérité
pgp_parse_error
L’enregistrement se décode en une clé OpenPGP valide.
Critique
pgp_primary_revoked
La clé primaire ne porte aucune signature de révocation.
Critique
pgp_primary_expired
La clé primaire n’a pas dépassé l’expiration de son auto-signature.
Critique
pgp_primary_expiring_soon
La clé primaire n’expire pas dans la fenêtre configurée.
Avertissement
pgp_weak_algorithm
Aucun algorithme ancien (DSA/ElGamal) n’est employé.
Avertissement
pgp_weak_key_size
Les clés RSA respectent la taille minimale de 2048 bits (3072+ préférée).
Critique
pgp_no_encryption_subkey
Au moins une clé active annonce une capacité de chiffrement.
Critique
pgp_no_identity
La clé porte au moins un identifiant utilisateur auto-signé.
Avertissement
pgp_uid_mismatch
Au moins un UID référence <username@...>.
Info
pgp_multiple_entities
L’enregistrement porte une seule entité OpenPGP (RFC 7929).
Avertissement
pgp_record_too_large
L’enregistrement reste sous 4 Kio pour tenir dans une réponse UDP typique.
Avertissement
S/MIME (SMIMEA)
Règle
Ce qui est vérifié
Sévérité
smimea_bad_usage
Le champ usage vaut 0, 1, 2 ou 3.
Critique
smimea_bad_selector
Le champ sélecteur vaut 0 (Cert) ou 1 (SPKI).
Critique
smimea_bad_match_type
Le type de correspondance vaut 0 (Full), 1 (SHA-256) ou 2 (SHA-512).
Critique
smimea_cert_parse_error
L’enregistrement se décode en un certificat X.509 ou un SPKI valide.
Critique
smimea_cert_not_yet_valid
Le NotBefore du certificat est dans le passé.
Critique
smimea_cert_expired
Le NotAfter du certificat est dans le futur.
Critique
smimea_cert_expiring_soon
Le certificat n’expire pas dans la fenêtre configurée.
Avertissement
smimea_no_email_protection_eku
Le certificat annonce l’EKU emailProtection.
Critique (Avertissement si non exigé)
smimea_missing_key_usage
Le certificat porte l’usage de clé digitalSignature et/ou keyEncipherment.
Avertissement
smimea_weak_signature_algorithm
Le certificat n’est pas signé avec un algorithme déprécié (MD2/MD5/SHA-1).
Critique
smimea_weak_key_size
Les clés RSA respectent la taille minimale de 2048 bits (3072+ préférée).
Critique
smimea_self_signed
Signale les certificats auto-signés associés à PKIX-EE (usage 1).
Info
smimea_email_mismatch
Au moins un SAN courriel commence par <username>@.
Info
smimea_hash_only
Note que les types de correspondance 1/2 ne transportent qu’un condensat, empêchant l’inspection du certificat.
Info
Options
Option
Signification
Défaut
Résolveur DNS (resolver)
Résolveur validant à interroger (liste séparée par des virgules acceptée). Vide : résolveur système.
(système)
certExpiryWarnDays
Fenêtre, en jours, des avertissements expiring_soon (PGP et S/MIME).
30
requireDNSSEC
Si faux, un drapeau AD absent devient un Avertissement plutôt qu’un Critique.
true
requireEmailProtection
Si faux, une EKU emailProtection absente devient un Avertissement plutôt qu’un Critique.
true
L’origine de la zone, le sous-domaine, le service et le type de service sont préremplis par happyDomain.
Interrogez un résolveur validant
L’authenticité des enregistrements étant déléguée au DNSSEC, exécutez ce vérificateur contre un résolveur en qui vous avez confiance pour effectuer la validation DNSSEC, afin que le drapeau AD reflète une validation réelle.
Dans happyDomain
Activez ce vérificateur depuis l’onglet Vérifications du service OpenPGP ou S/MIME concerné. Voir /fr/pages/checks/ pour le fonctionnement général.
Ces enregistrements partagent leur modèle de sécurité avec le DNSSEC : pour confirmer que la chaîne de signature de votre zone est elle-même saine, voir /fr/reference/checkers/dnssec/. Pour la configuration de messagerie environnante, voir /fr/reference/services/email/.
CalDAV / CardDAV
Les vérificateurs CalDAV et CardDAV vérifient que les serveurs de calendrier (RFC 4791) et de contacts (RFC 6352) d’un domaine sont découvrables, accessibles, et annoncent correctement les extensions WebDAV sur lesquelles s’appuient les clients. Il s’agit de deux vérificateurs distincts partageant la même logique : caldav s’attache à un service CalDAV (abstract.CalDAV), carddav à un service CardDAV (abstract.CardDAV). La seule différence de comportement porte sur la capacité DAV requise (calendar-access contre addressbook) et sur une vérification de planification propre à CalDAV.
Les deux vérificateurs sont de niveau service : ils ciblent le service correspondant publié sur un sous-domaine et se configurent depuis l’onglet Vérifications de ce service. La découverte suit la RFC 6764 : le vérificateur résout une URL de contexte à partir de /.well-known/{caldav,carddav} et des enregistrements SRV _caldavs._tcp / _carddavs._tcp (avec un indice TXT path= facultatif), puis sonde ce point d’accès.
Lorsqu’aucun identifiant n’est fourni, seule la phase anonyme s’exécute (découverte, transport, OPTIONS). Fournir un nom d’utilisateur et un mot de passe déverrouille la phase authentifiée : découverte du principal, home-set, énumération des collections et sonde REPORT.
La posture TLS est hors périmètre
Ces vérificateurs confirment uniquement qu’une session HTTPS peut être établie vers l’URL de contexte. La validation du certificat (chaîne, nom d’hôte, expiration, algorithmes) est volontairement laissée au vérificateur TLS dédié. Consultez /fr/reference/checkers/tls/.
Ce qui est vérifié
Règle
Ce qui est vérifié
Conditions
dav_discovery
Une URL de contexte se résout via /.well-known ou SRV.
Critique si aucune URL de contexte ne peut être résolue. Avertissement quand /.well-known renvoie 200 au lieu d’une redirection 301/302 (légal mais beaucoup de clients ne la suivent pas). Info quand l’URL a été résolue via SRV mais que /.well-known est cassé.
dav_transport
La connexion HTTPS vers l’URL de contexte est accessible.
Critique si la connexion échoue.
dav_options
Une requête HTTP OPTIONS annonce la capacité DAV requise (calendar-access pour CalDAV, addressbook pour CardDAV) et les méthodes PROPFIND/REPORT.
Critique si OPTIONS échoue ou si la capacité manque. Avertissement si l’en-tête Allow ne contient pas PROPFIND ou REPORT.
dav_principal
L’URL du principal de l’utilisateur courant est découverte via un PROPFIND authentifié.
Critique en cas d’échec. Inconnu si aucun identifiant n’est fourni (phase ignorée).
dav_home_set
Le home-set calendrier/carnet d’adresses est découvert depuis le principal.
Critique en cas d’échec. Inconnu si ignoré.
dav_collections
Les collections calendrier/carnet d’adresses s’énumèrent et exposent leurs propriétés (jeu de composants pris en charge, données d’adresse prises en charge, nom affiché…).
Critique en cas d’échec. Avertissement si le home-set est vide. Inconnu si ignoré.
dav_report
Le serveur accepte une requête REPORT minimale (calendar-query / addressbook-query) sur la première collection.
Critique en cas d’échec. Avertissement si la requête renvoie une réponse inattendue. Inconnu si ignoré.
caldav_scheduling
(CalDAV uniquement) Lorsque calendar-schedule est annoncé, le principal expose schedule-inbox-URL et schedule-outbox-URL.
Avertissement si annoncé mais que les URL manquent ou que la sonde échoue. Info quand la planification n’est pas annoncée. Inconnu si ignoré.
Le rapport HTML met en avant les erreurs de configuration les plus courantes sous forme d’encarts : /.well-known renvoyant 200, absence de SRV et de well-known (service inaccessible), un enregistrement SRV en clair sans équivalent sécurisé, un serveur n’annonçant pas la classe DAV requise, et la phase authentifiée ignorée faute d’identifiants.
Options
Les deux vérificateurs acceptent les mêmes options.
Option
Signification
Défaut
Nom d’utilisateur
Facultatif. Fournir des identifiants déverrouille les vérifications authentifiées (principal, home-set, collections, sonde REPORT).
(vide)
Mot de passe ou jeton
Facultatif. Associé au nom d’utilisateur pour l’authentification HTTP Basic.
(vide)
URL de contexte explicite
Facultatif. Contourne la découverte /.well-known et SRV ; à utiliser pour les serveurs à la disposition non standard.
(vide)
Nom de domaine
Le domaine à sonder (renseigné automatiquement depuis la portée du service).
(auto)
Délai d’attente (secondes)
Délai d’attente HTTP par requête.
10
Dans happyDomain
Activez le vérificateur CalDAV ou CardDAV depuis l’onglet Vérifications d’un service CalDAV ou CardDAV. Le nom de domaine est renseigné automatiquement ; ajoutez des identifiants uniquement si vous souhaitez exécuter les vérifications authentifiées des collections et de REPORT. Consultez /fr/pages/checks/ pour le fonctionnement complet, et /fr/reference/checkers/tls/ pour la posture des certificats de ces mêmes points d’accès.
LDAP
Le vérificateur LDAP sonde le déploiement LDAP d’un domaine de bout en bout. À partir de la découverte SRV (_ldap._tcp, _ldaps._tcp), il teste l’accessibilité de chaque point d’accès, confirme qu’un canal chiffré est disponible (StartTLS selon la RFC 2830 ou TLS implicite sur le port 636), introspecte le RootDSE, recherche une divulgation d’information anonyme, vérifie que l’annuaire refuse les binds en clair et, lorsque des identifiants sont fournis, effectue un bind authentifié sur TLS avec un test de lecture facultatif sur un DN de base.
Il s’agit d’un vérificateur de niveau service : il cible un service LDAP (abstract.LDAP) publié sur un sous-domaine et se configure depuis l’onglet Vérifications de ce service. Pour chaque transport, il sonde _ldap._tcp (repli sur le port 389) et _ldaps._tcp (repli sur le port 636), en testant chaque adresse A/AAAA résolue par famille d’adresses.
La posture TLS est intégrée, pas dupliquée
Le vérificateur LDAP confirme uniquement qu’une session TLS peut être établie, en enregistrant la version et l’algorithme négociés à titre de contexte. Chaque point d’accès sondé est publié comme entrée de découverte tls.endpoint.v1 afin que le vérificateur TLS dédié puisse vérifier la chaîne de certificats, la correspondance du nom d’hôte et l’expiration. Ces constats sont réintégrés sur la page du service LDAP via la règle ldap.tls_quality : un certificat défectueux sur un point d’accès LDAP apparaît ici, et pas seulement dans une vue TLS distincte. Consultez /fr/reference/checkers/tls/.
Ce qui est vérifié
Règle
Ce qui est vérifié
Gravité
ldap.has_srv
Les enregistrements SRV _ldap._tcp / _ldaps._tcp sont publiés et résolvables.
Avertissement
ldap.endpoint_reachable
Chaque point d’accès LDAP découvert accepte une connexion TCP.
Critique
ldap.has_encrypted_transport
Au moins un point d’accès accessible propose un canal chiffré (LDAPS ou StartTLS).
Critique
ldap.starttls_supported
StartTLS est proposé et la bascule réussit sur chaque point d’accès LDAP en clair accessible.
Critique
ldap.ldaps_handshake
La poignée de main TLS directe réussit sur chaque point d’accès LDAPS.
Critique
ldap.starttls_on_ldaps
Signale les serveurs qui annoncent inutilement StartTLS sur le port LDAPS à TLS implicite.
Info
ldap.ipv6_reachable
Au moins un point d’accès est accessible en IPv6.
Info
ldap.refuses_plain_bind
L’annuaire refuse l’authentification sur un canal en clair (confidentialityRequired, resultCode 13, selon la RFC 4513 §5.1.2).
Critique
ldap.anonymous_search_blocked
Signale les annuaires qui autorisent une recherche baseObject anonyme du contexte de nommage (divulgation d’information).
Avertissement
ldap.rootdse_readable
Le RootDSE est lisible sur TLS et annonce des contextes de nommage.
Avertissement
ldap.sasl_mechanisms
Examine supportedSASLMechanisms : présence de mécanismes forts (SCRAM-*, EXTERNAL, GSSAPI), absence de mécanismes équivalents à un mot de passe (PLAIN/LOGIN seuls).
Avertissement
ldap.protocol_version
Signale les serveurs qui annoncent encore le protocole LDAPv2 déprécié.
Avertissement
ldap.bind_credentials
Les identifiants de bind fournis sont acceptés par l’annuaire (ne s’exécute que si bind_dn est défini).
Critique
ldap.base_dn_read
Le compte authentifié peut lire le DN de base fourni (ne s’exécute que si base_dn est défini et que le bind a réussi).
Critique
ldap.tls_quality
Réintègre les constats du vérificateur TLS aval (chaîne de certificats, correspondance du nom d’hôte, expiration) sur le service LDAP.
Critique
Le rapport HTML commence par les défaillances les plus courantes et inclut une remédiation propre à chaque serveur (olcSecurity sous OpenLDAP, require_tls sous 389-ds…) : aucun point d’accès chiffré accessible, StartTLS absent sur 389, une poignée de main StartTLS qui échoue, un bind en clair accepté sur 389, une poignée de main LDAPS qui échoue, une recherche anonyme exposant le DIT, un SASL limité à PLAIN/LOGIN, un LDAPv2 résiduel, et des identifiants de bind rejetés.
Options
Option
Signification
Défaut
Domaine
Le domaine de l’annuaire (renseigné automatiquement depuis la portée du service). Obligatoire.
(auto)
Délai d’attente par point d’accès (secondes)
Délai de connexion/sonde pour chaque point d’accès.
10
Bind DN
Facultatif. DN avec lequel se connecter ; utilisé uniquement si un mot de passe de bind est aussi défini, et seulement sur un canal protégé par TLS.
(vide)
Mot de passe de bind
Facultatif, secret. Le mot de passe n’est pas conservé dans la charge d’observation et n’est jamais transmis en clair.
(vide)
DN de base (test de lecture)
Facultatif. Après un bind réussi, une recherche baseObject sur ce DN confirme que le compte dispose d’un accès en lecture. Repli sur une recherche baseObject anonyme si aucun bind DN n’est fourni.
(vide)
Dans happyDomain
Activez le vérificateur LDAP depuis l’onglet Vérifications d’un service LDAP. Le domaine est renseigné automatiquement ; fournissez un bind DN et un mot de passe uniquement si vous souhaitez exécuter les tests de bind authentifié et de lecture du DN de base. Consultez /fr/pages/checks/ pour le fonctionnement complet, et /fr/reference/checkers/tls/ pour la posture des certificats de ces mêmes points d’accès.
Kerberos
Le vérificateur Kerberos audite un royaume Kerberos à partir de ses enregistrements DNS. À partir du nom du royaume (dérivé en majuscules depuis le domaine) et des enregistrements SRV regroupés sous le service Kerberos, il exécute une série de sondes anonymes et, lorsque des identifiants sont fournis, un aller-retour authentifié facultatif, ce qui donne une vue combinée de la disponibilité et de la posture de sécurité du royaume.
Il s’agit d’un vérificateur de niveau service : il cible un service Kerberos (abstract.Kerberos) publié sur un sous-domaine et se configure depuis l’onglet Vérifications de ce service. Il inspecte la disposition SRV (_kerberos._tcp, _kerberos._udp, _kerberos-master._tcp, _kerberos-adm._tcp, _kpasswd._tcp, _kpasswd._udp), résout en avant chaque cible SRV (A + AAAA), teste l’accessibilité TCP de chaque hôte KDC/kadmin/kpasswd et l’accessibilité UDP du KDC via un véritable AS-REQ. La sonde AS-REQ anonyme confirme le royaume, lit les enctypes pris en charge depuis ETYPE-INFO2, détecte un indice PKINIT (PA-PK-AS-REQ) et mesure la dérive d’horloge.
Les identifiants sont transmis au KDC
Lorsqu’un principal et un mot de passe sont fournis, ils servent une fois à obtenir un TGT puis à effectuer un TGS-REQ pour le service cible ; ils sont transmis au KDC sur le réseau et ne sont jamais stockés par le vérificateur. Laissez-les vides pour n’exécuter que les sondes anonymes.
Ce qui est vérifié
Règle
Ce qui est vérifié
Gravité
kerberos.srv_present
Au moins un enregistrement SRV _kerberos._tcp / _kerberos._udp est publié pour le royaume.
Critique
kerberos.kdc_reachable
Au moins un point d’accès KDC (TCP/UDP 88) accepte une connexion.
Critique
kerberos.as_probe
La sonde AS-REQ anonyme a reçu une réponse cohérente (KRB-ERROR ou AS-REP).
Critique
kerberos.realm_match
Le KDC répond pour le nom de royaume attendu.
Critique
kerberos.preauth_required
Signale les KDC qui renvoient un AS-REP sans exiger de pré-authentification (exposition à l’AS-REP roasting).
Avertissement
kerberos.clock_skew
L’horloge du KDC est dans la tolérance par rapport à celle du vérificateur.
Critique
kerberos.enctypes
Examine les types de chiffrement annoncés par le KDC, signalant les configurations limitées à DES/RC4.
Critique
kerberos.kadmin_reachable
Signale les points d’accès kadmin publiés via SRV mais inaccessibles.
Avertissement
kerberos.kpasswd_reachable
Signale les points d’accès kpasswd publiés via SRV mais inaccessibles.
Avertissement
kerberos.auth_tgt
Le principal/mot de passe fourni peut obtenir un TGT (ne s’exécute que si des identifiants sont fournis).
Critique
kerberos.auth_tgs
Un TGS-REQ réussit pour le service cible fourni (ne s’exécute que si des identifiants et un service cible sont fournis).
Avertissement
Le rapport HTML met en avant les erreurs de configuration les plus courantes avec une piste de remédiation directe : absence d’enregistrements SRV (publier _kerberos._tcp.REALM. SRV …), une cible SRV sans A/AAAA, le port 88 inaccessible (ouvrir TCP+UDP 88), une dérive d’horloge au-dessus du maximum (lancer ntpd/chrony), des royaumes limités aux enctypes faibles (passer à aes256-cts-hmac-sha1-96), un mauvais royaume dans la réponse, et l’exposition à l’AS-REP roasting (activer requires_preauth).
Options
Option
Signification
Défaut
Royaume Kerberos
Domaine DNS annonçant le royaume (renseigné automatiquement depuis la portée du service ; le nom du royaume est dérivé en majuscules). Obligatoire.
(auto)
Principal
Facultatif. À fournir pour exécuter un aller-retour authentifié ; laissez vide pour n’exécuter que les sondes anonymes.
(vide)
Mot de passe
Facultatif, secret. Mot de passe du principal ci-dessus ; utilisé une fois par exécution et jamais stocké.
(vide)
Service à demander (TGS)
Facultatif. SPN demandé via TGS-REQ une fois un TGT obtenu. Par défaut krbtgt (auto-test du royaume).
(vide)
Délai d’attente par sonde (secondes)
Délai d’attente pour chaque sonde.
5
Exiger des enctypes forts
Lorsqu’activé, les royaumes n’annonçant que DES/RC4 sont signalés comme Critique.
true
Dérive d’horloge maximale tolérée (secondes)
La tolérance Kerberos par défaut est de 300 s ; des valeurs plus strictes font apparaître la dérive plus tôt.
300
Dans happyDomain
Activez le vérificateur Kerberos depuis l’onglet Vérifications d’un service Kerberos. Le domaine du royaume est renseigné automatiquement ; fournissez un principal et un mot de passe uniquement si vous souhaitez exécuter l’aller-retour authentifié TGT/TGS. Consultez /fr/pages/checks/ pour le fonctionnement complet.
SIP
Le vérificateur SIP sonde le déploiement SIP/VoIP d’un domaine à partir de ses enregistrements DNS, en suivant la résolution de la RFC 3263 : NAPTR → SRV (_sip._udp, _sip._tcp, _sips._tcp) → A/AAAA. Il teste l’accessibilité de chaque cible:port résolue en UDP, TCP et TLS, puis envoie un ping SIP OPTIONS brut et inspecte la réponse (ligne de statut, Server/User-Agent, méthodes Allow annoncées, temps d’aller-retour).
Il s’agit d’un vérificateur de niveau service : il cible un service SIP (abstract.SIP) publié sur un sous-domaine et se configure depuis l’onglet Vérifications de ce service. Lorsqu’aucun enregistrement SRV n’est publié, le vérificateur se rabat sur <domaine>:5060 / <domaine>:5061, avec un marqueur d’information visible dans le rapport.
La posture TLS est intégrée, pas dupliquée
Pour la poignée de main TLS, le vérificateur utilise InsecureSkipVerify : il confirme uniquement qu’une session TLS peut être établie. Chaque cible _sips._tcp est publiée comme entrée de découverte tls.endpoint.v1 afin que le vérificateur TLS dédié puisse vérifier la chaîne de certificats, la correspondance du nom d’hôte, l’expiration et la posture des algorithmes. Ces constats sont réintégrés sur la page du service SIP via la règle sip.tls_quality. Consultez /fr/reference/checkers/tls/.
Ce qui est vérifié
Règle
Ce qui est vérifié
Gravité
sip.srv_present
Les enregistrements SRV _sip._udp / _sip._tcp / _sips._tcp sont publiés et résolvables.
Critique
sip.transport_diversity
Des transports SIP modernes (TCP, et idéalement TLS) sont publiés en plus de l’UDP historique.
Avertissement
sip.srv_targets_resolvable
Chaque cible SRV se résout en au moins une adresse A ou AAAA.
Critique
sip.endpoint_reachable
Chaque point d’accès SIP découvert accepte une connexion sur son transport.
Critique
sip.options_response
Chaque point d’accès SIP accessible répond à OPTIONS par une réponse 2xx.
Critique
sip.options_capabilities
Examine l’en-tête Allow annoncé dans les réponses OPTIONS (prise en charge d’INVITE, présence d’Allow).
Avertissement
sip.ipv6_coverage
Au moins un point d’accès SIP est accessible en IPv6.
Info
sip.tls_quality
Réintègre les constats du vérificateur TLS aval (chaîne, correspondance du nom d’hôte, expiration) sur le service SIP.
Critique
Le vérificateur effectue, dans l’ordre : la recherche NAPTR (SIP+D2U, SIP+D2T, SIPS+D2T), la recherche SRV pour les trois transports (avec le repli 5060/5061), la résolution A/AAAA de chaque cible SRV, la connexion TCP / l’envoi UDP / la poignée de main TLS, et la requête SIP OPTIONS avec son statut, ses en-têtes et son Allow analysés.
Options
Option
Signification
Défaut
Domaine SIP
Le domaine à tester (renseigné automatiquement depuis la portée du service). Obligatoire.
(auto)
Délai d’attente par point d’accès (secondes)
Délai de sonde pour chaque point d’accès.
5
Sonder _sip._udp
Faut-il sonder le transport UDP. À désactiver si l’UDP est filtré ou si l’hôte du vérificateur ne peut pas émettre d’UDP.
true
Sonder _sip._tcp
Faut-il sonder le transport TCP.
true
Sonder _sips._tcp (TLS)
Faut-il sonder le transport TLS.
true
Dans happyDomain
Activez le vérificateur SIP depuis l’onglet Vérifications d’un service SIP. Le domaine est renseigné automatiquement. Consultez /fr/pages/checks/ pour le fonctionnement complet, et /fr/reference/checkers/tls/ pour la posture des certificats des points d’accès _sips._tcp.
SSH
Le vérificateur SSH produit un audit de sécurité complet du service SSH exposé par un service « Serveur ». Il se connecte aux ports SSH annoncés sur chaque adresse A/AAAA et rapporte l’accessibilité, les correspondances bannière/CVE, la posture complète des algorithmes (échange de clés, clé d’hôte, chiffrement, MAC, compression), les clés d’hôte observées, l’alignement des empreintes SSHFP et les méthodes d’authentification exposées par le serveur. Les résultats sont présentés dans un rapport HTML orienté correction rapide.
Portée : niveau service. Il s’attache aux services de type abstract.Server (un sous-domaine publiant des enregistrements A/AAAA et éventuellement SSHFP) et se configure depuis l’onglet Vérifications de ce service.
Ce qu’il vérifie
Règle
Vérifie
Sévérité
ssh.tcp_reachable
Chaque paire (adresse, port) sondée accepte une connexion TCP.
Critique
ssh.handshake
L’échange de bannière SSH et l’analyse KEXINIT aboutissent sur chaque point de terminaison joignable.
Critique
ssh.protocol_version
Chaque point de terminaison annonce SSH-2 et rejette l’ancien SSH-1.
Critique
ssh.banner_software
Signale les serveurs dont la bannière n’est pas une version OpenSSH reconnue.
Info
ssh.known_vulnerabilities
Confronte la version OpenSSH annoncée à un catalogue de CVE (regreSSHion, Terrapin, etc.).
Critique
ssh.host_key_strength
Signale les clés d’hôte sous la taille minimale acceptée (par exemple RSA < 2048 bits).
Critique
ssh.kex_algorithms
Signale les algorithmes d’échange de clés faibles ou cassés.
Critique
ssh.host_key_algorithms
Signale les algorithmes de clé d’hôte faibles ou obsolètes (ssh-rsa/SHA-1, ssh-dss, etc.).
Critique
ssh.cipher_algorithms
Signale les chiffrements symétriques faibles ou cassés (CBC, 3DES, RC4, etc.).
Critique
ssh.mac_algorithms
Signale les algorithmes MAC faibles (SHA-1, non-ETM, etc.).
Critique
ssh.strict_kex
Le serveur annonce le marqueur strict-KEX (mitigation Terrapin, CVE-2023-48795).
Avertissement
ssh.preauth_compression
Signale les serveurs offrant la compression zlib avant authentification.
Info
ssh.auth_methods
Examine les méthodes d’authentification annoncées (exposition par mot de passe, disponibilité de la clé publique).
Avertissement
ssh.sshfp_alignment
Compare les enregistrements SSHFP publiés aux clés d’hôte observées (concordance, manquant, divergence).
Critique
ssh.sshfp_hash
Signale les jeux SSHFP ne publiant que des empreintes SHA-1 (type 1).
Avertissement
La correspondance CVE couvre notamment regreSSHion (CVE-2024-6387), la RCE PKCS#11 de ssh-agent (CVE-2023-38408), Terrapin (CVE-2023-48795) et plusieurs anciennes failles d’énumération d’utilisateurs et d’injection de commandes.
Options
Option
Signification
Défaut
Ports (ports)
Ports TCP supplémentaires à sonder, séparés par des virgules. Le port 22 est toujours sondé.
(vide)
Délai de sonde par point de terminaison (ms) (probeTimeoutMs)
Temps maximal pour la connexion, la bannière, le KEXINIT et la poignée de main sur un point de terminaison.
10000
Énumérer les méthodes d’authentification (includeAuthProbe)
Ouvre une seconde connexion avec un utilisateur factice pour découvrir les méthodes d’authentification annoncées.
true
Dans happyDomain
C’est un vérificateur de niveau service : configurez-le depuis l’onglet Vérifications du service « Serveur » sur le sous-domaine concerné. Ses règles SSHFP recoupent les enregistrements SSHFP publiés dans votre zone ; garder ces enregistrements synchronisés avec les clés d’hôte du serveur améliore le résultat. Pour le fonctionnement général de la configuration et de la lecture des vérifications, voir /fr/pages/checks/.
XMPP
Le vérificateur XMPP sonde de bout en bout le déploiement XMPP (Jabber) d’un domaine, à la manière de xmpp.net : il découvre les enregistrements SRV pertinents, ouvre un flux vers chaque point d’accès, négocie STARTTLS, inspecte les mécanismes SASL proposés et confirme que la fédération de serveur à serveur peut s’authentifier.
Il s’agit d’un vérificateur de niveau service. Il s’applique aux services de type XMPP et se configure depuis l’onglet Vérifications de ce service. Il sonde les quatre noms de service standard (_xmpp-client._tcp, _xmpp-server._tcp, _xmpps-client._tcp, _xmpps-server._tcp), l’ancien _jabber._tcp, et se rabat sur <domaine>:5222 / :5269 lorsqu’aucun enregistrement SRV n’est publié.
La posture TLS est vérifiée séparément
La chaîne de certificats, la correspondance du nom d’hôte (SAN), l’expiration et la posture des chiffrements sont hors périmètre ici : un vérificateur /fr/reference/checkers/tls/ dédié s’en charge. Le vérificateur XMPP confirme seulement que STARTTLS aboutit, enregistre la version et le chiffrement TLS négociés à titre de contexte, et reverse les conclusions TLS dans le rapport du service XMPP via la règle xmpp.tls_quality.
Ce qui est vérifié
Règle
Ce qu’elle vérifie
Sévérité
xmpp.srv_c2s
Les enregistrements SRV client vers serveur (_xmpp-client / _xmpps-client / _jabber) sont publiés et résolvables.
Critique
xmpp.srv_s2s
Les enregistrements SRV serveur vers serveur (_xmpp-server / _xmpps-server) sont publiés et résolvables.
Critique
xmpp.c2s_reachable
Au moins un point d’accès client vers serveur accepte le TCP et achève le TLS.
Critique
xmpp.s2s_reachable
Au moins un point d’accès serveur vers serveur accepte le TCP et achève le TLS.
Critique
xmpp.starttls_required
STARTTLS est annoncé et requis sur chaque point d’accès c2s/s2s joignable.
Critique
xmpp.sasl_mechanisms
L’offre SASL c2s est saine (présence de SCRAM, absence d’un PLAIN seul équivalent à un mot de passe en clair).
Critique
xmpp.s2s_dialback
Les points d’accès serveur vers serveur annoncent le dialback ou SASL EXTERNAL après le TLS (authentification de fédération).
Critique
xmpp.ipv6_reachable
Signale les déploiements joignables uniquement en IPv4.
Info
xmpp.direct_tls
Signale les déploiements c2s qui ne publient pas d’enregistrements SRV direct-TLS XEP-0368 (_xmpps-*).
Info
xmpp.tls_quality
Reverse sur le service XMPP les conclusions du vérificateur TLS sous-jacent (chaîne de certificats, correspondance du nom d’hôte, expiration).
Critique
La sonde couvre aussi l’accessibilité TCP des cibles A/AAAA, l’analyse des fonctionnalités de flux et la couverture IPv4/IPv6, exposées au travers des règles ci-dessus et du rapport HTML.
Options
Option
Signification
Défaut
Domaine
Domaine XMPP (domaine du JID) à tester. Renseigné automatiquement depuis le service.
(renseigné automatiquement)
Mode
Côté à sonder : c2s (client vers serveur), s2s (serveur vers serveur) ou both (les deux).
both
Délai par point d’accès (secondes)
Budget de temps alloué à chaque point d’accès sondé.
10
Dans happyDomain
Activez ce vérificateur depuis l’onglet Vérifications d’un service XMPP ; consultez /fr/pages/checks/ pour savoir comment configurer et planifier les vérifications. Le domaine est renseigné automatiquement depuis le service. Pour le volet certificat de ces mêmes points d’accès, associez-le au vérificateur /fr/reference/checkers/tls/.
Fédération Matrix
Le vérificateur Fédération Matrix vérifie qu’un serveur Matrix (homeserver) est correctement configuré pour fédérer avec le reste du réseau Matrix. Il délègue le sondage proprement dit à une instance du Matrix Federation Tester, stocke le rapport complet sous forme d’observation, et produit un résumé HTML détaillé couvrant les connexions, les certificats, la délégation well-known et la résolution DNS/SRV.
Il s’agit d’un vérificateur de niveau service. Il s’applique aux services de type Matrix (messagerie instantanée) et se configure depuis l’onglet Vérifications de ce service.
Ce qui est vérifié
Règle
Ce qu’elle vérifie
Sévérité
matrix.connection_reachable
Chaque point d’accès de fédération découvert accepte une connexion entrante.
Critique
matrix.federation_ok
Le statut global de fédération rapporté par le Matrix Federation Tester.
Critique
matrix.srv_records
La résolution SRV Matrix (_matrix-fed._tcp / _matrix._tcp) a réussi ou a été légitimement ignorée.
Critique
matrix.tls_checks
La posture TLS sur chaque point d’accès de fédération joignable (chaîne de certificats, nom d’hôte, clé Ed25519).
Critique
matrix.version
Le serveur répond à /_matrix/federation/v1/version avec son nom et sa version.
Avertissement
matrix.well_known
/.well-known/matrix/server, lorsqu’il est publié, est valide et pointe vers le server_name déclaré.
Critique
Options
Option
Signification
Défaut
Domaine Matrix
Le server_name Matrix à tester. Renseigné automatiquement depuis le service.
matrix.org
Une option supplémentaire de niveau administrateur, federationTesterServer, définit le modèle d’URL de l’instance du Federation Tester à interroger. Elle est configurée par l’opérateur happyDomain, et non par vérification, et vaut par défaut https://federationtester.matrix.org/api/report?server_name=%s.
Dans happyDomain
Activez ce vérificateur depuis l’onglet Vérifications d’un service Matrix ; consultez /fr/pages/checks/ pour savoir comment configurer et planifier les vérifications. Le domaine Matrix est renseigné automatiquement depuis le service.
STUN / TURN
Le vérificateur STUN / TURN sonde de bout en bout les serveurs STUN et TURN. STUN et TURN sont les serveurs de traversée de NAT sur lesquels reposent les applications temps réel (WebRTC, voix et vidéo) pour établir un flux média pair à pair : STUN permet à un hôte de découvrir son adresse réflexive publique, tandis que TURN relaie le média lorsqu’aucun chemin direct ne peut être ouvert.
Il s’agit d’un vérificateur de niveau service. Il effectue la découverte SRV (ou utilise une URI explicite), contrôle l’accessibilité TCP/UDP et la poignée de main TLS/DTLS, émet une requête de binding STUN, vérifie que le serveur TURN exige une authentification, réalise un Allocate TURN authentifié, puis éprouve le chemin de relais par un aller-retour CreatePermission + Send.
Ce qui est vérifié
Règle
Ce qu’elle vérifie
Sévérité
stun_turn.discovery
Au moins un point d’accès STUN/TURN a pu être découvert (URI explicite ou résolution SRV).
Critique
stun_turn.srv_stun
Au moins un point d’accès STUN est disponible via SRV (_stun / _stuns) ou URI explicite.
Avertissement
stun_turn.srv_turn
Au moins un point d’accès TURN est disponible via SRV (_turn / _turns) ou URI explicite.
Critique
stun_turn.dial
Chaque point d’accès découvert accepte une connexion (poignée de main TCP/TLS ou socket UDP).
Critique
stun_turn.tls_transport
Au moins un transport TLS/DTLS (stuns / turns) aboutit lorsqu’il est présent.
Critique
stun_turn.ipv6_coverage
Au moins un nom d’hôte STUN/TURN se résout vers une adresse IPv6.
Avertissement
stun_turn.stun_binding
La requête de binding STUN reçoit une réponse XOR-MAPPED-ADDRESS.
Critique
stun_turn.reflexive_public
Signale les points d’accès renvoyant une adresse réflexive privée ou de bouclage (serveur ignorant son IP publique).
Critique
stun_turn.stun_latency
Compare le temps d’aller-retour du binding STUN aux seuils d’avertissement et critique.
Critique
stun_turn.turn_open_relay
Le serveur TURN exige une authentification (répond à un Allocate non authentifié par un 401).
Critique
stun_turn.turn_auth
Les identifiants TURN fournis (ou le secret partagé REST) permettent un Allocate réussi.
Critique
stun_turn.relay_public
Signale les serveurs TURN dont l’adresse de relais allouée est privée ou de bouclage (IP de relais publique manquante).
Critique
stun_turn.relay_echo
Le chemin de relais TURN peut acheminer du trafic vers le pair de test configuré (CreatePermission + Send).
Avertissement
Options
Option
Signification
Défaut
Zone
Zone utilisée pour la découverte SRV (_stun._udp / _turn._udp / _turns._tcp) en l’absence d’URI explicite. Renseignée automatiquement.
(renseignée automatiquement)
URI du serveur
URI STUN/TURN explicite (RFC 7064/7065). Prend le pas sur la découverte SRV.
(aucun)
Mode
auto sonde à la fois STUN et TURN ; stun ignore les tests d’allocation TURN ; turn exige l’allocation TURN.
auto
Nom d’utilisateur TURN
Nom d’utilisateur pour les identifiants TURN à long terme.
(aucun)
Mot de passe TURN
Mot de passe pour les identifiants TURN à long terme (secret).
(aucun)
Secret partagé API REST
Secret partagé pour dériver des identifiants éphémères (draft-uberti-rtcweb-turn-rest) ; prend le pas sur le nom d’utilisateur et le mot de passe (secret).
(aucun)
Realm
Realm TURN explicite facultatif.
(aucun)
Transports
Liste de transports à tester, séparés par des virgules, parmi udp, tcp, tls, dtls.
udp,tcp,tls
Cible de l’écho de relais
hôte:port utilisé pour valider le chemin de relais ; un CreatePermission + Send est émis, aucune donnée utile n’est échangée.
1.1.1.1:53
Tester aussi ChannelBind
Éprouve en plus ChannelBind sur la connexion de relais.
false
Seuil d’avertissement de RTT (ms)
Temps d’aller-retour du binding STUN au-delà duquel un avertissement est déclenché.
200
Seuil critique de RTT (ms)
Temps d’aller-retour du binding STUN au-delà duquel une alerte critique est déclenchée.
1000
Délai par sonde (s)
Budget de temps alloué à chaque sonde individuelle.
5
Des identifiants sont nécessaires pour les tests TURN
Les règles d’authentification, de relais public et d’écho de relais ne s’exécutent que lorsque des identifiants TURN valides sont fournis : soit un couple nom d’utilisateur/mot de passe, soit un secret partagé d’API REST. Sans eux, le vérificateur valide tout de même la découverte, l’accessibilité, le TLS et le binding STUN, mais ne peut pas éprouver le chemin de relais TURN.
Dans happyDomain
Activez ce vérificateur depuis l’onglet Vérifications du service concerné ; consultez /fr/pages/checks/ pour savoir comment configurer et planifier les vérifications. La zone est renseignée automatiquement ; fournissez une URI de serveur et des identifiants TURN selon les besoins de votre déploiement.
Liste noire (DNSBL)
Le vérificateur Liste noire et réputation signale si un domaine est actuellement listé sur des systèmes de réputation répandus. Il interroge en parallèle une série de sources et produit un rapport HTML orienté diagnostic dont la section « Action requise » liste les inscriptions les plus impactantes avec une procédure de retrait propre à chaque opérateur.
Portée : niveau domaine. La vérification cible le nom de domaine lui-même, indépendamment de ses enregistrements DNS, et s’active depuis la vue des vérifications du domaine.
Ce qu’il vérifie
Chaque source configurée contribue à sa propre règle ; une inscription sur l’une d’elles élève le statut du domaine. Les sources se répartissent en trois familles :
Listes noires de domaines basées sur le DNS (DBL/RHSBL) : interrogées via DNS, sans clé d’API : Spamhaus DBL, SURBL multi, URIBL multi, NordSpam DBL, SpamEatingMonkey Fresh, Tiopan DBL, SORBS RHSBL, ainsi que toute zone DNSBL supplémentaire ajoutée par un administrateur.
Flux de phishing/malware téléchargés : récupérés et mis en cache en mémoire : flux public OpenPhish, PhishTank, Botvrij.eu, Disconnect.me, OISD et une comparaison avec le DNS sécurisé Quad9.
Recherches HTTPS de renseignement sur les menaces : nécessitant une clé d’API configurée par un administrateur : Google Safe Browsing, abuse.ch URLhaus / ThreatFox / MalwareBazaar, VirusTotal v3, AlienVault OTX, Pulsedive, Criminal IP.
Lorsqu’une requête DNSBL est refusée (de nombreux résolveurs publics sont bloqués par les opérateurs de DBL) ou qu’un quota d’API est épuisé, la source est rapportée comme avertissement afin de ne pas polluer le statut OK. Une source multi-fournisseurs comme VirusTotal rapporte « critique » lorsqu’au moins un fournisseur signale le domaine comme malveillant, et « avertissement » lorsqu’il est seulement suspect.
Options
La seule option de niveau domaine est la cible elle-même :
Option
Signification
Défaut
Nom de domaine (domain_name)
Le domaine à rechercher. Rempli automatiquement depuis le domaine.
(depuis le domaine)
La sélection des sources et les identifiants se configurent source par source. La plupart des sources s’activent ou se désactivent (et leurs clés d’API se renseignent) au niveau administrateur ; un sous-ensemble des flux téléchargés est activé par défaut et peut être basculé par l’utilisateur. Voir la documentation de chaque source pour savoir lesquelles nécessitent une clé d’API et comment l’obtenir.
Dans happyDomain
C’est un vérificateur de niveau domaine : activez-le depuis la vue des vérifications du domaine. Les inscriptions reflètent souvent une compromission ; traitez un résultat positif comme un signal pour auditer l’hôte et renouveler les identifiants, puis suivez les liens de retrait propres à chaque opérateur indiqués dans le rapport. Pour le fonctionnement général de la configuration et de la lecture des vérifications, voir /fr/pages/checks/.
Enregistrements obsolètes
Le vérificateur Types d’enregistrements DNS obsolètes analyse une zone à la recherche de types d’enregistrements dépréciés par l’IETF, et signale chaque occurrence avec la référence RFC pertinente et une suggestion de migration concrète. Les types dépréciés encombrent une zone et, dans quelques cas, sont silencieusement ignorés par les résolveurs modernes : les nettoyer garde la zone à la fois propre et sans ambiguïté.
Il s’agit d’un vérificateur de niveau zone : il parcourt chaque service de la zone de travail en une seule passe et consolide les constats par type d’enregistrement, afin que le rapport présente une vue d’ensemble plutôt qu’un résultat par enregistrement.
Ce qui est vérifié
Une seule règle, legacy_records, inspecte le corps de chaque enregistrement orphelin à la recherche d’un type déprécié et regroupe les constats par sévérité. Le statut par défaut de la règle est critique (la pire sévérité présente remonte en tête du rapport).
Sévérité
Types d’enregistrement
Pourquoi
Critique
KEY, SIG, NXT
RFC 3755 : remplacés par DNSKEY / RRSIG / NSEC ; les validateurs modernes les ignorent.
Expérimentaux ou historiques (RFC 1035, 1183, 1706, 1712, etc.) ; suppression sans danger.
Pour chaque type détecté, le rapport nomme chaque propriétaire où il apparaît, la raison RFC, le remplacement suggéré et une instruction concrète de correction. Une zone propre produit un unique état OK avec le décompte de l’analyse ; les erreurs d’analyse rencontrées pendant le balayage sont exposées dans une section « ignorés » distincte, afin qu’un saut silencieux ne se fasse jamais passer pour un passage propre.
Le type d’enregistrement SPF, pas la politique SPF
Le type d’enregistrementSPF (RFC 4408) a été déprécié par la RFC 7208 au profit de la publication de la politique SPF dans un enregistrement TXT. Ce vérificateur signale le type d’enregistrement SPF obsolète, et non votre politique SPF elle-même, qui reste valide et nécessaire lorsqu’elle est publiée dans un enregistrement TXT.
Options
Ce vérificateur n’a aucune option réglable par l’utilisateur. Le nom de domaine et le contenu de la zone sont renseignés automatiquement.
Dans happyDomain
Activez ce vérificateur sur le domaine depuis la vue /fr/pages/checks/ ; il s’exécute sur l’ensemble de la zone en une seule passe et ne nécessite aucune configuration. Utilisez ses constats comme une liste de nettoyage : chaque carte vous indique le type d’enregistrement à supprimer et ce qu’il convient, le cas échéant, de publier à la place.
DNSViz
Le vérificateur DNSViz (nommé DNSSEC (DNSViz) dans happyDomain) évalue la chaîne de validation DNSSEC d’un domaine en pilotant DNSViz. Il analyse le nom interrogé et chacun de ses ancêtres jusqu’à la racine, de sorte qu’un échec DNSSEC récursif peut être localisé au niveau exact, et à l’enregistrement exact, où il s’est produit.
Ce vérificateur s’applique au niveau domaine : il concerne le domaine et sa chaîne de délégation plutôt qu’un service isolé.
Fonctionnement
DNSViz est exécuté en externe (un outil Python empaqueté avec le vérificateur), et happyDomain délègue la collecte à ce point d’accès. Chaque exécution revient à effectuer :
Chaque maillon de la chaîne (racine, TLD, intermédiaires, feuille) est listé explicitement afin que l’analyse complète apparaisse dans le rapport. dnsviz grok reçoit une ancre de confiance DNSKEY au format BIND pour la zone racine ; sans elle, la racine n’a pas de parent auquel se rattacher et reste classée au niveau DNS (NOERROR) au lieu de SECURE au sens DNSSEC.
La sortie est analysée : les erreurs et avertissements par zone sont extraits de l’arbre d’enregistrements imbriqués et transformés en états individuels, étiquetés du chemin JSON où ils ont été trouvés. Un catalogue d’échecs DNSSEC courants (chaîne rompue, RRSIG expirée, condensat DS incohérent, algorithme déprécié) est confronté aux constats pour alimenter une section « Fix these first » du rapport HTML.
Périmètre
Ce vérificateur rapporte exactement ce que DNSViz rapporte. Le durcissement contre le parcours de zone NSEC/NSEC3 et la politique d’itérations NSEC3PARAM (RFC 9276) sont hors périmètre ici et traités par le vérificateur DNSSEC dédié : voir /fr/reference/checkers/dnssec/.
Un état par zone de la chaîne (racine, TLD, intermédiaires, feuille).
dnsviz_zone_errors
Chaque erreur rapportée par DNSViz, rattachée à la zone où elle a été trouvée.
dnsviz_zone_warnings
Chaque avertissement rapporté par DNSViz, rattaché à la zone où il a été trouvé.
dnsviz_common_failures
Confronte les constats à un catalogue d’échecs DNSSEC courants.
Les statuts sont projetés ainsi : SECURE vers OK ; BOGUS vers Critique ; INDETERMINATE vers Avertissement ; INSECURE, NON_EXISTENT et un simple NOERROR (résout mais non signé) vers Info.
Options
Option
Signification
Défaut
Délai de sondage (probeTimeoutSeconds, admin)
Délai maximal pour l’appel à dnsviz probe ; le parcours récursif peut être lent sur certaines zones.
120
Nom de domaine (domain_name)
Domaine à analyser.
prérempli
L’environnement d’exécution de DNSViz nécessite quant à lui la présence de dnsviz dans le PATH de l’hôte et un fichier d’ancre de confiance DNSKEY racine au format BIND (détecté automatiquement à partir du paquet système dnssec-root / dns-root-data, ou indiqué explicitement). L’image conteneur fournie embarque ces éléments, de sorte que l’ancre de confiance est en place d’emblée.
Dans happyDomain
Activez ce vérificateur pour le domaine depuis la vue Vérifications. Voir /fr/pages/checks/ pour la planification et la lecture des vérifications.
DNSViz et /fr/reference/checkers/dnssec/ sont complémentaires : DNSViz valide la chaîne de bout en bout, tandis que le vérificateur DNSSEC couvre le durcissement NSEC/NSEC3. Un second avis sur la même chaîne est disponible auprès de /fr/reference/checkers/zonemaster/.
Zonemaster
Le vérificateur Zonemaster lance la suite de tests Zonemaster sur un domaine et rapporte ses constats regroupés par catégorie de test. Zonemaster est un validateur reconnu de la santé DNS et de la délégation ; ce vérificateur le pilote via son API JSON-RPC, conserve l’ensemble des résultats sous forme d’observation et produit un rapport HTML regroupé par module et par sévérité.
Ce vérificateur s’applique au niveau domaine : il évalue la délégation et le contenu de zone du domaine plutôt qu’un service isolé.
Fonctionnement
À chaque exécution, le vérificateur soumet le domaine à un point d’accès JSON-RPC Zonemaster (l’API publique officielle par défaut), attend la fin du lot de tests et conserve chaque message renvoyé par Zonemaster. Chaque message porte un module, un cas de test et une sévérité Zonemaster (INFO / NOTICE / WARNING / ERROR / CRITICAL).
Ne pointez que vers une instance Zonemaster de confiance
L’URL de l’API Zonemaster est une option d’administrateur. Comme le vérificateur émet des requêtes vers l’URL configurée et en restitue les réponses, ne le pointez que vers une instance Zonemaster en laquelle vous avez confiance.
Ce qui est vérifié
Le vérificateur projette chaque module de test Zonemaster sur une règle de catégorie. Chaque règle émet un état <règle>.summary, plus un état par message de niveau WARNING ou pire (afin que les consommateurs en aval puissent s’appuyer sur des codes stables) ; les messages INFO et NOTICE sont agrégés dans les compteurs du résumé.
Tests de délégation (accord NS parent/enfant, glue, renvois).
zonemaster.consistency
Tests de cohérence (numéro de série SOA, ensemble NS, contenu de zone entre serveurs).
zonemaster.connectivity
Tests de connectivité (joignabilité UDP/TCP des serveurs autoritaires, diversité d’AS).
zonemaster.nameserver
Tests des serveurs de noms (comportement du serveur, EDNS, traitement des RR inconnus).
zonemaster.syntax
Tests de syntaxe (syntaxe des noms de domaine, légalité des noms d’hôtes).
zonemaster.zone
Tests de zone (valeurs SOA, présence de MX, enregistrements obligatoires).
zonemaster.address
Tests d’adresses (adresses IP des serveurs de noms, plages privées/réservées).
zonemaster.basic
Tests de base/système (joignabilité initiale et prérequis fondamentaux).
Les sévérités Zonemaster sont projetées sur les statuts de happyDomain : CRITICAL et ERROR vers Critique ; WARNING vers Avertissement ; NOTICE, INFO et DEBUG vers Info. Chaque résumé retient le pire statut parmi les messages de sa catégorie. Lorsque Zonemaster ne renvoie aucun message pour une catégorie, la règle correspondante rapporte Inconnu (non testée).
Options
Option
Signification
Défaut
Nom de domaine à vérifier (domainName)
Domaine soumis à Zonemaster. Obligatoire.
prérempli
Profil (profile)
Nom du profil Zonemaster sous lequel exécuter les tests.
default
Langue des résultats (language, par utilisateur)
Langue des messages renvoyés (en, fr, de, es, sv, da, fi, nb, nl, pt).
en
URL de l’API Zonemaster (zonemasterAPIURL, admin)
Point d’accès JSON-RPC à interroger.
https://zonemaster.net/api
Dans happyDomain
Activez ce vérificateur pour le domaine depuis la vue Vérifications. Voir /fr/pages/checks/ pour la planification et la lecture des vérifications.
Zonemaster recoupe en partie /fr/reference/checkers/dnsviz/ sur le DNSSEC, mais couvre un éventail plus large de tests de délégation, de connectivité et de contenu de zone. Pour le durcissement NSEC/NSEC3 en particulier, voir /fr/reference/checkers/dnssec/.
Plugins
Les plugins sont des morceaux de code externes — des bibliothèques partagées chargées au démarrage — qui étendent les fonctionnalités de happyDomain sans recompiler le serveur. Il suffit de déposer un fichier .so dans un répertoire configuré pour que happyDomain le charge automatiquement au prochain démarrage.
happyDomain peut être étendu par des plugins de vérification (checkers) externes : des bibliothèques partagées (fichiers .so) qui ajoutent des diagnostics automatisés sur les zones, les domaines, les services ou les utilisateurs. Un plugin checker est chargé dans le processus happyDomain au démarrage. L’opérateur dépose simplement un fichier .so dans un répertoire configuré, sans recompiler le serveur.
Un checker comporte deux moitiés. Il collecte d’abord des données brutes sur une cible (une observation). Il évalue ensuite ces données au regard d’un ensemble de règles afin de produire un statut. Les résultats sont stockés puis affichés dans l’interface de happyDomain, à côté du domaine ou du service concerné.
Avertissement
Un plugin `.so` est chargé dans le processus happyDomain et s'exécute avec les mêmes privilèges que le serveur. Le répertoire des plugins doit être considéré comme un emplacement de confiance : happyDomain refuse de charger des plugins depuis un répertoire qui ne l'est pas (voir [Sécurité et déploiement](#sécurité-et-déploiement)).
Ce qu’un plugin checker doit exporter
Les plugins sont construits avec le module checker-sdk-go, publié séparément du cœur de happyDomain. Dans cette page, checker désigne le paquet git.happydns.org/checker-sdk-go/checker.
Le chargeur de happyDomain recherche un unique symbole exporté nommé NewCheckerPlugin, avec cette signature exacte :
Les deux valeurs de retour décrivent les deux moitiés d’un checker :
*CheckerDefinition décrit le checker : son identifiant, son nom, sa version, les clés d’observation dont il dépend, les options qu’il accepte, ses règles, un agrégateur optionnel, un intervalle de planification, et s’il expose des rapports HTML ou des métriques. Voir le tableau des champs ci-dessous.
ObservationProvider est la moitié chargée de la collecte. Elle expose une méthode Key() (la clé d’observation que les règles consultent) et une méthode Collect(ctx, opts) qui renvoie la charge utile brute de l’observation. happyDomain sérialise ce résultat en JSON et le met en cache pour chaque contexte d’observation.
Renvoyez une error non nulle si le plugin ne peut pas s’initialiser (variable d’environnement manquante, dépendance cgo cassée, …). L’hôte journalise l’erreur et ignore le fichier, sans interrompre le démarrage.
Un même fichier .so peut exporter plusieurs types de plugins. Le chargeur applique chaque chargeur connu à chaque fichier, puis ignore tout symbole qu’il ne reconnaît pas. Un binaire peut donc fournir plusieurs plugins.
Exemple minimal
Voici le plus petit plugin qui se charge. Il collecte une observation fixe et ne déclare aucune règle. On peut l’adapter à partir de checker-dummy, l’implémentation de référence.
// Command plugin is the happyDomain plugin entrypoint for the dummy checker.//
// Build with:// go build -buildmode=plugin -o checker-dummy.so ./pluginpackagemainimport (
"context""git.happydns.org/checker-sdk-go/checker")
typedummyProviderstruct{}
func (dummyProvider) Key() checker.ObservationKey { return"dummy.observation" }
func (dummyProvider) Collect(ctxcontext.Context, optschecker.CheckerOptions) (any, error) {
returnmap[string]string{"hello": "world"}, nil}
// NewCheckerPlugin is the symbol resolved by happyDomain at startup.funcNewCheckerPlugin() (*checker.CheckerDefinition, checker.ObservationProvider, error) {
def:=&checker.CheckerDefinition{
ID: "com.example.dummy",
Name: "Dummy checker",
Version: "0.1.0",
ObservationKeys: []checker.ObservationKey{"dummy.observation"},
// Add Rules / Aggregator / Options here in a real plugin. }
returndef, dummyProvider{}, nil}
Avertissement
Un plugin Go et le processus hôte partagent le même *runtime*. Ils **doivent** être compilés avec la même version de la chaîne d'outils Go et les mêmes versions de chaque dépendance partagée. Toute divergence produit une erreur bloquante au chargement. Voir [Contraintes de build](#contraintes-de-build).
Champs de CheckerDefinition
Le *CheckerDefinition renvoyé par NewCheckerPlugin est la description de votre checker :
Champ
Type
Description
ID
string
Requis. Identifiant stable et persistant. Choisissez une valeur préfixée par un espace de noms (com.example.dnssec-freshness, et non dnssec) et ne la changez jamais : elle indexe les résultats stockés et la configuration utilisateur.
Name
string
Nom lisible affiché dans l’interface.
Version
string
Version du plugin (par exemple "1.0.0").
Availability
CheckerAvailability
Déclare les portées auxquelles le checker s’applique et d’éventuelles restrictions de fournisseur ou de service (voir ci-dessous).
Options
CheckerOptionsDocumentation
Documente les options acceptées par le checker, regroupées par portée (voir ci-dessous).
Rules
[]CheckRule
Les règles évaluées sur l’observation collectée.
Aggregator
CheckAggregator
Optionnel. Combine les CheckState produits par chaque règle en un état de synthèse unique.
Interval
*CheckIntervalSpec
Bornes de planification optionnelles (durées Min, Max, Default).
HasHTMLReport
bool
À activer lorsque le provider implémente CheckerHTMLReporter.
HasMetrics
bool
À activer lorsque le provider implémente CheckerMetricsReporter.
ObservationKeys
[]ObservationKey
Les clés d’observation que ce checker lit.
Disponibilité
CheckerAvailability contrôle l’endroit où le checker est proposé dans l’interface :
Champ
Type
Description
ApplyToDomain
bool
Le checker peut s’exécuter sur un domaine entier.
ApplyToZone
bool
Le checker peut s’exécuter sur une zone.
ApplyToService
bool
Le checker peut s’exécuter sur un service précis.
LimitToProviders
[]string
Restreint à certains identifiants de fournisseurs DNS (vide = aucune restriction).
LimitToServices
[]string
Restreint à certains identifiants de types de services, par exemple "abstract.MatrixIM" (vide = aucune restriction).
Options
Les options sont déclarées par portée, c’est-à-dire selon qui les définit et combien de temps elles persistent. Chaque portée est une tranche de CheckerOptionDocumentation :
Portée
Qui la définit
Usage habituel
AdminOpts
Administrateur
Réglages valables pour toute l’instance, identifiants partagés.
UserOpts
Utilisateur
Préférences personnelles (par exemple la langue).
DomainOpts
Utilisateur
Configuration au niveau du domaine.
ServiceOpts
Utilisateur
Configuration au niveau du service.
RunOpts
Utilisateur, au moment de l’exécution
Paramètres propres à une invocation.
happyDomain fusionne les valeurs des différentes portées, de la moins spécifique (administrateur) à la plus spécifique (exécution), avant d’appeler Collect. Le provider reçoit donc une unique table CheckerOptions à plat. Chaque option est un CheckerOptionField avec des champs comme Id, Type, Label, Default, Choices, Required, Secret, Description et AutoFill. On lit les valeurs typées de la table à l’aide des fonctions du SDK checker.GetOption, checker.GetIntOption, checker.GetBoolOption, …
Information
Lorsque happyDomain enregistre un checker externalisable, il ajoute automatiquement une option d'administration `endpoint`. L'administrateur peut ainsi déléguer la collecte à un point d'accès HTTP distant plutôt que de l'exécuter dans le processus. Laissée vide, elle fait fonctionner le checker localement.
L’ObservationProvider
Le provider est la moitié du checker chargée de la collecte :
Key() renvoie la clé d’observation que ce provider remplit. Elle doit correspondre à l’une des ObservationKeys déclarées dans la définition.
Collect effectue le travail réel (une requête DNS, un appel HTTP, …) et renvoie n’importe quelle valeur sérialisable en JSON. happyDomain la convertit en JSON et la met en cache ; les règles la relisent ensuite.
Un provider peut implémenter des interfaces supplémentaires du SDK pour étendre son comportement :
Interface
Rôle
CheckerHTMLReporter
GetHTMLReport(ctx ReportContext) rend l’observation stockée sous forme de document HTML.
CheckerMetricsReporter
ExtractMetrics(ctx ReportContext, collectedAt) produit des métriques temporelles.
CheckEnabler
IsEligible(ctx, opts) décide, à partir des données réelles de la cible, s’il est pertinent d’exécuter le checker.
DiscoveryPublisher
DiscoverEntries(data) publie des enregistrements DiscoveryEntry que d’autres checkers peuvent consommer.
Les règles renvoient des valeurs CheckState dont le Status vaut StatusOK, StatusInfo, StatusWarn, StatusCrit, StatusError ou StatusUnknown.
Optionnel : serveur autonome
Le SDK fournit aussi checker.Server, une ossature HTTP pour exécuter un checker comme un point d’accès distant plutôt que (ou en plus) d’un plugin chargé dans le processus. Elle expose les routes /health et /collect, ainsi que /definition, /evaluate et /report lorsque le provider implémente les interfaces optionnelles correspondantes. Un provider qui implémente CheckerInteractive (RenderForm / ParseForm) dispose en outre d’un formulaire /check destiné aux humains, utilisable en dehors de happyDomain. Voir le README du SDK pour les détails ; le mode plugin décrit plus haut n’en a pas besoin.
Contraintes de build
Le paquet plugin de Go est intransigeant. Pour se charger correctement, votre plugin doit être compilé avec :
la même version de la chaîne d’outils Go que happyDomain, jusqu’au même niveau de correctif ;
les mêmes versions de chaque dépendance partagée (à figer dans votre go.mod, en vendorisant les versions exactes que happyDomain embarque) ;
CGO_ENABLED=1 ;
les mêmes GOOS et GOARCH que le binaire hôte.
Si l’un de ces points ne correspond pas, plugin.Open échoue avec une erreur parfois obscure, du type « plugin was built with a different version of package … ». L’hôte la journalise et ignore le fichier.
Le paquet plugin de Go ne fonctionne que sur linux, darwin et freebsd. Sur les autres plateformes, happyDomain est construit sans prise en charge des plugins et les répertoires configurés sont ignorés, avec un avertissement journalisé au démarrage.
Sécurité et déploiement
Permissions du répertoire et des fichiers
Charger un fichier .so revient à exécuter du code arbitraire avec les droits du processus happyDomain. Le chargeur impose donc des règles strictes de propriété avant de toucher au moindre fichier :
Le répertoire des plugins ne doit pas être un lien symbolique : happyDomain refuse de le suivre, pour éviter qu’il soit redirigé vers un chemin contrôlé par un attaquant.
Le répertoire des plugins ne doit pas être accessible en écriture au groupe ni à tous. Un répertoire modifiable par quelqu’un d’autre que son propriétaire est traité comme une erreur de configuration bloquante et interrompt le chargement.
Tout fichier .soaccessible en écriture au groupe ou à tous est ignoré (journalisé puis écarté), même dans un répertoire par ailleurs verrouillé.
En pratique : conservez le répertoire détenu par l’utilisateur happydomain, en mode 0755, et les fichiers de plugins en mode 0644.
La variable d’environnement équivalente est HAPPYDOMAIN_PLUGINS_DIRECTORY.
Le chargeur analyse chaque répertoire configuré et tente de charger tous les fichiers .so qu’il y trouve. Un plugin qui échoue au chargement (mauvaise compilation, symboles absents, panique dans sa fabrique) est journalisé puis ignoré, sans interrompre le démarrage : un seul .so défectueux n’empêche jamais le chargement des autres.
Redémarrer et vérifier les journaux
sudo systemctl restart happydomain
En cas de chargement réussi, happyDomain journalise :
Les plugins checker n’importent que git.happydns.org/checker-sdk-go/checker, sous licence Apache-2.0. Le SDK a été délibérément détaché du cœur de happyDomain (sous AGPL-3.0) pour offrir une API publique réduite et stable aux checkers tiers.
Un plugin construit avec ce SDK n’est donc pas une œuvre dérivée de happyDomain. Vous pouvez distribuer votre .so sous la licence de votre choix (MIT, Apache, propriétaire ou AGPL, selon vos besoins).
Implémentation de référence
checker-dummy est le modèle complet et documenté dont s’inspire cette page. Partez-en pour écrire votre propre checker.