URL: https://linuxfr.org/news/happydomain-on-devrait-tous-avoir-un-nom-de-domaine Title: happyDomain - On devrait tous avoir un nom de domaine Authors: happydomain_dns Pierre Jarillon, patrick_g, BenoĂźt Sibaud, Ysabeau đ§¶ et palm123 Date: 2022ćčŽ05æ19æ„T02:25:05+02:00 License: CC By-SA Tags: zone, dns, domaine, hĂ©bergement, golang, interface et serveur Score: 44 Acheter un nom est facile en quelques clics, trĂšs bon marchĂ© avec une poignĂ©e dâeuros par an. Rien de plus simple. En revanche, paramĂ©trer ces caractĂ©ristiques relĂšve de compĂ©tences dâexpert. Notre projet est nĂ© dâune idĂ©e simple : si on simplifiait (enfin) lâusage des noms de domaine ? Parce quâils sont un Ă©lĂ©ment clef pour assurer sa vie privĂ©e sur Internet et parce quâil nâest pas toujours simple de se repĂ©rer dans les interfaces parfois obscures des fournisseurs, il nous semblait indispensable de crĂ©er un outil utilisable par tout le monde, de Monsieur et Madame Tout-le-Monde Ă lâadministrateur systĂšme le plus aguerri. happyDomain est un logiciel libre qui permet Ă chacun de surmonter cette complexitĂ©. Nous verrons ici tous les avantages de disposer de son ou ses noms de domaine et comment happyDomain fonctionne. ---- [Site web du projet happyDomain](https://www.happydns.org/fr/) ---- # Le DNS, quâest-ce que câest ? Le DNS est Ă la base de tous les Ă©changes sur lâInternet. Lorsque votre ordinateur dialogue avec un autre appareil, chacun dispose dâune adresse IP pour se connecter ensemble. Câest analogue de votre numĂ©ro de tĂ©lĂ©phone ou votre adresse postale. Vous avez dĂ©jĂ vu ces adresses : elles sont sous la forme `123.123.123.123` pour lâancienne version 4 et sous la forme `2001:1234:567::89` pour la nouvelle version 6. Vous vous imaginez taper `2001:910:800::52` dans la barre dâadresse de votre navigateur pour afficher le site web de French Data Network ? Non. Nous non plus. Transformez `20001:910:800::52` en `fdn.fr` et vous obtenez un nom humainement simple Ă retenir. Dâautre part, si FDN dĂ©cide de changer de serveur (ou de prestataire) pour lâhĂ©bergement de son site, elle nâaura pas besoin dâinformer ses utilisateurs de ce changement, ou de passer par une procĂ©dure de *portabilitĂ©* comme cela existe pour les numĂ©ros de tĂ©lĂ©phone lorsque lâon souhaite changer dâopĂ©rateur. Ainsi, mĂȘme 20 ans aprĂšs, chaque article de WikipĂ©dia citĂ© sur LinuxFr.org est toujours accessible, alors quâils ont changĂ© plusieurs fois [lâemplacement de leurs serveurs](https://en.wikipedia.org/wiki/Wikimedia_Foundation#Technology). [Câest donc Ă cela que sert le DNS :](https://www.bortzmeyer.org/pourquoi-le-dns.html) permettre la stabilitĂ© des liens et des adresses URL en gĂ©nĂ©ral, sous un format Ă©vocateur (nom dâune marque, dâun lieu, dâun nom de famille...) # Un peu dâarchitecture Les noms de domaines sont organisĂ©s de maniĂšre hiĂ©rarchique, que lâon peut se reprĂ©senter sous la forme dâun arbre. ## Quelle est lâorganisation hiĂ©rarchique ? LâICANN rĂ©gule aujourdâhui la « racine », que lâon note `.`. Elle contient les informations sur les domaines dits de premier niveau, souvent appelĂ©s "tld" (Top Level Domain), comme `.org`, `.fr`, `.com`, `.tv`, etc. Ils sont gĂ©rĂ©s par dâautres organismes et dâautres serveurs. Par exemple, pour les domaines `.fr` relatifs Ă la France, lâorganisme rĂ©gulateur est lâAFNIC (Association Française pour le Nommage Internet en CoopĂ©ration). Cette association est notamment chargĂ©e de centraliser la distribution des noms de domaines sous `.fr`. Des bureaux dâenregistrements agréés comme OVH, Gandi, etc. revendent les domaines. LâAFNIC, ou plutĂŽt ses serveurs, indique, Ă qui lui demande, lâadresse Ă laquelle contacter le serveur de noms de domaines de lâentreprise ou du particulier Ă qui le domaine a Ă©tĂ© attribuĂ©. Câest en contactant ce serveur de noms, pas celui de lâAFNIC, mais celui de lâentreprise ou du particulier, que lâon obtiendra enfin lâadresse IP du service que lâon cherchait Ă contacter, comprĂ©hensible par les machines. ## Exemple dâune rĂ©solution de nom Le DNS est une structure arborescente dĂ©centralisĂ©e. Pour joindre le site `www.fdn.fr` depuis votre ordinateur, celui-ci doit interroger un serveur rĂ©solveur de noms de domaine. Chaque fournisseur dâaccĂšs Ă Internet en fournit un automatiquement. Ce serveur rĂ©solveur, qui ne connaĂźt que les 13 serveurs racines Ă son lancement, va interroger lâun dâeux, lequel va lui envoyer lâadresse IP des serveurs faisant autoritĂ© pour `.fr`. Les serveurs de lâAFNIC faisant autoritĂ© pour `.fr` vont Ă leur tour indiquer au rĂ©solveur lâadresse IP des serveurs faisant autoritĂ© pour `fdn.fr`. Pour terminer, câest ce dernier serveur de noms qui va fournir lâadresse IP du serveur web `www.fdn.fr`. Pfiou ! Vous comprenez maintenant lâimportance de ce systĂšme et des serveurs de noms de domaines, en anglais *Domain Name System* (DNS) ? Sans cette organisation invisible, pas dâadresse simple Ă taper dans votre navigateur. # Les heurts du DNS Vous avez trouvĂ© ça compliquĂ© ? Nous aussi. Ajoutez que les interfaces des hĂ©bergeurs de noms de domaine sont Ă la fois truffĂ©es de mots techniques obscurs pour un dĂ©butant et limitĂ©es pour les utilisateurs avancĂ©s. Double peine. Câest pour y remĂ©dier que nous avons créé happyDomain ! En effet, comprendre cette organisation des coulisses dâInternet et savoir gĂ©rer votre zone DNS sont pourtant essentiels pour acquĂ©rir votre indĂ©pendance sur le web. Comment vous assurer de la maĂźtrise de votre expression par vos blogs ou vos sites web ? Comment vous prĂ©munir de changements indĂ©sirables ? [Saviez-vous par exemple que les adresses @orange.fr ou @wanadoo.fr expirent 6 mois aprĂšs la rĂ©siliation de lâabonnement ? Toute votre production et toutes vos archives sont dĂ©truites.](https://assistance.orange.fr/assistance-commerciale/la-gestion-de-vos-offres-et-options/resilier-votre-offre/les-conseils-avant-de-resilier-votre-messagerie-mail-orange_71178-72015) Quâadviendra-t-il de votre adresse @gmail.com lorsque lâusage des donnĂ©es personnelles sera rĂ©gulĂ© par des lois contraignantes ([SafeHarbor](https://fr.wikipedia.org/wiki/Safe_Harbor) invalidĂ© en 2015, [Bouclier de protection des donnĂ©es UE-Ătats-Unis](https://fr.wikipedia.org/wiki/Bouclier_de_protection_des_donn%C3%A9es_UE-%C3%89tats-Unis) invalidĂ© en 2020, un [potentiel futur nouvel accord pour 2022](https://www.usine-digitale.fr/article/les-etats-unis-et-l-europe-trouvent-un-accord-sur-le-transfert-de-donnees-outre-atlantique.N1800372), [Digital Services Act](https://www.nextinpact.com/article/45070/le-digital-services-act-explique-ligne-par-ligne-article-1-a-24), [Digital Market Act](https://www.nextinpact.com/article/45317/le-digital-markets-act-explique-ligne-par-ligne), etc.) et que Google aura coupĂ© brutalement votre service, par manque de rentabilitĂ© (voir [KilledByGoogle.com](https://killedbygoogle.com/)) ? Si vous disposez de votre nom de domaine, comme www.example.com, vous pouvez changer de prestataire Ă volontĂ©. Inutile dâavertir tous vos contacts que lâadresse de votre site ou que votre adresse Ă©lectronique a changĂ©. Utiliser vos noms de domaine paraĂźt donc primordial pour vous rendre indĂ©pendant de vos prestataires. Le principal obstacle de votre libertĂ© est la simplicitĂ© apparente des grands prestataires comme Google qui vous prĂ©servent de la complexitĂ© du systĂšme. En rendant simple les coulisses du DNS, nous vous offrons votre libertĂ©. Dans le mĂȘme temps, nous offrons aussi aux administrateurs aguerris un logiciel qui soulagera leurs efforts en rĂ©unissant toutes les fonctionnalitĂ©s nĂ©cessaires Ă la bonne gestion dâune zone DNS. # Ă quoi sert happyDomain ? happyDomain est une interface web moderne, faite par des experts des noms de domaines. Vous pouvez lâutiliser en ligne ou lâinstaller chez vous. Un minuscule serveur comme une Raspberry Pi est suffisant ! Vous pouvez gĂ©rer vos domaines hĂ©bergĂ©s chez des hĂ©bergeurs standards ou administrer votre propre serveur faisant autoritĂ© comme `bind`, `knot` ou `PowerDNS`. En outre, happyDomain est construit sur une API REST, permettant aux DevOps dâautomatiser toutes les tĂąches liĂ©es aux domaines ! Il sâagit dâun projet libre, sous licence [CeCILL](https://cecill.info/) 2.1, une licence compatible et comparable Ă lâAGPL 3.0. Elle garantit son application dans le droit français et international. # OĂč en est le projet en 2022 ? Toute personne ayant dĂ©jĂ eu affaire aux interfaces rustiques des hĂ©bergeurs peut aujourdâhui utiliser le logiciel happyDomain. En termes de fonctionnalitĂ©s : * Lâadministration des zones DNS chez prĂšs de 15 bureaux dâenregistrement, dont OVH, Gandi... * Lâadministration depuis un serveur DNS implĂ©mentant le Dynamic DNS (RFC 2136) : `bind`, `knot`, `PowerDNS`, etc. * Un rĂ©solveur pour tester ou dĂ©boguer. * Lâhistorique (encore rudimentaire) pour pouvoir revenir en arriĂšre facilement en cas dâerreur. * Lâaffichage avant application des changements qui seront effectuĂ©s sur la zone pour limiter vos erreurs. * Une visualisation « abstraite » de la zone, oĂč les Ă©lĂ©ments sont regroupĂ©s astucieusement : voir le paragraphe Abstraction du domaine. # Ă quoi ça ressemble ? AprĂšs vous ĂȘtre inscrit, avec un identifiant et un mot de passe, vous dĂ©signez les domaines que vous souhaitez voir gĂ©rĂ©s par happyDomain. ![connection_page.png] (http://109.190.33.134/linuxfr_happydomain/connection_page.png) Lâutilisation dâOVH comme fournisseur ne demande dâailleurs aucune action compliquĂ©e : il suffit de se connecter ! CrĂ©ation du fournisseur de domaine ![providers_list.png] (http://109.190.33.134/linuxfr_happydomain/providers_list.png) Exemple avec OVH ![provider_ovh_select.png] (http://109.190.33.134/linuxfr_happydomain/provider_ovh_select.png) ![provider_ovh_connect.png] (http://109.190.33.134/linuxfr_happydomain/provider_ovh_connect.png) Vous possĂ©dez des domaines chez plusieurs fournisseurs ? Ils sont regroupĂ©s sur la page dâaccueil. ![domains-list.png] (http://109.190.33.134/linuxfr_happydomain/domains-list.png) La simplicitĂ© est dĂ©sormais au bout des doigts : vous pouvez modifier les enregistrements de la zone DNS via lâinterface, quels que soient leur type et leur valeur. ![domain-abstract.png] (http://109.190.33.134/linuxfr_happydomain/domain-abstract.png) Lorsque vous ĂȘtes prĂȘt Ă publier vos modifications, une fenĂȘtre vous montre auparavant les diffĂ©rences :  # Abstraction du domaine LâĂ©lĂ©ment clef est lâabstraction créée Ă la volĂ©e par happyDomain : il regroupe les services de maniĂšre efficace. Par exemple, pour dĂ©clarer un serveur Matrix au domaine example.com, il faut ajouter dans lâidĂ©al lâenregistrement SRV suivant : ``` _matrix._tcp.example.com. SRV 10 0 8448 matrix.example.com. ``` Outre les divers champs dont on oublie lâordre et la signification, on voit ici que lâenregistrement est ajoutĂ© sur un sous-domaine spĂ©cial dâ`example.com`. Dans happyDomain, ce service est rĂ©fĂ©rencĂ© sous `example.com`, comme on peut sây attendre, et non pas sous `_matrix._tcp.example.com`. Lâorigine de la zone, les diffĂ©rents enregistrements nĂ©cessaires pour opĂ©rer un serveur de courrier Ă©lectronique ou bien encore les dĂ©lĂ©gations de noms, tout cela est regroupĂ© et triĂ©. Vous obtenez ainsi une vision plus claire de la zone, moins sujette aux erreurs. # Simplifier les services La vie dâune zone DNS est ponctuĂ©e par lâajout de services : ajouter un blog, un serveur de messagerie, un site web, etc, en utilisant la plupart du temps un prestataire comme Google, Over-blog, OVH, Wordpress, Ionos. Câest lĂ quâil est parfois compliquĂ© de sây retrouver : les documentations sont trĂšs disparates et les interfaces rustiques des hĂ©bergeurs de noms de domaines nâaident pas Ă faire des documentations faciles dâaccĂšs pour le grand public. Nous rĂ©glons cet inconvĂ©nient grĂące Ă un formulaire pour chaque prestataire qui : * rĂ©cupĂšre automatiquement les informations techniques en accĂ©dant au compte de lâutilisateur, * Ă dĂ©faut, guide lâutilisateur pour rĂ©cupĂ©rer les informations dont il a besoin. Bien sĂ»r, nous sommes loin dâavoir fait le tour des centaines de services existant sur Internet, mais on y travaille ! # Comment lâessayer ? Au choix : 1. En ligne : crĂ©ez votre compte utilisateur sur https://happydomain.org/. 2. Sur votre serveur : tĂ©lĂ©chargez les fichiers binaires ici : [https://get.happydomain.org/master/](https://get.happydns.org/master/). Vous en trouverez pour Linux, aussi bien pour les machines et serveurs classiques (amd64), que pour les Raspberry Pi rĂ©centes telles armv7 ou arm64 et plus anciennes comme armhf. 3. Vous pouvez aussi lancer notre [image Docker](https://hub.docker.com/r/happydns/happydns) : ``` docker container run -e HAPPYDOMAIN_NO_AUTH=1 -p 8081:8081 happydomain/happydomain ``` Lâoption `NO_AUTH` contourne la crĂ©ation de compte utilisateur, ce qui est idĂ©al pour tester. Bien sĂ»r, bannissez-la dans la vie courante. Rendez-vous ensuite sur http://localhost:8081/ pour commencer Ă gĂ©rer vos domaines ! # Et aprĂšs ? happyDomain progresse et nous avons besoin de vos talents pour le rendre encore plus simple et plus utile. Utilisateurs, administrateurs, nĂ©ophytes, donnez votre avis pour orienter les prochaines fonctionnalitĂ©s en rĂ©pondant Ă [ce sondage au plus tard le 5 juin 2022](https://framaforms.org/une-minute-pour-nous-dire-ou-aller-1610359677). DĂ©veloppeurs, traducteurs, rĂ©dacteurs, concepteurs dâĂ©crans, testeurs, rejoignez lâĂ©quipe des joyeuxDNS ! Vous trouverez notre dĂ©pĂŽt Framagit ici : âĄïž [https://framagit.org/happyDomain/happyDomain](https://framagit.org/happyDNS/happydomain)