Ajouter un commentaire

Debian 10 Buster : configurer votre hostname et votre reverse DNS

Introduction

Si vous êtes ici, c'est que vous avez au moins un serveur et au moins un nom de domaine.
Mais rien ne vous empêche de faire pointer plusieurs noms de domaine (ou des sous-domaine, images.geek17.com par exemple) sur un seul et même serveur.

De même, votre serveur fait office de serveur web (nginx + MariaDB) mais il va certainement héberger d'autres services (serveur mail via postfix par exemple).

Il est donc important d'identifier de manière unique votre serveur sur le web en spécifiant un hostname (nom d'hote) et en configurant vos DNS en conséquence.

Prenons l'exemple concret de geek17.com

  • j'ai un serveur pour héberger le site web de geek17.com
  • j'héberge également d'autres sites : toto1.com et toto2.com
  • j'ai une seule adresse IP : 123.456.789.123
  • mon serveur héberge et réceptionne les mails des 3 domaines geek17.com, toto1.com et toto2.com

J'ai décidé de nommer mon serveur server1.geek17.com

Mais vous pouvez utiliser n'importe quel nom (en évitant les caractères spéciaux et accentués), suivi d'une de votre nom de domaine.

 

Ajout de l'enregistrement CNAME dans vos DNS

Rendez-vous dans l'interface de gestion de votre nom de domaine.

Les données de votre zone DNS sont présentées sous la forme d'un tableau de 3 colonnes.

Champ Type Cible
  A 123.456.789.123
www CNAME geek17.com.
server1 CNAME geek17.com.

Vous devez à minima avoir une entrée de Type A, dont le Champ est vide et qui contient votre adresse IP en Cible.
C'est grâce à cette entrée que quand vous tapez votre nom de domaine dans votre navigateur web, celui-ci contacte l'adresse IP de votre serveur pour charger les données.

Mais vous avez peut-être également une entrée de Type CNAME et dont le Champ est www et la Cible est votre nom de domaine avec un . à la fin
Cette entrée permet à votre navigateur de contacter la même adresse IP que pour geek17.com si vous taper www.geek17.com pour accéder au site.

Enfin, vous comprenez logiquement que l'entrée Type CNAME et avec le Champ est server1 permet exactement la même chose qu'avec www.
C'est mon IP qui est contacter en cas de contact sur server1.geek17.com

A titre d'info, j'aurai également pu utiliser une entrée de Type A, en indiquant Champ = server1 et l'adresse IP de mon serveur en Cible 

Champ Type Cible
server1 A 123.456.789.123

On utilise les entrées de type A pour pointer vers une adresse IP et les entrées de type CNAME pour pointer vers un domaine.

 

Configuration du reverse DNS

Rendez-vous à présent dans l'interface d'administration de votre serveur et rendez-vous dans la zone "IP" (dans le menu du gauche), exemple ci-dessous pour mon VPS OVH.

Il vous reste à indiquer le nom complet server1.geek17.com qui sera renvoyé lors des demandes de reverse DNS.

C'est en fait le fonctionnement inverse du DNS, cette fois-ci on connait l'adresse IP mais on veut savoir à quel serveur elle correspond.
Et c'est donc server1.geek17.com qui sera renvoyé lors des demandes de Reverse DNS sur mon adresse IP 123.456.789.123

Configuration du serveur Debian

Bon, nos DNS sont configurés, passons maintenant à la configuration du serveur.

Commencez par taper les commandes hostname et hostname -f dans le shell de  votre serveur pour voir l'identification actuelle de votre serveur.
Dans l'exemple ci-dessous, c'est la config de mon VPS OVH après installation.

$ hostname
vps123456
$ hostname -f
vps123456.ovh.net

Commençons par changer le hostname, pour cela ouvrez le fichier /etc/hostname

sudo nano /etc/hostname

Dans mon cas, ce fichier contenani vps123456 que j'ai remplacé par server1
Ne mettez pas le nom de domaine dans ce fichier !

Reste le fichier /etc/hosts à mettre à jour, 

sudo nano /etc/hosts

Normalement, il faut simplement remplacer la dernière ligne par 127.0.1.1    server1.geek17.com   geek17

Sauf que OVH a préinstallé le service Cloud Init sur le VPS, et le fichier /etc/hosts ci-dessous sera modifié au reboot du serveur par le service Cloud Init.
Il est donc inutile de le modifier directement, il faut modifier la config du service Cloud Init !

127.0.0.1       localhost

::1     localhost       ip6-localhost   ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters


127.0.1.1       debian.example.com
127.0.1.1       vpsxxxxxx       vpsxxxxxx
127.0.1.1       vpsxxxxxx.ovh.net       vpsxxxxxx

On ferme donc le fichier /etc/hosts (sans modification) et on ouvre le fichier /etc/cloud/cloud.cfg

sudo nano /etc/cloud/cloud.cfg

Au tout début de ce fichier, replacez l'entrée vps123456.ovh.net par server1.geek17.com (enfin votre équivalent à vous smiley).

#hostname: vps123456.ovh.net
hostname: server1.geek17.com

Enregistrez la modification et redémarrer le serveur via la commande

sudo reboot

Après le reboot, la configuration sera active. Pensez à vérifier avec la commande hostname

$ hostname
server1
$ hostname -f
server1.geek17.com

 

You must have Javascript enabled to use this form.