stuvusIT.pdns-authoritative-api
pdns-authoritative-api
Ce rôle Ansible gère les zones DNS via l'API HTTP de PowerDNS.
Exigences
Debian ou Ubuntu
Variables du rôle
Nom | Par défaut / Requis | Description |
---|---|---|
pdns_auth_api_connect |
:heavy_check_mark: | Se connecter à cette URL (ex. http://127.0.0.1:1234 ) |
pdns_auth_api_server |
localhost |
Instance de serveur à laquelle se connecter |
pdns_auth_api_key |
:heavy_check_mark: | Clé API à utiliser (peut être vide si vous n'en avez pas) |
pdns_auth_api_zones |
:heavy_check_mark: | Dictionnaire des noms de zones DNS (voir ci-dessous) |
pdns_auth_api_remove_unknown_zones |
false |
Supprimer les zones inconnues pour ce rôle |
pdns_auth_api_default_metadata |
Métadonnées par défaut pouvant être remplacées par zone |
Zones DNS
Nom | Par défaut / Requis | Description |
---|---|---|
kind |
Master |
Type de cette zone (Master , Slave ou Native ) |
soaEdit |
(:heavy_check_mark:) | (pas pour les zones Slave) Valeur SOA-EDIT pour cette zone |
soaEditApi |
({{soaEdit}} |
(pas pour les zones Slave) Valeur SOA-EDIT-API |
dnssec |
false |
(pas pour les zones Slave) Activer DNSSEC et NSEC3 pour cette zone |
presigned |
false |
(pas pour les zones Slave) Indique si la zone est pré-signée et n'a pas besoin d'être signée par PowerDNS |
apiRectify |
true |
(pas pour les zones Slave) Indique s'il faut automatiquement rectifier lors de modifications via l'API |
nsec3Param |
(pas pour les zones Slave) Valeur du champ NSEC3PARAM | |
nsec3Narrow |
false |
(pas pour les zones Slave) Indique s'il faut utiliser NSEC3 en mode étroit (mensonges bénins) |
masters |
(:heavy_check_mark:) | Liste des maîtres de cette zone |
records |
pas pour les zones Slave | Liste de tous les enregistrements dans cette zone (voir ci-dessous) |
defaultTTL |
(:heavy_check_mark:) | (pas pour les zones Slave) TTL pour tous les RRsets n'ayant pas de TTL explicitement défini |
metadata |
Dictionnaire avec les métadonnées du domaine. Les éléments présents dans la base de données, mais pas ici, sont supprimés |
Enregistrements
Ce rôle trie automatiquement les enregistrements du même nom et type en RRsets.
Chaque enregistrement peut soit définir un contenu (c
) ou définir un TTL qui s'applique à l'ensemble du RRset (t
).
Les enregistrements sont regroupés par types qui sont eux-mêmes regroupés par noms. Voir l'exemple ci-dessous. Les RRsets inconnus sont supprimés.
Si un enregistrement SOA a AUTO
comme son numéro de série, la valeur actuelle de la zone en cours est utilisée.
Ceci est utile lorsque vous définissez soaEditApi
pour incrémenter automatiquement le numéro de série.
Contenus
Nom | Par défaut / Requis | Description |
---|---|---|
c |
(:heavy_check_mark:) | Contenu de cet enregistrement. Doit être omis lorsque t est défini |
t |
(:heavy_check_mark:) | TTL de ce RRset. Doit être omis lorsque c est défini |
r |
Définit également l'enregistrement PTR dans la zone inverse |
Exemple de Playbook
- hosts: dns
roles:
- pdns-authoritative-api
pdns_auth_api_connect: 'http://127.0.0.1:1234'
pdns_auth_api_key: 'secretsecretkey'
pdns_auth_api_zones:
- name: example.com
dnssec: true
nsec3Salt: abab
defaultNameservers:
- ns1.example.com
- ns2.example.com
metadata:
ALLOW-AXFR-FROM:
- AUTO-NS
- 2001:db8::/48
records:
example.com:
SOA:
- c: ns1.example.com admin.example.com AUTO 3600 1800 604800 600
NS:
- c: ns1.example.com.
- c: ns2.example.com.
- t: 15200
ns1.example.com:
A:
- c: 10.0.0.2
r: True
AAAA:
- c: fe80::1
r: True
Licence
Ce travail est sous licence Creative Commons Attribution-ShareAlike 4.0 International License.
Informations sur l'auteur
À propos du projet
Configure PowerDNS zones via the HTTP API
Installer
ansible-galaxy install stuvusIT.pdns-authoritative-api
Licence
other
Téléchargements
167
Propriétaire
stuvus IT Team - Studierendenvertretung Universität Stuttgart