Annuaire et Active Directory
Ce que ce chapitre apporte
- Expliquer ce qu'apporte un annuaire et ce qui se dégrade sans lui.
- Situer domaine, arbre et forêt, et savoir ce que chaque frontière délimite.
- Décrire le rôle d'un contrôleur de domaine et sa dépendance au service de noms.
- Lire et écrire un nom distinctif (DN) d'objet Active Directory.
- Distinguer les cinq rôles FSMO et savoir lesquels sont uniques dans la forêt.
- Expliquer ce que fixe un niveau fonctionnel et pourquoi on ne l'élève pas à la légère.
- Décrire le principe de la réplication entre contrôleurs.
Pourquoi un annuaire
Un annuaire est une base centralisée contenant les informations relatives aux utilisateurs, aux ordinateurs, aux groupes et aux ressources d'une organisation, ainsi que leurs droits d'accès.
Sans annuaire, chaque serveur tient sa propre liste de comptes. Les conséquences sont mécaniques, et ce sont exactement celles observées chez NeoLink :
| Sans annuaire | Avec annuaire |
|---|---|
| Un compte par machine, à créer autant de fois | Un compte unique, reconnu partout |
| Mot de passe différent selon le serveur | Une seule identité, une seule politique |
| Départ d'un salarié : chercher tous ses comptes | Une désactivation, effet immédiat |
| Droits attribués individuellement | Droits par groupes, donc lisibles |
| Aucun historique des accès | Audit centralisé |
Domaine, arbre, forêt
Trois niveaux, trois frontières, et on les confond souvent.
Un domaine est l'unité d'administration et de sécurité : une base d'annuaire, une politique de mots de passe, un ensemble de contrôleurs qui se répliquent entre eux. Il porte un nom au format DNS, par exemple neolink.local.
Un arbre est un ensemble de domaines partageant un espace de noms contigu : neolink.local, lyon.neolink.local, paris.neolink.local.
Une forêt est la frontière de sécurité la plus large : un ou plusieurs arbres partageant un même schéma et un même catalogue global.
Pour NeoLink, une entreprise unique avec plusieurs sites, un domaine unique suffit. Multiplier les domaines multiplie la complexité de réplication sans rien apporter tant que la politique de sécurité est commune.
Le contrôleur de domaine
Un contrôleur de domaine est un serveur qui héberge une copie de la base d'annuaire et qui authentifie les utilisateurs et les machines du domaine.
Trois choses en découlent, et la troisième est celle qu'on oublie :
- Il faut au moins deux contrôleurs. Un contrôleur unique est un point de défaillance qui bloque toute ouverture de session.
- Ils se répliquent entre eux : une modification faite sur l'un se propage aux autres.
- Ils dépendent du service de noms. Sans résolution DNS, un poste ne trouve pas son contrôleur, et l'ouverture de session échoue alors que tout est allumé.
Conséquence pratique : les postes du domaine doivent pointer vers le DNS interne, jamais directement vers un DNS public. C'est la cause la plus fréquente des ouvertures de session qui échouent sans message clair.
Les objets et leur nom
L'annuaire contient des objets : utilisateurs, ordinateurs, groupes, imprimantes, unités d'organisation. Chaque objet a un nom distinctif (DN) qui décrit son emplacement complet dans l'arborescence, de la feuille vers la racine.
CN=Marie Dupont,OU=Comptabilite,OU=Utilisateurs,DC=neolink,DC=local
Cela se lit de droite à gauche :
| Fragment | Signification |
|---|---|
DC=neolink,DC=local | le domaine neolink.local |
OU=Utilisateurs | une unité d'organisation |
OU=Comptabilite | une unité d'organisation imbriquée |
CN=Marie Dupont | l'objet lui-même |
Le protocole d'interrogation de l'annuaire s'appelle LDAP. C'est lui que parlent les applications qui veulent authentifier un utilisateur ou chercher un objet, et c'est aussi lui qu'emploient les scripts d'administration.
Les rôles FSMO
La base d'annuaire se réplique entre tous les contrôleurs : chacun peut répondre, chacun peut écrire. Sauf pour cinq opérations qui ne supportent pas d'être faites à deux endroits en même temps. Ces cinq opérations sont confiées à des rôles uniques, appelés FSMO.
Uniques dans toute la forêt :
- Maître de schéma : seul habilité à modifier le schéma, c'est-à-dire la définition des types d'objets et de leurs attributs.
- Maître d'attribution de noms de domaine : seul habilité à ajouter ou retirer un domaine dans la forêt.
Uniques dans chaque domaine :
- Maître RID : distribue aux autres contrôleurs les plages d'identifiants qui rendent chaque objet unique.
- Émulateur PDC : référence de temps du domaine, traitement prioritaire des changements de mot de passe et des verrouillages de compte.
- Maître d'infrastructure : maintient à jour les références vers des objets d'autres domaines.
Dans une forêt à domaine unique, comme chez NeoLink, les cinq rôles sont sur le même serveur. Sur cinq rôles, deux sont uniques dans la forêt et trois par domaine : c'est cette répartition qu'il faut savoir dire.
Les niveaux fonctionnels
Le niveau fonctionnel fixe l'ensemble des fonctionnalités disponibles dans un domaine ou une forêt, en fonction de la version la plus ancienne de Windows Server acceptée sur les contrôleurs.
Deux règles gouvernent la manœuvre :
- On ne peut pas élever le niveau au-delà de la version du contrôleur le plus ancien.
- L'élévation est irréversible en pratique, sauf cas particuliers récents. Elle exclut définitivement les versions antérieures.
La réplication
Chaque modification est propagée aux autres contrôleurs. Le mécanisme est multi-maître : il n'y a pas un serveur qui écrit et les autres qui lisent, mais des serveurs qui écrivent et se réconcilient.
Trois notions suffisent à en comprendre le comportement :
- La convergence n'est pas instantanée. Il existe une fenêtre pendant laquelle deux contrôleurs peuvent donner des réponses différentes.
- En cas de conflit, la règle est celle du dernier écrivain, arbitrée par un horodatage. D'où l'importance de la synchronisation de temps.
- Les modifications urgentes, comme un verrouillage de compte ou un changement de mot de passe, sont propagées en priorité vers l'émulateur PDC.
Ce n'est pas une panne, c'est le fonctionnement normal. Le diagnostic consiste à vérifier l'état de la réplication, pas à recréer le compte, ce qui produirait deux objets.
Exercices type
Combien de contrôleurs de domaine pour NeoLink, réparti sur deux sites ?
Au moins deux, et au moins un par site si la liaison entre sites n'est pas garantie.
Un seul contrôleur signifie qu'une panne bloque toute ouverture de session, tout accès aux partages, toute application authentifiée. C'est le point de défaillance unique repéré au chapitre précédent.
Un contrôleur par site permet aux utilisateurs de continuer à travailler si la liaison inter-sites tombe. Le coût est une réplication à maîtriser, et une bande passante à prévoir.
Réserve à écrire : deux contrôleurs sur le même hyperviseur ne font pas une redondance. Le point de défaillance a simplement changé de nom.
Un utilisateur change son mot de passe à Lyon et n'arrive pas à ouvrir sa session à Paris. Pourquoi ?
Fenêtre de réplication. Le contrôleur parisien n'a pas encore reçu la modification.
C'est précisément le cas que traite l'émulateur PDC : les changements de mot de passe lui sont transmis en priorité, et un contrôleur qui refuse une authentification le consulte avant de renvoyer un échec. Le problème se résorbe donc en général tout seul, en quelques secondes.
S'il persiste, la piste n'est plus le mot de passe mais la réplication elle-même : liaison inter-sites coupée, ou décalage d'horloge qui fait rejeter les tickets.
Quels rôles FSMO sont uniques dans la forêt ?
Deux : le maître de schéma et le maître d'attribution de noms de domaine.
La logique est constante : ces deux rôles portent sur la structure de la forêt elle-même, c'est-à-dire sur ce qui est commun à tous les domaines. Le schéma définit quels types d'objets existent, et la liste des domaines définit la forêt.
Les trois autres, RID, PDC et infrastructure, portent sur le fonctionnement interne d'un domaine, et existent donc en un exemplaire par domaine.
Peut-on élever le niveau fonctionnel avec un contrôleur Windows Server 2012 restant ?
Non, pas au-delà de ce que ce contrôleur supporte. Le niveau est plafonné par la version la plus ancienne présente.
La marche à suivre est dans l'ordre : retirer ou mettre à niveau le contrôleur ancien, vérifier que la réplication est saine, sauvegarder l'état du système, puis élever.
Et il faut inventorier les dépendances applicatives avant : certains logiciels tiers s'appuient sur des comportements propres à un niveau donné. L'élévation étant irréversible en pratique, la vérification passe avant l'action.
Pourquoi les postes du domaine ne doivent-ils pas utiliser un DNS public ?
Parce qu'Active Directory publie l'emplacement de ses services dans le DNS, sous forme d'enregistrements spécifiques. Un DNS public ne connaît évidemment pas neolink.local et ne peut donc pas dire où trouver un contrôleur.
Symptôme typique : le poste a une adresse IP, il accède à Internet, et pourtant l'ouverture de session échoue ou prend des minutes. Tout va bien sauf ce qui compte.
La configuration correcte est : les postes pointent vers le DNS interne, et c'est ce DNS interne qui redirige vers l'extérieur ce qu'il ne connaît pas.
Quelle différence entre un compte utilisateur et un compte administrateur ?
Le privilège, et ce que cela implique en exposition.
Un compte administrateur peut modifier la configuration du système, installer des logiciels, changer des droits. Un compte utilisateur ne le peut pas.
La règle d'usage qui compte : un administrateur dispose de deux comptes, un compte ordinaire pour son travail quotidien, messagerie et navigation comprises, et un compte à privilèges réservé aux tâches d'administration.
La raison est mécanique : si un logiciel malveillant s'exécute pendant une session, il hérite des privilèges de cette session. Lire ses courriels avec un compte administrateur du domaine revient à donner le domaine à la première pièce jointe piégée.
La méthode
- Pose le besoin avant l'outil. Un annuaire répond à un problème de centralisation et de vérifiabilité, pas à une envie de moderniser.
- Un domaine par politique de sécurité, pas un domaine par site ni par service.
- Deux contrôleurs minimum, et pas sur le même hyperviseur.
- Vérifie le DNS en premier devant tout problème d'authentification. C'est la cause la plus fréquente.
- Sais dire où sont les rôles FSMO avant d'arrêter un serveur, quel qu'il soit.
- Considère l'élévation de niveau fonctionnel comme irréversible, et sauvegarde avant.
- Devant une incohérence entre deux sites, pense réplication avant de recréer quoi que ce soit.
En résumé
- Un annuaire centralise utilisateurs, ordinateurs, groupes, ressources et droits. Son apport décisif est la vérifiabilité.
- Domaine : unité d'administration et de politique. Arbre : espace de noms contigu. Forêt : frontière de sécurité.
- Un contrôleur de domaine authentifie et réplique. Il en faut au moins deux, et ils dépendent du DNS.
- Le nom distinctif se lit de droite à gauche :
CN=…,OU=…,DC=…. Le protocole d'interrogation est LDAP. - FSMO : deux rôles uniques dans la forêt (schéma, noms de domaine), trois par domaine (RID, PDC, infrastructure).
- L'émulateur PDC est la référence de temps. Une dérive d'horloge casse l'authentification.
- Le niveau fonctionnel est plafonné par le contrôleur le plus ancien, et son élévation est une décision d'architecture.
- La réplication est multi-maître : la convergence prend du temps, et les conflits s'arbitrent à l'horodatage.
Et ensuite ? L'annuaire existe, mais un annuaire plat ne vaut guère mieux qu'une liste de comptes. Le chapitre suivant l'organise, avec les unités d'organisation, les groupes et les stratégies de groupe.