25.7. Paramétrage d'un déploiement avec un DNS intégré et une autorité de certification externe comme autorité de certification racine
Suivez cette procédure pour configurer le fichier d'inventaire afin d'installer un serveur IdM avec une autorité de certification externe en tant qu'autorité de certification racine dans un environnement qui utilise la solution DNS intégrée IdM.
Le fichier d'inventaire de cette procédure utilise le format INI
. Vous pouvez également utiliser les formats YAML
ou JSON
.
Procédure
Ouvrez le fichier d'inventaire pour le modifier. Spécifiez les noms de domaine pleinement qualifiés (
FQDN
) de l'hôte que vous voulez utiliser comme serveur IdM. Assurez-vous que le siteFQDN
répond aux critères suivants :- Seuls les caractères alphanumériques et les tirets (-) sont autorisés. Les caractères de soulignement, par exemple, ne sont pas autorisés et peuvent entraîner des défaillances du système DNS.
- Le nom d'hôte doit être en minuscules.
- Spécifiez les informations relatives au domaine et à la sphère IdM.
Spécifiez que vous voulez utiliser le DNS intégré en ajoutant l'option suivante :
ipaserver_setup_dns=yes
Spécifiez les paramètres de transfert DNS. Choisissez l'une des options suivantes :
-
Utilisez l'option
ipaserver_auto_forwarders=yes
si vous souhaitez que le processus d'installation utilise les redirections du fichier/etc/resolv.conf
. Cette option n'est pas recommandée si le serveur de noms spécifié dans le fichier/etc/resolv.conf
est l'adresse localhost 127.0.0.1 ou si vous êtes sur un réseau privé virtuel et que les serveurs DNS que vous utilisez sont normalement inaccessibles depuis l'internet public. -
Utilisez l'option
ipaserver_forwarders
pour spécifier manuellement vos transitaires. Le processus d'installation ajoute les adresses IP des transitaires au fichier/etc/named.conf
du serveur IdM installé. L'option
ipaserver_no_forwarders=yes
permet de configurer les serveurs DNS racine à utiliser à la place.NoteEn l'absence de transitaires DNS, votre environnement est isolé et les noms des autres domaines DNS de votre infrastructure ne sont pas résolus.
-
Utilisez l'option
Spécifiez les paramètres de l'enregistrement inverse et de la zone DNS. Choisissez parmi les options suivantes :
-
Utilisez l'option
ipaserver_allow_zone_overlap=yes
pour autoriser la création d'une zone (inverse) même si la zone est déjà résoluble. -
Utilisez l'option
ipaserver_reverse_zones
pour spécifier manuellement vos zones inversées. Utilisez l'option
ipaserver_no_reverse=yes
si vous ne souhaitez pas que le processus d'installation crée une zone DNS inversée.NoteL'utilisation d'IdM pour gérer les zones inversées est facultative. Vous pouvez utiliser un service DNS externe à cette fin.
-
Utilisez l'option
-
Spécifiez les mots de passe pour
admin
et pourDirectory Manager
. Utilisez Ansible Vault pour stocker le mot de passe, et faites référence au fichier Vault à partir du fichier playbook. Une autre solution, moins sûre, consiste à spécifier les mots de passe directement dans le fichier d'inventaire. (Facultatif) Spécifiez une zone
firewalld
personnalisée à utiliser par le serveur IdM. Si vous ne définissez pas de zone personnalisée, IdM ajoute ses services à la zone par défautfirewalld
. La zone prédéfinie par défaut estpublic
.ImportantLa zone
firewalld
spécifiée doit exister et être permanente.Exemple de fichier d'inventaire contenant les informations requises sur le serveur (à l'exception des mots de passe)
[ipaserver] server.idm.example.com [ipaserver:vars] ipaserver_domain=idm.example.com ipaserver_realm=IDM.EXAMPLE.COM ipaserver_setup_dns=yes ipaserver_auto_forwarders=yes [...]
Exemple de fichier d'inventaire contenant les informations requises sur le serveur (y compris les mots de passe)
[ipaserver] server.idm.example.com [ipaserver:vars] ipaserver_domain=idm.example.com ipaserver_realm=IDM.EXAMPLE.COM ipaserver_setup_dns=yes ipaserver_auto_forwarders=yes ipaadmin_password=MySecretPassword123 ipadm_password=MySecretPassword234 [...]
Exemple de fichier d'inventaire avec une zone personnalisée
firewalld
[ipaserver] server.idm.example.com [ipaserver:vars] ipaserver_domain=idm.example.com ipaserver_realm=IDM.EXAMPLE.COM ipaserver_setup_dns=yes ipaserver_auto_forwarders=yes ipaadmin_password=MySecretPassword123 ipadm_password=MySecretPassword234 ipaserver_firewalld_zone=custom zone [...]
Créez un playbook pour la première étape de l'installation. Saisissez les instructions pour générer la demande de signature de certificat (CSR) et la copier du contrôleur vers le nœud géré.
--- - name: Playbook to configure IPA server Step 1 hosts: ipaserver become: true vars_files: - playbook_sensitive_data.yml vars: ipaserver_external_ca: yes roles: - role: ipaserver state: present post_tasks: - name: Copy CSR /root/ipa.csr from node to "{{ groups.ipaserver[0] + '-ipa.csr' }}" fetch: src: /root/ipa.csr dest: "{{ groups.ipaserver[0] + '-ipa.csr' }}" flat: yes
Créez un autre playbook pour la dernière étape de l'installation.
--- - name: Playbook to configure IPA server Step -1 hosts: ipaserver become: true vars_files: - playbook_sensitive_data.yml vars: ipaserver_external_cert_files: "/root/chain.crt" pre_tasks: - name: Copy "{{ groups.ipaserver[0] + '-chain.crt' }}" to /root/chain.crt on node copy: src: "{{ groups.ipaserver[0] + '-chain.crt' }}" dest: "/root/chain.crt" force: yes roles: - role: ipaserver state: present
Ressources supplémentaires
-
Pour les paramètres par défaut de la politique de transfert, voir la description de
--forward-policy
dans la page de manuelipa-dns-install(1)
. -
Pour plus d'informations sur les variables DNS utilisées par le rôle
ipaserver
, voir la section Variables DNS dans le fichierREADME-server.md
du répertoire/usr/share/doc/ansible-freeipa
.