Audit Active Directory : Part 1 - les sous-réseaux

Envoyer

Sommaire

 

 

Introduction

Active Directory est constitué de nombreux composants qui doivent pouvoir être évaluer régulièrement sous la forme d’un audit. L’objectif est de pouvoir améliorer le fonctionnement de votre architecture Active Directory et détecter les différents dysfonctionnements.

Dans ce premier article, nous allons traiter le cas des sous-réseaux Active Directory. Le niveau de criticité est très faible mais pour des questions de performances, il est intéressant de les prendre en compte.

 


La notion de sous-réseau dans Active Directory

Généralement dans un réseau d’entreprise  un ou plusieurs sous-réseaux TCP/IP sont associés à un site physique. Naturellement, la topologie de sites Active Directory s’appuie également sur cet état de fait.

Dans Active Directory, un objet de type « Site » est créé pour chaque site géographique. Pour que ces sites puissent être localisés par les postes clients, les sous-réseaux du site sont aussi déclarés sont forme d’objets de type « Subnet » et rattachés au bon objet « Site ».

Le principal intérêt est que si un poste se localise correctement sur son site de référence, alors il aura accès à un service de proximité et donc de meilleure qualité. D’autre part, cela évitera de surcharger les liaisons WAN et donc d’optimiser la bande passante.

Prenons un exemple. Une société s’établit sur Paris et décide d’ouvrir une succursale sur Marseille. Cette succursale va être reliée informatiquement au site de Paris tout en disposant de son propre contrôleur de domaine. Nous avons déclaré le sous-réseau « 192.168.0.0/24 » qui est rattaché au site de Paris et le sous-réseau « 192.168.1.0/24 » pour le site de Marseille. Du coup, si nous nous retrouvons avec un poste sur Marseille qui n’est dans aucun sous-réseau déclaré, alors il va s’authentifier de manière totalement aléatoire sur le site de Paris ou sur le site de Marseille.

 

En conclusion, la première chose à faire dans la gestion des sous-réseaux Active Directory est de s’assurer qu’ils sont tous bien déclarés et associer au bon site Active Directory.

 

 

Détecter les sous-réseaux manquants

Lorsque qu’un client contacte un contrôleur de domaine alors que son adresse IP ne fait pas parti d’un sous-réseau déclaré, une information est enregistrée dans le fichier de log « %SYSTEMROOT%\Debug\netlogon.log ».

L’information est enregistré avec un tag « NO_CLIENT_SITE ». Le tag est assorti du nom du poste et de son adresse IP. Il est donc conseillé de vérifier régulièrement le contenu du fichier journal sur chaque contrôleur de domaine. Par contre, Si vous avez une structure physique étendue avec beaucoup de contrôleurs de domaine, vous pouvez rapidement vous trouver submergé.

De ce fait, j’ai créé un script qui va vous permettre de collecter l’ensemble des tags « NO_CLIENT_SITE » de tous vos contrôleurs de domaine (d’un domaine spécifique, d’une forêt ou d’une liste de contrôleurs de domaine). Le cas échéant le script génèrera  la liste des sous-réseaux manquants. Il ne vous restera plus qu’à identifier sur quel site les ajouter.

Le script est disponible depuis le lien suivant : Collect Active Directory missing subnets (http://gallery.technet.microsoft.com/scriptcenter/Collect-Active-Directory-fa4dff2e)


 

 

 


Notez que pour pouvoir l’exécuter, vous devrez respecter certains prérequis :

  • Système d’exploitation client : Windows 7 Service Pack 1, Windows 8, Windows Server 2008 R2 SP1, Windows Server 2008 Service Pack 2, Windows Server 2012 avec PowerShell V3 (en installant le Windows Management Framework 3.0 si nécessaire).
  • Système d’exploitation des contrôleurs de domaine : Windows Server 2003, Windows Server 2008 et Windows Server 2012.
  • Droits : « administrateur du domaine » pour analyser les contrôleurs de domaine d’un domaine, « administrateur de l’entreprise » pour analyser les contrôleurs de domaine de toute la forêt.

 

 

Détecter les sous-réseaux se chevauchant

Vous pouvez également rencontrer des problèmes de chevauchement lors de la déclaration de vos sous réseaux. Comme son nom l’indique, un chevauchement est tout simplement le fait d’avoir deux sous-réseaux ou plus qui couvrent partiellement la même plage d’adresses IP (à ne pas confondre avec les sous-réseaux de type « catch-all » qui sont assimilables à des super-étendues de sous-réseau (pour plus d'information sur la notion de sous-réseau « catch-all » vous pouvez consulter l'article http://technet.microsoft.com/fr-fr/magazine/2009.06.subnets.aspx).

Pour cela, j’ai créé un second script qui va récupérer l’ensemble des sous-réseaux déclarés dans l’annuaire et vérifier qu’ils ne se chevauchent pas. Il ne vous restera plus qu’à déterminer s’il est nécessaire de modifier les sous-réseaux concernés

Le script est disponible depuis le lien suivant: Auditing Active Directory Subnets (http://gallery.technet.microsoft.com/scriptcenter/Auditing-Active-Directory-c47935c0)

Le script vous permettra également de détecter la possibilité de créer des « super » sous-réseaux pour chaque site afin de vous faciliter la vie. Il vous indiquera également si des sous-réseaux sont orphelins (non-rattachés à un site).

 

 


 

En terme de prérequis, le script n’a pas d’exigence particulière hormis si vous désirez prendre en charge les sous-réseaux de type « IPv6 ». Il vous faudra un .Net Framework 4 et indiquer à PowerShell de l’utiliser  (le script vous indiquera la marche à suivre).

Remarque : le script est capable d’évaluer la possibilité de créer une super-étendue sur un site Active Directory afin de réduire le nombre d’objets « subnet » déclarés.

How to Find Active Directory Schema Update History by Using PowerShell

Mise à jour le Lundi, 17 Juin 2013 21:07