ANY UDP tronque, AXFR/NOTIFY/UPDATE refuses depuis dehors, debit par /24 (rafale 300 -> 70 reponses, 230 tronquees). PowerDNS garde le 53 pour les primaires ; le frontal ecoute 1053, ou la frontiere redirigera. Sonde par le frontal. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
50 lines
2.5 KiB
YAML
50 lines
2.5 KiB
YAML
---
|
|
# LE SERVEUR DNS PUBLIC DU SITE — secondaire de toutes les zones publiques de ses locataires.
|
|
#
|
|
# Le locataire ECRIT sa zone (primaire cache, `autorite: primaire-cache`) ; le site la SERT.
|
|
# Ce role ne porte donc aucune donnee a lui : il recoit des repliques, signees TSIG.
|
|
|
|
serveur_dns_public_paquets:
|
|
- pdns-server
|
|
- pdns-backend-bind
|
|
- dnsutils
|
|
- dnsdist
|
|
|
|
# LES RELATIONS AVEC LES LOCATAIRES — derivees, jamais ecrites.
|
|
#
|
|
# `scripts/site_inventaire.py` les calcule : il connait le plan du site ET le registre des
|
|
# locataires. Ce role tourne sur une machine qui n'a aucune raison de lire la carte de
|
|
# l'hebergeur. La derivation appartient a qui detient les deux sources.
|
|
#
|
|
# - ecosysteme: OPS-Chezlepro
|
|
# cle_tsig: tsig-chezlepro # le NOM de la cle, identique des deux cotes
|
|
# secret_var: vault_tsig_dns_public_chezlepro # la variable de voute qui porte le secret
|
|
# primaire: 10.17.19.11 # l'adresse DERIVEE de son autoritatif
|
|
# port: 5300
|
|
# zones: [chezlepro.ca]
|
|
serveur_dns_public_relations: []
|
|
|
|
serveur_dns_public_ecoute: "{{ ansible_host | default('0.0.0.0') }}"
|
|
serveur_dns_public_port: 53
|
|
|
|
# LE FRONTAL PUBLIC (dnsdist). L'Internet frappe ce port — la frontiere y redirige son 53 ;
|
|
# le 53 de la machine reste a PowerDNS, pour les notifications des primaires et le site.
|
|
serveur_dns_public_frontal_port: 1053
|
|
# Le debit par bloc d'adresses : au-dela, UDP tronque (le client repasse en TCP), TCP abandonne.
|
|
# Eprouve : une rafale de 300 requetes depuis une adresse -> 74 reponses, 226 tronquees.
|
|
serveur_dns_public_debit_udp: 20
|
|
serveur_dns_public_debit_tcp: 40
|
|
serveur_dns_public_debit_masque_v4: 24
|
|
serveur_dns_public_debit_masque_v6: 48
|
|
serveur_dns_public_zones_dir: /var/lib/powerdns/zones-secondaires
|
|
serveur_dns_public_bind_config: /etc/powerdns/setops-dns-public-zones.conf
|
|
# LA BASE QUI PORTE LES CLES TSIG. Le backend `bind` seul ne sait stocker aucune metadonnee :
|
|
# sans elle, `AXFR-MASTER-TSIG` n'a nulle part ou vivre, et le transfert partirait NON
|
|
# SIGNE. Eprouve le 2026-09-16 sur PowerDNS 4.9.17 : `create-bind-db` est bien pris en
|
|
# charge par le paquet Debian, meme si `ldd` du module ne montre pas SQLite.
|
|
serveur_dns_public_dnssec_db: /var/lib/powerdns/setops-public/dnssec.db
|
|
|
|
# SONDE : le nombre de zones que ce serveur doit servir. Mise en defaut par parametre (un
|
|
# seuil impossible), comme le veut le contrat des sondes.
|
|
serveur_dns_public_sonde_attendu: >-
|
|
{{ serveur_dns_public_relations | map(attribute='zones') | flatten | length }}
|