6.9. S'assurer de l'absence d'un DNS global forwarder dans l'IdM en utilisant Ansible
Cette section décrit comment un administrateur Identity Management (IdM) peut utiliser un playbook Ansible pour garantir l'absence d'un transitaire global DNS dans IdM. Dans l'exemple de procédure ci-dessous, l'administrateur IdM s'assure de l'absence d'un transitaire global DNS avec une adresse Internet Protocol (IP) v4 de 8.8.6.6
et une adresse IP v6 de 2001:4860:4860::8800
sur le port 53
.
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-absence-of-a-global-forwarder.yml
-
Ouvrez le fichier
ensure-absence-of-a-global-forwarder.yml
pour le modifier. Adaptez le fichier en définissant les variables suivantes :
-
Modifiez la variable
name
du playbook enPlaybook to ensure the absence of a global forwarder in IdM DNS
. -
Dans la section
tasks
, changez lename
de la tâche enEnsure the absence of a DNS global forwarder to 8.8.6.6 and 2001:4860:4860::8800 on port 53
. Dans la section
forwarders
de la partieipadnsconfig
:-
Remplacez la première valeur de
ip_address
par l'adresse IPv4 du transitaire global :8.8.6.6
. -
Remplacer la deuxième valeur
ip_address
par l'adresse IPv6 du transitaire global :2001:4860:4860::8800
. -
Vérifiez que la valeur
port
est définie sur53
.
-
Remplacez la première valeur de
-
Fixer la variable
action
àmember
. -
Vérifiez que
state
est défini surabsent
.
Il s'agit du fichier playbook Ansible modifié pour l'exemple actuel :
--- - name: Playbook to ensure the absence of a global forwarder in IdM DNS hosts: ipaserver vars_files: - /home/user_name/MyPlaybooks/secret.yml tasks: - name: Ensure the absence of a DNS global forwarder to 8.8.6.6 and 2001:4860:4860::8800 on port 53 ipadnsconfig: forwarders: - ip_address: 8.8.6.6 - ip_address: 2001:4860:4860::8800 port: 53 action: member state: absent
ImportantSi vous n'utilisez que l'option
state: absent
dans votre séquence sans utiliser égalementaction: member
, la séquence échoue.-
Modifiez la variable
- Enregistrer le fichier.
Exécutez le manuel de jeu :
$ ansible-playbook --vault-password-file=password_file -v -i inventory.file ensure-absence-of-a-global-forwarder.yml
Ressources supplémentaires
-
Le fichier
README-dnsconfig.md
dans le répertoire/usr/share/doc/ansible-freeipa/
-
L'option
action: member
dans les modules ipadnsconfig ansible-freeipa