Chapitre 5. Utiliser Ansible pour gérer les emplacements DNS dans IdM

En tant qu'administrateur Identity Management (IdM), vous pouvez gérer les emplacements DNS IdM à l'aide du module location disponible dans le package ansible-freeipa. Ce chapitre décrit les sujets et procédures suivants :

5.1. Découverte de services basée sur le DNS

La découverte de services basée sur le DNS est un processus dans lequel un client utilise le protocole DNS pour localiser les serveurs d'un réseau qui offrent un service spécifique, tel que LDAP ou Kerberos. Un type d'opération typique consiste à permettre aux clients de localiser les serveurs d'authentification dans l'infrastructure réseau la plus proche, parce qu'ils offrent un débit plus élevé et une latence de réseau plus faible, ce qui réduit les coûts globaux.

Les principaux avantages de la découverte de services sont les suivants

  • Il n'est pas nécessaire de configurer explicitement les clients avec les noms des serveurs proches.
  • Les serveurs DNS sont utilisés comme fournisseurs centraux de politiques. Les clients qui utilisent le même serveur DNS ont accès à la même politique concernant les fournisseurs de services et leur ordre préférentiel.

Dans un domaine de gestion d'identité (IdM), il existe des enregistrements de service DNS (enregistrements SRV) pour LDAP, Kerberos et d'autres services. Par exemple, la commande suivante interroge le serveur DNS sur les hôtes fournissant un service Kerberos basé sur TCP dans un domaine DNS IdM :

Exemple 5.1. Résultats indépendants de l'emplacement du DNS

$ dig -t SRV +short _kerberos._tcp.idm.example.com
0 100 88 idmserver-01.idm.example.com.
0 100 88 idmserver-02.idm.example.com.

La sortie contient les informations suivantes :

  • 0 (priorité) : Priorité de l'hôte cible. Une valeur inférieure est préférable.
  • 100 (poids). Spécifie un poids relatif pour les entrées ayant la même priorité. Pour plus d'informations, voir RFC 2782, section 3.
  • 88 (numéro de port) : Numéro de port du service.
  • Nom canonique de l'hôte fournissant le service.

Dans l'exemple, les deux noms d'hôte renvoyés ont la même priorité et le même poids. Dans ce cas, le client utilise une entrée aléatoire de la liste des résultats.

Lorsque le client est configuré pour interroger un serveur DNS configuré dans un emplacement DNS, le résultat est différent. Pour les serveurs IdM qui sont affectés à un emplacement, des valeurs adaptées sont renvoyées. Dans l'exemple ci-dessous, le client est configuré pour interroger un serveur DNS dans l'emplacement germany:

Exemple 5.2. Résultats basés sur la localisation DNS

$ dig -t SRV +short _kerberos._tcp.idm.example.com
_kerberos._tcp.germany._locations.idm.example.com.
0 100 88 idmserver-01.idm.example.com.
50 100 88 idmserver-02.idm.example.com.

Le serveur DNS IdM renvoie automatiquement un alias DNS (CNAME) pointant vers un enregistrement SRV spécifique à l'emplacement DNS qui privilégie les serveurs locaux. Cet enregistrement CNAME est indiqué sur la première ligne de la sortie. Dans l'exemple, l'hôte idmserver-01.idm.example.com a la valeur de priorité la plus basse et est donc préféré. L'hôte idmserver-02.idm.example.com a une priorité plus élevée et n'est donc utilisé qu'en cas de sauvegarde, lorsque l'hôte préféré n'est pas disponible.