Passer au contenu principal

Le DNS au Cloud Girofle

Intro

L’acronyme DNS signifie Domain Name System (Système de nom de domaine). C'est un système qui permet d'associer des adresses IP (une série de chiffres et lettres qui identifie un serveur de manière unique sur l'Internet mondial) avec des noms de domaines. Par exemple docs.girofle.cloud est associé à l'adresse IP 5.196.67.140, qui correspond au serveur mutu chez nous.

Plus d'info sur Wikipédia https://fr.wikipedia.org/wiki/Domain_Name_System

Le DNS peut être vu comme un gros annuaire pour les sites/services web. Mais à la différence de l'annuaire classique, les DNS sont gérés de manière hiérarchique. Des entités (publiques ou privée) sont responsables de "bouts d'annuaires". C'est par exemple le cas de l'AFNIC en France, qui est (entre autre) responsable du .fr et du .re.

Lorsqu'on souhaite faire correspondre un nom de domaine en .fr avec une IP, il faut louer ce nom de domaine à l'entité responsable du .fr. Cela se fait généralement via un Bureau d'enregistrement (parfois appelé Registraire).

Lorsqu'on loue un nom de domaine, on peut gérer le nom de domaine en lui même (ex: girofle.cloud), ainsi que tous les sous-domaines (ex: salut.girofle.cloud, docs.girofle.cloud).

Les types de champs DNS

Si je souhaite faire correspondre docs.girofle.cloud avec l'adresse IP 5.196.67.140, il me suffit d'ajouter l'entrée DNS suivante dans la zone DNS que je loue :

docs.girofle.cloud. 3600 IN A 5.196.67.140

Cette entrée DNS se décompose de la manière suivante

  • docs.girofle.cloud : le nom de domaine.
  • 3600 : le Time To Live (ou TTL) qui indique a quelle fréquence moyenne ce champ change, en seconde. Cela permet aux ordinateurs qui consultent docs.girofle.cloud de ne pas demander une résolution DNS à chaque consultation d'une page du site.
  • IN : un mot clef qui est toujours présent mais qui n'apporte rien aux humaines
  • A : le type de champ. Ici c'est une adresse IP de type v4. Si c'était une adresse IP de type v6 (un autre format d'IP), ce serait un champ AAAA. On va y revenir juste après.
  • 5.196.67.140 : l'adresse IP dite "cible" ou "destination"

On a donc rapidement vu les champ de type A et AAAA, mais il en existe plein d'autres !

Prenons par exemple le champ CNAME (ou nom canonique). Il sert à indiquer un alias pour un nom de domaine.
Par exemple, on peut faire en sorte que docs.girofle.cloud pointe vers mutu.girofle.cloud qui lui même pointe vers l'IP 5.196.67.140
Dans cette exemple, on a donc deux entrées dans notre zone DNS :

  • docs.girofle.cloud. 3600 IN CNAME mutu.girofle.cloud
  • mutu.girofle.cloud. 3600 IN A 5.196.67.140

Ce genre de configuration est pratique si on sait que l'IP de mutu.girofle.cloud viendra à changer dans le futur (suite à un changement de serveur par exemple), seulement le pointage A de mutu.girofle.cloud devra être modifié.

Les DNS au Cloud Girofle

Le Cloud Girofle gère plusieurs nom de domaines (ex: girofle.cloud, girofle.org, chif.fr, ...). Ces noms de domaines sont loués à Gandi.net, un bureau d'enregistrement français.

Au Cloud Girofle on a deux grands cas pour les services numériques que l'on administre :

  • Soit le domaine est loué/géré par le Cloud Girofle
  • Soit le domaine est loué/géré par le membre

Dans le cas d'un domaine géré par un membre, on demande généralement à ce que le membre utilise des champs CNAME qui pointe vers chez nous.

Exemple d'un nextcloud :

  • Chez le membre : cloud.exemple.org pointe en CNAME vers nc.exemple.girofle.cloud.
  • Chez nous : nc.exemple.girofle.cloud pointe en A vers une IP (ex: 5.196.67.140)

Si on souhaite déplacer le Nextcloud sur un autre serveur (et donc une autre IP), la modification ne sera à faire que de notre coté.

Voici un autre exemple sous forme de schéma.

Comme vous pouvez le voir, la cible du CNAME est `nc.exemple.girofle.cloud`. Dans lequel `nc` correspond à un acronyme du service, et `exemple` correspond au nom arbitraire que l'on donne au membre.

Voici la liste des acronyme que nous utilisons désormais.

Service
Acronyme Commentaire
Nextcloud
nc

Paheko
ph

Forum
dc
Discourse
Bookstack
bs

Mattermost
mm

Bonus

Il est possible de changer le serveur de résolution de nom de domaine (aussi appelé résolveur) que l'on utilise sur nos serveurs, mais aussi sur nos ordinateurs perso. Ça permet par exemple parfois de contourner des censures. Plus d'infos ici : https://bonnesresolutions.net/