2026-07-07 03:08:09 -04:00
|
|
|
---
|
|
|
|
|
# Flux réseau du DNS autoritatif interne (PowerDNS). Voir docs/flux-conception.md.
|
2026-08-24 16:59:34 -04:00
|
|
|
# LE PORT DE L'AUTORITATIF EST DÉRIVÉ DEPUIS LE 2026-08-24, et c'est pour ça qu'il est
|
|
|
|
|
# déclaré `derive` plutôt que `53` :
|
|
|
|
|
#
|
|
|
|
|
# seul sur son hôte -> 53 sur l'adresse du tenant
|
|
|
|
|
# partageant l'hôte avec le résolveur -> 5300 sur la loopback, derrière lui
|
|
|
|
|
#
|
|
|
|
|
# Le résolveur devient alors la seule porte, et personne n'interroge l'autoritatif
|
|
|
|
|
# directement. `verifier_ports` traite un port non numérique comme « pas une écoute fixe »
|
|
|
|
|
# — ce qui est exactement le cas : les deux services lient le port 53 mais sur des
|
|
|
|
|
# ADRESSES différentes, ce qu'une comparaison de ports seuls ne peut pas distinguer.
|
2026-07-07 03:08:09 -04:00
|
|
|
flux:
|
|
|
|
|
- sens: ingress
|
2026-08-24 16:59:34 -04:00
|
|
|
port: derive
|
2026-07-07 03:08:09 -04:00
|
|
|
protocole: udp
|
|
|
|
|
pair: flotte
|
|
|
|
|
chiffrement: clair
|
2026-08-24 16:59:34 -04:00
|
|
|
raison: "Zone souveraine. 53 seul sur son hôte, 5300 sur la loopback derrière le résolveur."
|
2026-07-07 03:08:09 -04:00
|
|
|
- sens: ingress
|
2026-08-24 16:59:34 -04:00
|
|
|
port: derive
|
2026-07-07 03:08:09 -04:00
|
|
|
protocole: tcp
|
|
|
|
|
pair: flotte
|
|
|
|
|
chiffrement: clair
|
2026-08-24 16:59:34 -04:00
|
|
|
raison: "Idem en TCP (réponses volumineuses, AXFR restreint par allow_axfr_ips)."
|
dns : client_unbound universel, et un resolveur d'amorcage
Une VM ne peut pas s'installer sans resoudre des noms. PowerDNS repond
UNIQUEMENT pour la zone souveraine et ne recurse pour personne : il manquait un
resolveur recursif. `client_unbound` est l'outil ecrit pour ca — il rejoint
`client_journal` et `client_metrique` parmi les integrations universelles.
`infra-dns-01` est exempte (PowerDNS occupe son port 53), et
`serveur_powerdns_listen_addresses` passe de 0.0.0.0 a l'adresse de l'hote pour
laisser 127.0.0.1:53 libre. Mais l'appartenance au groupe est AUSSI ce qui ouvre
le port 53 a la frontiere : en exemptant la machine, je lui retirais le droit de
resoudre. `serveur_powerdns` declare donc son propre flux sortant — il ne
recurse pour personne, mais doit resoudre pour lui-meme.
Nouvel intrant `dns_amorcage`, derive jusqu'a `make creer-vm`. Cloud-init
l'ecrit bien mais sans effet : `dns-nameservers` exige `resolvconf`, absent du
gabarit, et installer resolvconf demande apt, qui demande la resolution.
`serveur_debian` pose donc le resolveur en pre_tasks, avant le premier apt, avec
une garde qui respecte la bascule ulterieure de client_unbound.
Defaut corrige en chemin : `_intrants_communs()` lisait `instance/` en dur ; le
chemin derive maintenant de l'inventaire recu, et un test le prouve.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-06 21:41:58 -04:00
|
|
|
|
|
|
|
|
# L'autoritatif ne RÉCURSE pour personne — mais il doit résoudre POUR LUI-MÊME : `apt`,
|
2026-08-24 16:59:34 -04:00
|
|
|
# NTP, les certificats. Il est le seul hôte exempté de `client_resolveur` (PowerDNS occupe
|
dns : client_unbound universel, et un resolveur d'amorcage
Une VM ne peut pas s'installer sans resoudre des noms. PowerDNS repond
UNIQUEMENT pour la zone souveraine et ne recurse pour personne : il manquait un
resolveur recursif. `client_unbound` est l'outil ecrit pour ca — il rejoint
`client_journal` et `client_metrique` parmi les integrations universelles.
`infra-dns-01` est exempte (PowerDNS occupe son port 53), et
`serveur_powerdns_listen_addresses` passe de 0.0.0.0 a l'adresse de l'hote pour
laisser 127.0.0.1:53 libre. Mais l'appartenance au groupe est AUSSI ce qui ouvre
le port 53 a la frontiere : en exemptant la machine, je lui retirais le droit de
resoudre. `serveur_powerdns` declare donc son propre flux sortant — il ne
recurse pour personne, mais doit resoudre pour lui-meme.
Nouvel intrant `dns_amorcage`, derive jusqu'a `make creer-vm`. Cloud-init
l'ecrit bien mais sans effet : `dns-nameservers` exige `resolvconf`, absent du
gabarit, et installer resolvconf demande apt, qui demande la resolution.
`serveur_debian` pose donc le resolveur en pre_tasks, avant le premier apt, avec
une garde qui respecte la bascule ulterieure de client_unbound.
Defaut corrige en chemin : `_intrants_communs()` lisait `instance/` en dur ; le
chemin derive maintenant de l'inventaire recu, et un test le prouve.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-06 21:41:58 -04:00
|
|
|
# déjà son port 53), donc rien d'autre ne lui ouvre ce flux. Sans cette déclaration, la
|
|
|
|
|
# frontière jette ses requêtes et la machine ne peut même pas s'installer — mesuré le
|
|
|
|
|
# 2026-08-06, sur la VM qui devait justement servir de DNS au tenant.
|
|
|
|
|
- sens: egress
|
|
|
|
|
port: 53
|
|
|
|
|
protocole: udp
|
|
|
|
|
pair: externe
|
|
|
|
|
chiffrement: clair
|
|
|
|
|
raison: "Résolution sortante du serveur autoritatif POUR SES PROPRES besoins (apt, NTP) — il ne récurse pour aucun autre hôte."
|
|
|
|
|
- sens: egress
|
|
|
|
|
port: 53
|
|
|
|
|
protocole: tcp
|
|
|
|
|
pair: externe
|
|
|
|
|
chiffrement: clair
|
|
|
|
|
raison: "Repli TCP de la résolution sortante du serveur autoritatif (réponses dépassant la taille UDP)."
|
2026-09-16 18:08:20 -04:00
|
|
|
|
|
|
|
|
# LE SERVEUR PUBLIC DU SITE TIRE LES ZONES PUBLIQUES (2026-09-16).
|
|
|
|
|
#
|
|
|
|
|
# Sur l'instance `pdns@public` seulement, qui ne sert que les zones `primaire-cache`.
|
|
|
|
|
# UDP pour le SOA que le secondaire compare avant de tirer, TCP pour le transfert. La
|
|
|
|
|
# regle limite qui peut FRAPPER ; TSIG decide qui peut LIRE.
|
2026-10-01 12:01:46 -04:00
|
|
|
#
|
|
|
|
|
# SEULEMENT LA OU LE SITE A UN SERVEUR PUBLIC A SERVIR (2026-09-30) — la ou l'instance
|
|
|
|
|
# `pdns@public` existe (`zones-publiques.yml` ne se joue que sous la meme condition). Le
|
|
|
|
|
# PowerDNS du SITE n'en a pas : il ecoute sur la boucle locale, et la regle restait posee,
|
|
|
|
|
# coupee — la sonde `connectivite` le montrait chaque minute.
|
2026-09-16 18:08:20 -04:00
|
|
|
- sens: ingress
|
|
|
|
|
port: 5300
|
|
|
|
|
protocole: tcp
|
|
|
|
|
pair: dns_public_site
|
2026-10-01 12:01:46 -04:00
|
|
|
seulement_si: {variable: dns_public_site, non_vide: true}
|
2026-09-16 18:08:20 -04:00
|
|
|
chiffrement: clair
|
|
|
|
|
raison: "AXFR signe TSIG par le serveur DNS public du site, vers l'instance publique uniquement."
|
|
|
|
|
- sens: ingress
|
|
|
|
|
port: 5300
|
|
|
|
|
protocole: udp
|
|
|
|
|
pair: dns_public_site
|
2026-10-01 12:01:46 -04:00
|
|
|
seulement_si: {variable: dns_public_site, non_vide: true}
|
2026-09-16 18:08:20 -04:00
|
|
|
chiffrement: clair
|
|
|
|
|
raison: "Interrogation du SOA par le secondaire du site avant chaque transfert."
|