6.11. Assurer la présence d'une zone de transfert DNS dans IdM en utilisant Ansible
Cette section décrit comment un administrateur de gestion des identités (IdM) peut utiliser un playbook Ansible pour assurer la présence d'une zone de transfert DNS dans IdM. Dans l'exemple de procédure ci-dessous, l'administrateur IdM assure la présence d'une zone de transfert DNS pour example.com
vers un serveur DNS avec une adresse IP (Internet Protocol) de 8.8.8.8
.
Conditions préalables
Vous avez configuré votre nœud de contrôle Ansible pour qu'il réponde aux exigences suivantes :
- Vous utilisez la version 2.8 ou ultérieure d'Ansible.
-
Vous avez installé le paquetage
ansible-freeipa
sur le contrôleur Ansible. - L'exemple suppose que dans le répertoire ~/MyPlaybooks/ vous avez créé un fichier d'inventaire Ansible avec le nom de domaine complet (FQDN) du serveur IdM.
-
L'exemple suppose que le coffre-fort secret.yml Ansible stocke votre
ipaadmin_password
.
- Vous connaissez le mot de passe de l'administrateur IdM.
Procédure
Naviguez jusqu'au répertoire
/usr/share/doc/ansible-freeipa/playbooks/dnsconfig
:$ cd /usr/share/doc/ansible-freeipa/playbooks/dnsconfig
Ouvrez votre fichier d'inventaire et assurez-vous que le serveur IdM que vous souhaitez configurer est répertorié dans la section
[ipaserver]
. Par exemple, pour demander à Ansible de configurerserver.idm.example.com
, entrez :[ipaserver] server.idm.example.com
Faites une copie du fichier
forwarders-absent.yml
Ansible playbook. Par exemple :cp forwarders-absent.yml ensure-presence-forwardzone.yml
-
Ouvrez le fichier
ensure-presence-forwardzone.yml
pour le modifier. Adaptez le fichier en définissant les variables suivantes :
-
Modifiez la variable
name
du playbook enPlaybook to ensure the presence of a dnsforwardzone in IdM DNS
. -
Dans la section
tasks
, changez lename
de la tâche enEnsure presence of a dnsforwardzone for example.com to 8.8.8.8
. -
Dans la section
tasks
, remplacez le titreipadnsconfig
paripadnsforwardzone
. Dans la section
ipadnsforwardzone
:-
Ajoutez la variable
ipaadmin_password
et définissez-la comme votre mot de passe d'administrateur IdM. -
Ajoutez la variable
name
et fixez-la àexample.com
. Dans la section
forwarders
:-
Supprimer les lignes
ip_address
etport
. Ajoutez l'adresse IP du serveur DNS qui doit recevoir les requêtes transférées en la spécifiant après un tiret :
- 8.8.8.8
-
Supprimer les lignes
-
Ajoutez la variable
forwardpolicy
et fixez-la àfirst
. -
Ajoutez la variable
skip_overlap_check
et fixez-la àtrue
. -
Remplacez la variable
state
parpresent
.
Il s'agit du fichier playbook Ansible modifié pour l'exemple actuel :
-
Ajoutez la variable
--- - name: Playbook to ensure the presence of a dnsforwardzone in IdM DNS hosts: ipaserver vars_files: - /home/user_name/MyPlaybooks/secret.yml tasks: - name: Ensure the presence of a dnsforwardzone for example.com to 8.8.8.8 ipadnsforwardzone: ipaadmin_password: "{{ ipaadmin_password }}" name: example.com forwarders: - 8.8.8.8 forwardpolicy: first skip_overlap_check: true state: present
-
Modifiez la variable
- Enregistrer le fichier.
Exécutez le manuel de jeu :
$ ansible-playbook --vault-password-file=password_file -v -i inventory.file ensure-presence-forwardzone.yml
Ressources supplémentaires
-
Voir le fichier
README-dnsforwardzone.md
dans le répertoire/usr/share/doc/ansible-freeipa/
.