Mise a jour dynamique d'une zone DNS
Le présent article est actuellement en cours de rédaction ou de modification. Adressez-vous à la personne en charge pour toute proposition ou modification. |
Auteur / Editeur : Adadov |
Dernière édition : 09/02/2023 |
Générer les clés nécessaires aux mises à jours sécurisées
Commencez par générer la clé:
[root@linux] # | tsig-keygen -a hmac-sha512 key.reference.name. > /etc/named/key.reference.name.key | dblclick to copy |
Il n'y a rien de plus à faire pour cette partie là, le plus long fut de retrouver le bon utilitaire depuis le changement ...
Ajout de votre clé dans la configuration de Bind
Une fois votre clé en main (ou plutôt en fichier) il faut l'ajouter dans votre configuration avant de pouvoir l'autoriser.
Pour ça il suffit d'ajouter la directive suivante dans le fichier named.conf
include "/etc/named/key.reference.name.key";
Autoriser la mise à jour dynamique d'une zone (version simple)
Dans la version simple, il suffit d'ajouter une directive pour autoriser la mise à jour dynamique d'une zone, il faut utiliser la directive allow-update.
Elle peut être utilisée dans la configuration globale ou par zone suivant vos besoins.
Il suffit de placer la directive suivante à l'endroit voulu:
allow-update { key key.reference.name.key; };
Utilisation de nsupdate
Depuis une machine Linux on peut tout simplement utiliser nsupdate pour envoyer facilement ses demandes de mise à jour au serveurs DNS
Une précision pour commencer, les mises à jour dynamique ne supportent que les ajouts et suppressions.
Il ne faudra donc pas oublier de supprimer un pointeur lors de la création du nouveau pour remplacer un pointeur.
La syntaxe est pratiquement toujours la même:
update <add|delete> <fqdn>. <ttl> <type> <contenu>
Par exemple, pour ajouter le pointeur A pour srv.example.com qui pointe vers 127.0.0.1:
update add srv.example.com. 3600 A 127.0.0.1
Les instructions peuvent être enchaînées (une par ligne) la dernière devant être "send" afin d'envoyer les instructions au serveur.
Dans certains cas il peut être nécessaire d'ajouter des informations avant, comme le serveur auquel adressé la requête.
Il faudra alors ajouter une ligne comme celle ci au début de notre requête:
server soa.example.com
Mise à jour en une commande
Voilà comment je fais mes mises à jour depuis ma ligne de commande:
[root@linux] # | echo -e "server localhost\nupdate add srv.example.com. 3600 IN A 127.0.0.1\nsend\n" |nsupdate -k key.reference.key | dblclick to copy |