Bonjour,
Avant de créer mes certificats SSL/TLS Let’s Encrypt.
J’essaie de mettre à jour dynamiquement une zone signée en DNSSEC pour vérifier que tout fonctionnerais bien et çà ne fonctionne pas.
Bizarre, j’espère y arriver
Sur/depuis un autre serveur (web), j’utilise nsupdate
puisque j’ai un serveur DNS « perso » (sécurisé).
CF : dnsapi · acmesh-official/acme.sh Wiki via ACME
Avec cette commande en « Extra debug mode » çà me retourne bien « NOERROR » mais rien n’y fait :
La commande nsupdate
est la suivante →
nsupdate -v -y update-dd-zone:44fIf12345zPqrX74Ksw+8CoA== -D /root/nsupdate-file.nsupdate
Le fichier de commandes nsupdate
:
cat /root/nsupdate-file.nsupdate
server ns1.lab3w.fr
zone ipv10.net
update add _acme-challenge.*.ipv10.net 300 IN TXT "ma super clef !!"
send
Déjà il faut envoyer le bon nom du serveur DNS → si j’ai bien compris celui dans le SOA ? Est-e çà ?
Mais sinon en réponse d’une commande dig je ne vois pas la mise à jour dynamique :
13:13:34 root@lv1.w1a:~ # dig TXT _acme-challenge.test.ipv10.net
; <<>> DiG 9.11.5-P4-5.1+deb10u8-Debian <<>> TXT _acme-challenge.test.ipv10.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 59648
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: 78aebd22169728e9ec8dcee463512d77eac4e770a6a8ea1b (good)
;; QUESTION SECTION:
;_acme-challenge.test.ipv10.net. IN TXT
;; AUTHORITY SECTION:
ipv10.net. 60 IN SOA dns.lab3w.fr. hostmaster.lab3w.fr. 2022092310 300 60 420 60
;; Query time: 0 msec
;; SERVER: 2607:5300:60:9389:15:1:a:1000#53(2607:5300:60:9389:15:1:a:1000)
;; WHEN: jeu. oct. 20 13:13:59 CEST 2022
;; MSG SIZE rcvd: 146
Et ci-dessous le output de nsupdate
:
14:45:30 root@lv1.w1a:~ # nsupdate -v -y update-dd-zone:44fIf12345zPqrX74Ksw+8CoA== -D -t 10 /root/nsupdate-file.nsupdate
setup_system()
Creating key...
namefromtext
keycreate
reset_system()
user_interaction()
do_next_command()
do_next_command()
do_next_command()
evaluate_update()
update_addordelete()
do_next_command()
start_update()
send_update()
Sending update to 2607:5300:60:9389:58:0:1:1#53
show_message()
Outgoing update query:
;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id: 60147
;; flags:; ZONE: 1, PREREQ: 0, UPDATE: 1, ADDITIONAL: 1
;; ZONE SECTION:
;ipv10.net. IN SOA
;; UPDATE SECTION:
_acme-challenge.*.ipv10.net. 300 IN TXT "ma super clef !!"
;; TSIG PSEUDOSECTION:
update-dd-zone. 0 ANY TSIG hmac-md5.sig-alg.reg.int. 1666183552 300 16 UouhWXcZy/HsDL+bKCs6Ow== 60147 NOERROR 0
update_completed()
tsig verification successful
show_message()
Reply from update query:
;; ->>HEADER<<- opcode: UPDATE, status: REFUSED, id: 60147
;; flags: qr ra; ZONE: 1, PREREQ: 0, UPDATE: 0, ADDITIONAL: 1
;; ZONE SECTION:
;ipv10.net. IN SOA
;; TSIG PSEUDOSECTION:
update-dd-zone. 0 ANY TSIG hmac-md5.sig-alg.reg.int. 1666183552 300 16 wgDvXBr4wwOsrU0Z3r61cA== 60147 NOERROR 0
done_update()
reset_system()
user_interaction()
cleanup()
detach tsigkey x0x7fb76c18a0b8
Shutting down task manager
shutdown_program()
Shutting down request manager
Destroy DST lib
Destroying request manager
Freeing the dispatchers
Shutting down dispatch manager
Destroying event
Shutting down socket manager
Shutting down timer manager
Destroying hash context
Destroying name state
Removing log context
Destroying memory context
Et sinon s’en l’extra debug → j’ai un retour « REFUSED »
13:18:18 root@lv1.w1a:~ # nsupdate -v -y update-dd-zone:44fIf12345zPqrX74Ksw+8CoA== /root/nsupdate-file.nsupdate
update failed: REFUSED
Donc, j’ai la bonne clef → parce qu’au début, « au premier test » j’avais : « REFUSED(BADKEY) »
J’ai lu ces articles :
- 4. BIND 9 Configuration Reference — BIND 9 documentation
- 5. Advanced DNS Features — BIND 9 documentation
- RFC 3007 : Secure Domain Name System (DNS) Dynamic Update
- Blog Stéphane Bortzmeyer: Combiner DNSSEC avec les mises à jour dynamiques
Ma Vie On S’en Fout : DNS dynamique sécurisé avec nsupdate et BIND9 | Ta vie on s'en fout!
J’ai essayé de freeze la zone et de la recharger - çà ne marche pas non plus.
Salutations,
Romain