RODC : Contrôleur de domaine en lecture seule
Sommaire
I. Présentation
Une nouveauté intéressante est présente depuis Windows Server 2008, il s’agit de la possibilité de définir un contrôleur de domaine en lecture seule, ce que l’on appelle aussi « RODC » pour « Read Only Domain Controller ».
L’intérêt est d’avoir un contrôleur de domaine qui contient toutes les informations qu’un contrôleur classique dispose, à l’exception des mots de passe utilisateurs. De plus, ces informations étant stockées en lecture seule aucune modification ne peut être initiée depuis un contrôleur de domaine en lecture seule.
Cet article a pour objectif d’expliquer les avantages d’un RODC et de montrer comment mettre en place un RODC dans votre domaine.
II. Avantages d'un RODC
A. Sécuriser les sites distants
Dans certaines entreprises, il y a plusieurs sites avec plus ou moins de personnes donc de machines à gérer. Ces personnes, au même titre que les autres personnes de l’entreprise doivent généralement pouvoir accéder aux ressources de l’entreprise, en s’authentifiant grâce à un couple identifiant – mot de passe leur appartenant.
Ces phases d’authentification consomment de la bande passante lors de la connexion sur la machine, de l’accès aux données contrôlées, etc.
Vous pouvez être réticent à l’idée de mettre en place un contrôleur de domaine supplémentaire sur ce site afin d’améliorer les performances, puisque, la sécurité physique ne sera pas forcément assurée si le serveur se trouve dans le coin d’un bureau… De plus, financièrement ce n’est pas toujours évident d’avoir un administrateur système et réseau sur place, à temps plein, pour surveiller et administrer le serveur (et ce n’est pas forcément nécessaire).
C’est là que le contrôleur de domaine RODC a tout son intérêt. Étant donné que l’on peut déterminer avec précision quels sont les mots de passe à stocker sur le serveur RODC, donc, en cas de corruption/de vol du serveur, la perte sera moindre.
Si c’est seulement des comptes utilisateurs standards qui sont dérobés, c’est moins grave qu’un compte Admin du domaine…
B. Cache du DNS
Les requêtes DNS sont également mises en cache, car le serveur RODC peut avoir le rôle de serveur DNS de cache. Là encore, il sera en lecture seule sur les fichiers de zone et ne pourra pas effectuer de modifications, mais il subira les modifications effectuées sur le ou les serveurs DNS depuis le(s)quel(s) il se réplique.
Le cache générera moins de trafic sur la liaison WAN, consommera moins de bande passante, ce qui ne pourra qu’être bénéfique.
C. Améliorer l’authentification des utilisateurs
La mise en cache des requêtes d’authentification permet d’économiser de la bande passante dans le cas où la requête est en cache, et dans le cas où le RODC est autorisé à mettre en cache le mot de passe de l’utilisateur.
Si la requête n’est pas en cache, elle sera effectuée sur un contrôleur de domaine standard qui retournera la réponse. Elle sera ensuite mise en cache automatiquement seulement si cela est permis pour l’utilisateur concerné.
III. Prérequis RODC
Avant de vous lancer dans la mise en place d’un contrôleur de domaine en lecture seule, veillez à respecter les prérequis suivants :
- Niveau fonctionnel de la forêt configuré en Windows Server 2003 ou plus,
- Niveau fonctionnel du domaine configuré en Windows Server 2003 ou plus,
- Préparer les domaines de la forêt avec la commande suivante : adprep /rodcprep
Note : Étant donné que cela touche à l’infrastructure, chaque contrôleur de domaine qui dispose du rôle FSMO « Maître d’infrastructure » devra être accessible au moment où la commande est exécutée.
- Le contrôleur de domaine en lecture seule devra être en mesure de transférer les requêtes d’authentification vers les autres contrôleurs de domaine (standard) qui sont sous Windows Server 2008 au minimum (attention à vos firewalls intersites).
IV. Active Directory : mise en place d'un RODC
Nous allons pouvoir passer à la mise en place d’un RODC, pour ma part le serveur qui doit devenir RODC est sous Windows Server 2012 R2, dans le domaine it-connect.fr en niveau fonctionnel Windows Server 2012 R2.
Sur le futur RODC, ouvrez le gestionnaire de serveur puis cliquez sur « Gérer » et « Ajouter des rôles et fonctionnalités »
Passez la première étape de l’assistant, ensuite concernant le « Type d’installation » laissez le premier choix coché. Cliquez sur « Suivant ».
Sélectionnez le serveur sur lequel l’installation doit être effectuée, pour ma part « RODC01.it-connect.fr ».
Dans la liste, sélectionnez « Services AD DS », confirmez l’ajout des fonctionnalités requises pour ce rôle et poursuivez.
Concernant les fonctionnalités, ne changez rien, cliquez sur « Suivant ».
Confirmez que vous souhaitez installer les sélections en cliquant sur « Installer ».
Patientez un instant, le temps d’obtenir cet état :
Ensuite, retournez au sein du gestionnaire de serveur, cliquez sur l’icône en « forme de triangle jaune où il y a un point d’exclamation » puis « Promouvoir ce serveur en contrôleur de domaine ».
Concernant la configuration de déploiement, sélectionnez « Ajouter un contrôleur de domaine à un domaine existant » (seul choix possible dans le cas de la mise en place d’un RODC). Cliquez sur « Suivant ».
Maintenant, veillez à cocher l’option « Contrôleur de domaine en lecture seule (RODC) » et éventuellement le DNS et le GC si vous souhaitez bénéficier des avantages du RODC pour ces rôles également.
Les options RODC doivent être définies :
- Compte d’administrateur délégué : Il a un rôle d'administrateur local du serveur et peut de ce fait installer des pilotes, gérer les services ou encore redémarrer le serveur. Toutefois, il n'a aucun privilège sur un autre contrôleur de domaine ou un autre RODC. Son champ d'action est uniquement local pour des raisons de sécurité.
Les utilisateurs pour lesquels le mot de passe est répliqué ou non sur le contrôleur de domaine en lecture seule se gère via l’appartenance à deux groupes :
- Groupe de réplication dont le mot de passe RODC est autorisé
- Groupe de réplication dont le mot de passe RODC est refusé
Si par erreur, vous ajoutez un utilisateur dans les deux groupes, sachez que le droit « refusé » sera prioritaire donc le mot de passe de cet utilisateur ne sera pas répliqué.
- Comptes autorisés à répliquer les mots de passe pour RODC : Ajouter des utilisateurs ou groupes pour lesquels vous souhaitez autoriser la réplication. Le mieux, c’est de laisser uniquement le groupe « Groupe de réplication dont le mot de passe RODC est autorisé » et dans l’Active Directory d’ajouter à ce groupe les objets (utilisateurs/groupes) pour lesquels vous souhaitez autoriser la réplication.
- Comptes non autorisés à répliquer les mots de passe pour RODC : Ajouter des utilisateurs ou groupes pour lesquels vous ne souhaitez pas autoriser la réplication. Par défaut, tous les comptes et groupes sensibles (comme Administrateur, admins du domaine, etc…) sont ajoutés, il est fortement déconseillé en terme de sécurité d’autoriser la réplication pour les objets sensibles. Comme pour le cas précédent, le mieux c’est d’ajouter les utilisateurs et les groupes non autorisés au groupe « Groupe de réplication dont le mot de passe RODC est refusé » directement dans l’annuaire Active Directory.
Cliquez sur « Suivant » pour continuer l’installation.
Indiquez un contrôleur de domaine standard depuis lequel répliquer les informations autorisées (ou installer à partir d’un support si vous disposez d’un support prêt – utile pour économiser de la bande passante même lors de la mise en place). Cliquez sur « Suivant ».
Indiquez l’emplacement de la base de données, des fichiers journaux et de SYSVOL (peuvent être placés sur des disques différents). Cliquez sur « Suivant ».
Examiner une dernière fois les options avant de cliquer sur « Suivant » et d’exécuter l’installation.
Après que la configuration soit vérifiée, cliquez sur « Installer » et patientez un instant. Le serveur va redémarrer automatiquement à la fin de l’installation.
L’installation du RODC est désormais terminée. Voyons quelques notions de configuration.
V. Réplication des mots de passe
Sur un contrôleur de domaine standard (lecture/écriture), ouvrez la console « Utilisateurs et ordinateurs Active Directory », positionnez-vous sur l’unité d’organisation « Domain Controllers ». Sur la droite, faites clic droit sur l’objet ordinateur correspondant à votre serveur RODC puis « Propriétés ».
Cliquez ensuite sur l’onglet « Stratégie de réplication de mot de passe » qui concerne donc la stratégie de réplication des mots de passe. La fenêtre affiche les utilisateurs et groupes pour lesquels vous autorisez ou refusez explicitement la réplication des mots de passe.
Pour ajouter un nouvel objet, cliquez sur « Ajouter… » et ensuite indiquez si c’est un ajout pour une autorisation ou un refus (voir ci-dessous). Cliquez sur « OK ». Une nouvelle fenêtre apparaît, recherchez dans l’annuaire le groupe ou utilisateur concerné pour l’ajouter.
Par ailleurs, si vous cliquez sur le bouton « Avancé » de l’onglet « Stratégie de réplication de mot de passe », vous pouvez voir quels utilisateurs ont leur mot de passe stocké sur le RODC sélectionné.
Vous remarquerez la présence d’un utilisateur nommé « krbtgt_15013 » qui est propre à chaque RODC (généré sous la forme krbtgt_xxxxx). Il permet de délivrer les tickets Kerberos aux clients.
Si vous changez dans la liste déroulante et que vous choisissez « Comptes authentifiés sur ce contrôleur de domaine en lecture seule », ainsi, vous pourrez voir les comptes utilisateurs qui se sont déjà authentifiés en passant par ce RODC. Cela vous permet de savoir éventuellement qui se connecte depuis ce site distant et ensuite de gérer la stratégie selon les besoins.
Il est également possible de « Préremplir les mots de passe », ce qui est intéressant si vous préparez le serveur RODC sur le site principal avant de le mettre en production sur le site distant. En fait, les mots de passe seront mis en cache maintenant afin d’éviter de charger la liaison WAN lors de la mise en production et de la première demande d’authentification de l’utilisateur.
Pour ajouter un mot de passe au cache, cliquez sur le bouton « Préremplir les mots de passe », recherchez votre utilisateur dans l’annuaire et validez. Ensuite, cliquez sur « Oui » pour confirmer la mise en cache.
Il est à noter que vous devez autoriser la réplication du mot de passe de cet utilisateur pour pouvoir le mettre en cache, ce qui est logique.
Si le compte en question est bien autorisé et que la mise en cache réussit, vous obtiendrez ce message :
Grâce à ce tutoriel, vous êtes désormais en mesure de comprendre l'intérêt d'un RODC et d'en mettre un en place au sein de votre infrastructure.
Bonjour,
L’essentiel est là, mais j’ajouterais un petit complément sur les « roles locaux » liés à l’usage des RODC (Que je trouve personnellement très intéressant) . En effet, cette fonctionnalité méconnue permet d’octroyer des droits (tel qu’administrateur local par exemple) sur un RODC sans être implicitement administrateur du domaine (ce qui serait le cas pour un DC classique). Pour cela, pas d’interface graphique (à ma connaissance) il faut utiliser l’outil de maintenance Active Directory « NTDSUTIL » ou « DSMGMT » sur le RODC puis entrer la commande « LIST ROLES » pour afficher les groupes de privilèges disponibles. Ensuite, il suffit d’entrer dans le contexte de gestion des rôles via la commande « LOCAL ROLES » puis ajouter le compte d’utilisateur concerné dans le groupe « ADD mydomain\John administrateurs » (ou en anglais selon la liste affichée précédemment)
Ainsi, le compte mydomain\John (Simple utilisateur du domaine) peut dorénavant ouvrir une session sur ce RODC (Par défaut seuls les admins ont ce droit), Cet utilisateur dispose des privilèges pour configurer, installer des applications et tout le toutim, mais n’a aucun privilège sur la réplique de l’Active Directory. (Au pire, s’il casse le RODC, il n’y aura aucune compromission de l’annuaire et vous avez les informations dans ce tutoriel pour le recréer 🙂
J’allais oublier, cette opération est bien évidement réversible (cf REMOVE, ou HELP…) – Entrez « Q » ou « QUIT » pour remonter les contextes et quitter la console.
Bonne continuation
Bonjour cnf1g,
Merci pour ton complément d’infos, en effet le fait d’ajouter ce type d’autorisation est intéressant en terme de sécurité. L’utilisation d’un RODC prend encore plus de sens sur un site déporté avec peu d’utilisateurs.
Intéressant aussi l’attribut searchFlags pour éviter la réplication de certains attributs de l’annuaire qui pourrait contenir des informations sensibles.
Bonne continuation, à bientôt 🙂
Bonjour,
Alors ma question est ce que nous pouvons créer des utilisateurs ou ordinateurs dans le domaine apartir du RODC? (Cas ou le RODC est dans une autre ville où il trouve le DC principal) sinon, c est quoi le scénario à faire? Afin de contrôle et ajouter mes ordinateurs dans l autr ville sans a chaque fois demander à l administration qui se trouve dans la même ville de DC principal ?
Merci
merci infiniment
Bonjour,
Quid de la configuration réseau d’un RODC ?
Le Best Practice Analyser indique que la carté réseau doit inclure l’adresse de bouclage, mais non pas en tant que première entrée.
Or, dans cet article ( https://technet.microsoft.com/fr-fr/library/cc742490(v=ws.10).aspx ) Microsoft demande à configurer l’adresse de bouclage en DNS principal.
Votre avis ?
Merci.
Benjamin
Bonjour,
Est-il possible de créer un serveur wsus secondaire en read only ?
Je possède actuellement un wsus qui met à jour les postes de travail ainsi que les serveurs.
Pour éviter de déployer des mises à jour destinées aux postes de travail sur des serveurs, je souhaiterais :
3 serveur wsus. Dont 1 connecté à internet qui recoit les MAJ de Windows update. Et 2 autres connectés au premier dont 1 qui gérera les MAJ postes de travail et l’autre les MAJ serveur.
Je voudrais que ces deux wsus secondaires récupèrent les MAJ sur le serveur primaire en read only.
Est-ce possible ?
Article très intéressant.
Merci et bonne journée
Bonjour,
Est-ce possible d’utiliser le read only pour un serveur wsus secondaire ?
Je possède actuellement 1 wsus qui gère les mises à jour poste de travail et serveur.
Pour eviter de déployer des KB destinés aux postes de travail sur un serveur, je souhaiterais :
3 wsus dont 1 connecté à internet pour récupérer les MAJ sur Windows Update. Et 2 autres, qui géreront d’une part les MAJ postes de travail et d’autre part les MAJ serveur.
Est-il possible d’utiliser le read only pour cet usage ?
Article très intéressant.
Merci et bonne journée
Merci beaucoup pour ce partage.
Merci beaucoup pour cet bonis intéressant