1.2. Assurer la présence d'un DNS global forwarder dans IdM en utilisant Ansible

Cette section décrit comment un administrateur Identity Management (IdM) peut utiliser un playbook Ansible pour assurer la présence d'un transitaire global DNS dans IdM. Dans l'exemple de procédure ci-dessous, l'administrateur IdM assure la présence d'un transitaire global DNS vers un serveur DNS avec une adresse Internet Protocol (IP) v4 de 7.7.9.9 et une adresse IP v6 de 2001:db8::1:0 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

  1. Naviguez jusqu'au répertoire /usr/share/doc/ansible-freeipa/playbooks/dnsconfig:

    $ cd /usr/share/doc/ansible-freeipa/playbooks/dnsconfig
  2. 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 configurer server.idm.example.com, entrez :

    [ipaserver]
    server.idm.example.com
  3. Faites une copie du fichier forwarders-absent.yml Ansible playbook. Par exemple :

    $ cp forwarders-absent.yml ensure-presence-of-a-global-forwarder.yml
  4. Ouvrez le fichier ensure-presence-of-a-global-forwarder.yml pour le modifier.
  5. Adaptez le fichier en définissant les variables suivantes :

    1. Modifiez la variable name du playbook en Playbook to ensure the presence of a global forwarder in IdM DNS.
    2. Dans la section tasks, changez le name de la tâche en Ensure the presence of a DNS global forwarder to 7.7.9.9 and 2001:db8::1:0 on port 53.
    3. Dans la section forwarders de la partie ipadnsconfig:

      1. Remplacez la première valeur de ip_address par l'adresse IPv4 du transitaire global : 7.7.9.9.
      2. Remplacer la deuxième valeur ip_address par l'adresse IPv6 du transitaire global : 2001:db8::1:0.
      3. Vérifiez que la valeur port est définie sur 53.
    4. Modifier le state en present.

      Il s'agit du fichier playbook Ansible modifié pour l'exemple actuel :

    ---
    - name: Playbook to ensure the presence of a global forwarder in IdM DNS
      hosts: ipaserver
    
      vars_files:
      - /home/user_name/MyPlaybooks/secret.yml
      tasks:
      - name: Ensure the presence of a DNS global forwarder to 7.7.9.9 and 2001:db8::1:0 on port 53
        ipadnsconfig:
          forwarders:
            - ip_address: 7.7.9.9
            - ip_address: 2001:db8::1:0
              port: 53
          state: present
  6. Enregistrer le fichier.
  7. Exécutez le manuel de jeu :

    $ ansible-playbook --vault-password-file=password_file -v -i inventory.file ensure-presence-of-a-global-forwarder.yml

Ressources supplémentaires

  • Voir le fichier README-dnsconfig.md dans le répertoire /usr/share/doc/ansible-freeipa/.