Vous êtes sur la page 1sur 683

Stratégies de groupe

et GPO

04/2016
M. Villers – F. Lenartowski 1
Quelques constats dans un environnement Windows

✔ Environnement Windows de plus en plus complexe malgré


des interfaces graphiques de plus en plus conviviales.
✔ Multiplication des réglages = moins bonne maîtrise.

✔ Comment organiser l'attribution des logiciels et des


ressources face à des utilisateurs itinérants ?

✔ Comment « brider » les profils et leurs itinérances ?


✔ Les ACLs, les groupes, les relations d'approbations ne
servent qu'à organiser la protection des ressources.

Nécessité de disposer d'un outil


04/2016
pour gérer ces différents problèmes
M. Villers – F. Lenartowski 2
Stratégie ? GPO ?

✔ Stratégies = Règles de fonctionnement


✔ GPO = Group Policy Object
Conteneur (objet) utilisé pour regrouper un ensemble de
réglages (policy) relatifs au
● réseau,

● aux utilisateurs,

● ordinateurs..

✔ Nouvelles fonctionnalités d'administration introduites


avec Win 2000 Pro et Win 2000 Server (AD).
La maîtrise d'un parc informatique sous Windows et
une mise à disposition efficace des ressources aux
utilisateurs ne seront désormais possibles que par
l'établissement de stratégies appropriées via les GPO.

04/2016
M. Villers – F. Lenartowski 3
GPO: Quelques exemples exhaustifs

✔ Publier et déployer des logiciels vers des utilisateurs et ordinateurs,


✔ Attribuer des scripts de démarrage et d'arrêt aux ordinateurs,
✔ Attribuer des scripts d'ouverture et de fermeture de sessions aux utilisateurs,
✔ Imposer des contraintes sur les mots de passe et de verrouillage de comptes,
✔ Définir et imposer des réglages pour Internet Explorer,
✔ Définir et imposer des restrictions pour les bureaux des utilisateurs,
✔ Rediriger certains dossiers particuliers dans les profils des utilisateurs afin
qu'ils soient rangés dans un emplacement central,
✔ Standardiser les paramètres de sécurité dans les ordinateurs distants,
Toutes ces règles seront imposées aux ordinateurs et aux utilisateurs via
des paramètres définis dans la base de registre.

L'édition de la base registre via regedit s'avère peu pratique (manque de


documentation, exploration confuse, ...)

Nécessité de disposer d'un outil d'édition plus convivial et évolutif qui sera
finalement appelé éditeur de stratégies.
04/2016
M. Villers – F. Lenartowski 4
Type de GPO

Stratégie de groupe locale


 Stratégie de groupe définie dans un ordinateur isolé
Solution basique avec imposition d'un groupe unique
de règles identiques pour tous les utilisateurs locaux (SAM)
de l'ordinateur.
 Outil d'édition: console gpedit.msc (Group Policy Editor)
Exploitable dans un poste de travail doté d'un
OS client autre qu'une édition « home »
Stratégies de groupe « distribuées »
 Stratégies de groupe centralisées sur les DC pour être distribuées
aux ordinateurs via le réseau
Solution plus souple permettant d'organiser des
distributions de règles différentes en fonction
 des utilisateurs du domaine,

 des postes de travail utilisés.

 Outil d'édition: console gpmc.msc (Group Policy Management)


04/2016
M. Villers – F. Lenartowski 5
Les GPO locales
sur les
postes de travail
isolés
04/2016
M. Villers – F. Lenartowski 6
GPO locale: Régles pour les ordinateurs et utilisateurs

Dans une GPO locale, on pourra distinguer


2 catégories de règles:
 Des règles imposées à l' ordinateur
 Des règles imposées à tous les utilisateurs
Impossibilité d'attribuer des règles différentes en fonction des
utilisateurs.
Ne répond pas au besoin d'une entreprise.

04/2016
M. Villers – F. Lenartowski 7
GPO locale: Utilisation de la console gpedit

✔ Disponible sur les versions « Pro » depuis Win 2000


✔ Exploitable uniquement avec un compte administrateur

04/2016
M. Villers – F. Lenartowski 8
GPO locale: Stratégie sur les mots de passe

Ces paramètres fixent les règles à


appliquer pour les mots de passe

04/2016
M. Villers – F. Lenartowski 9
GPO locale :Imposition des scripts de démarrage et
d'arrêt d'un ordinateur

Onglet permettant d'imposer ou de


supprimer des scripts à exécuter lors
du démarrage de l'ordinateur.

04/2016
M. Villers – F. Lenartowski 10
GPO locale: Imposition de scripts d'entrée et
de fermeture de session

04/2016
M. Villers – F. Lenartowski 11
GPO locale : Dossier réservé

Le dossier caché
C:\Windows\system32\GroupPolicy
est destiné à contenir les fichiers associés à
la mise en oeuvre de la GPO locale.

Répertoire pour stocker les


scripts dont l'exécution est
planifiée dans la GPO locale lors
du démarrage et de l'arrêt de
l'ordinateur

Répertoire pour stocker les


scripts dont l'exécution est
planifiée dans la GPO locale lors
d'une ouverture et d'une
fermeture de session.
04/2016
M. Villers – F. Lenartowski 12
GPO locale: Réglages d'Internet Explorer

Une multitude de réglages pour Internet


Explorer peuvent être imposés.

04/2016
M. Villers – F. Lenartowski 13
GPO locale: Stratégie sur le menu démarrer et la barre de tâches

Ces options peuvent être activées pour


restreindre les options du bureau.
04/2016
M. Villers – F. Lenartowski 14
GPO locale: Stratégie sur les connexions

Ces options peuvent être activées pour


restreindre ou étendre des fonctionnalités
04/2016
relatives au connexion réseau.
M. Villers – F. Lenartowski 15
GPO locale: Conclusions

✔ Définies localement dans la base de registre et éditée


manuellement avec « gpedit.msc » .
✔ Solution peu pratique pour un parc de postes de travail:

Obligation pour l'administrateur de passer sur chaque poste


de travail pour éditer les stratégies locales avec gpedit.msc
Déploiement fastidieux.
GPO unique : Obligation d'imposer les mêmes règles à tous
les utilisateurs.
Paramétrisation non modulable.
Conclusions:
Besoin d'un outil pour centraliser et déployer via le réseau
des stratégies de groupe
 au départ d'un serveur

● vers des postes de travail

04/2016
M. Villers – F. Lenartowski 16
Les GPO
distribuées
dans un domaine

04/2016
M. Villers – F. Lenartowski 17
Centralisation des stratégies dans l'Active Directory.

L'annuaire Active Directory et les DC permettent déjà de


cataloguer
 des ordinateurs,
 des utilisateurs,
 des groupes d'utilisateurs,
 des enregistrements DNS.
L'annuaire LDAP et les partages réseaux dans les DC
peuvent être utilisés pour
 centraliser des règles à distribuer

 aux postes de travail

 aux utilisateurs

L'AD peut servir d'infrastructure pour distribuer


des stratégies de groupe via le réseau.

04/2016
M. Villers – F. Lenartowski 18
Stockage des GPO sur les contrôleurs de domaines

✔ Chaque GPO sera stockée en 2 parties:


 Un conteneur de paramètres stocké dans l'AD
 Une structure de dossiers et de fichiers associés
à la GPO.
Les fichiers associés à une GPO seront des scripts,
des fichiers avec des images, etc...

✔ Chaque GPO sera identifiée par une numéro unique GUID

GUID = Global Unique Identifier

Format du GUID = {chiffres hexa et tirets}

✔ L'outil « gestion de stratégies de groupe » permettra de


créer, d'éditer et de contrôler le déploiement des GPO.
04/2016
M. Villers – F. Lenartowski 19
Outil « gestion de stratégies de groupe »
 L'administration des stratégies de groupe se fera avec l'outil
d'administration « gestion de stratégies de groupe »

04/2016
M. Villers – F. Lenartowski 20
Outil « gestion de stratégies de groupe »

 2 GPO sont présentes initialement :


 La GPO « Default Domain Policy » avec des règles à imposer aux postes et utilisateurs du domaine.
 La GPO « Default Domain Controllers Policy » avec des règles à imposer aux contrôleurs du domaine

Liste des GPO appliquées aux postes et


utlisateurs du domaine.

Liste des GPO appliquées aux contrôleurs du


domaine.

Liste des GPO enregistrées.

04/2016
M. Villers – F. Lenartowski 21
GPMC: Critères pour le déploiement d'une GPO

L'onglet « étendue » permet de définir la portée d'une GPO :

Liste des domaines, OU et sites où appliquer la GPO

Liste des groupes, utilisateurs et ordinateurs


vers lesquels la GPO pourra être appliquée.

Filtre WMI précisant une caractéristique


technique devant être vérifiée sur
l'ordinateur ou pour l'utilisateur vers qui
04/2016 appliquer la GPO
M. Villers – F. Lenartowski 22
GPMC: Etat d'une GPO

L'onglet « détails » permet d'activer ou de neutraliser le déploiement des règles d'une GPO :

GUID de la GPO

Liste déroulante permettant d'activer complètement, partiellement ou


de neutraliser le déploiement des règles de la GPO vers les stations
ou utilisateurs cibles paramétrés avec l'onglet « étendue ».

04/2016
M. Villers – F. Lenartowski 23
GPMC: Description des règles d'une GPO

L'onglet « paramètres » permet d'obtenir un rapport synthétique sur une GPO

04/2016
M. Villers – F. Lenartowski 24
GPMC: Délégation sur une GPO

L'onglet « délégation » permet de définir des ACLs limitant l'accès à l'édition de la GPO.

Liste des utilisateurs autorisés à accéder à la GPO


et leurs droits d'accès pour l'éditer.

04/2016
M. Villers – F. Lenartowski 25
GPMC: Gestion des liaisons d'une GPO à des emplacements

Ce paramètrage est utile pour désactiver


temporairement la portée d'une GPO vers
certains emplacements.

L'adjectif « appliqué » signifie que les règles de la GPO seront imposées en cas de
contradiction avec les règles d'autres GPO. Ce paramètrage permet en réalité
d'activer une activation prioritaire des règles d'une GPO.
04/2016
M. Villers – F. Lenartowski 26
GPMC: Création d'une GPO

Choisir le nom
de la GPO

04/2016
M. Villers – F. Lenartowski 27
GPMC: Edition de la nouvelle GPO

04/2016
M. Villers – F. Lenartowski 28
GPMC: Edition de la nouvelle GPO

04/2016
M. Villers – F. Lenartowski 29
GPMC: Synthèse de la GPO créée

04/2016
M. Villers – F. Lenartowski 30
GPMC: Liaison de la GPO à un domaine

Au moyen d'un « copie-glisser »,


déplacer la GPO sur le domaine (site
ou OU) dans laquelle elle doit être
déployée et confimer la liaison.

04/2016
M. Villers – F. Lenartowski 31
Le dossier répliqué SYSVOL sur un DC
 SYSVOL est un répertoire avec un ensemble de dossiers et de fichiers à
mettre à la disposition (en lecture seule) de tous les postes de travail et
utilisateurs du domaine.
Présent dans tous les DC dans C:\WINDOWS\SYSVOL

Automatiquement répliqué entre tous les DC par un service de


réplication de fichiers RFS (Replication File System)
04/2016
M. Villers – F. Lenartowski 32
Les partages dans SYSVOL

 Sur chaque contrôleur de domaine, 2 partages sont définis


dans SYSVOL

Le partage sysvol

Le partage netlogon

04/2016
M. Villers – F. Lenartowski 33
Le partage « sysvol »

 Contient un répertoire dont le nom est identique au nom DNS


du domaine avec 2 branches :
 Policies

 scripts

Répertoire « Policies » pour


stocker les fichiers
annexés au GPO

Répertoire « scripts » pour stocker les


Répertoire avec le scripts d'entrée en session centralisé dans
nom du domaine le partage « netlogon »

04/2016
M. Villers – F. Lenartowski 34
Le répertoire « Policies » : annexes des GPO

 Contient des répertoires associés à chaque GPO


 Les noms des sous-répertoires correspondent aux GUID
identifiants les GPO.

Répertoires contenant les fichiers


annexés au GPO

04/2016
M. Villers – F. Lenartowski 35
Schéma des sous-répertoires associés à une GPO

 Le schéma du répertoire d'une annexe de GPO dans « Policies » est :


{GUID}
Machine
Scripts
Shutdown Sous-répertoires destinés à héberger les scripts
Startup de démarrage et d'arrêt associés à la GPO
User
Scripts
Logoff Sous-répertoires destinés à héberger les scripts
Logon d'entrée et de sortie de session associés à la GPO

04/2016
M. Villers – F. Lenartowski 36
Chemins UNC vers les scripts des GPO

 Chemins UNC vers les répertoires contenant un script de démarrage ou d'arrêt


d'une GPO
\\%USERDNSDOMAIN%\sysvol\%USERDNSDOMAIN%\Policies\{GUID}\Machine\Script\Startup
\\%USERDNSDOMAIN%\sysvol\%USERDNSDOMAIN%\Policies\{GUID}\Machine\Script\Shutdown

 Chemins UNC vers les répertoires contenant un script d'entrée ou de fermeture de


session d'une GPO
\\%USERDNSDOMAIN%\sysvol\%USERDNSDOMAIN%\Policies\{GUID}\User\Script\Logon
\\%USERDNSDOMAIN%\sysvol\%USERDNSDOMAIN%\Policies\{GUID}\User\Script\Logoff

04/2016
M. Villers – F. Lenartowski 37
Actualisation de GPO ?

● Opération engagée par un ordinateur du domaine


pour récupérer et répercuter en interne
les stratégies définies et centralisées sur un DC.

✔ L'actualisation d'une GPO dans un ordinateur pourra être


 complète,

 limitée à la station (mise à jour des réglages de

l'ordinateur),
 limitée à l'utilisateur (mise à jour des réglages de

l'utilisateur)

Quand réaliser l'actualisation d'une GPO


dans une station ?

04/2016
M. Villers – F. Lenartowski 38
Fréquence d'actualisation des GPO enregistrées dans les DC

Réplication
AD AD
LDAP & RFS
sysvol sysvol
GPO GPO
Réplication par
Intervalle de 5' Actualisation d'une GPO
entre DC voisins dans une station de travail
 au démarrage de la station

Contrôleur pour les règles relatives à


Contrôleur L'ordinateur,
de domaine
de domaine ● lors d'une entrée en session

pour les règles relatives à


L'utilisateur.
● périodiquement par
GPO GPO
GPO intervalle aléatoire
GPO de 60' à 120'.

L'intervalle de temps pour l'actualisation des GPO est aléatoire pour


répartir la charge réseau inhérente à cette activité.
04/2016
M. Villers – F. Lenartowski 39
Actualisation d'une GPO sur une station de travail

Forcer l'actualisation d'une GPO ?


Opération engagée sur un poste de travail pour actualiser une GPO
sans attendre 30' à 90' ou redémarrer le poste.
Comment ? Avec l'utilisation sur un poste de travail
de la commande en ligne « gpudpate »

Paramètres de la commande gpupdate:


GPUPDATE /FORCE L'utilisation du paramètre /force est recommandée pour que la
station réalise une réactualisation complète des GPO.

GPUPDATE /TARGET:COMPUTER /FORCE

GPUPDATE /TARGET:USER /FORCE L'utilisation du paramètre /target permet de


limiter la réactualisation de la GPO pour les
règles relatives au poste ou à l'utilisateur.
04/2016
M. Villers – F. Lenartowski 40
GPO: La commande gpresult

04/2016
M. Villers – F. Lenartowski 41
Gpresult: Vérification des GPO appliquées

04/2016
M. Villers – F. Lenartowski 42
GPO: Actualisation des GPO

L'écran de veille est neutralisé car l'onglet est affiché en grisé.

04/2016
M. Villers – F. Lenartowski 43
GPO : Déploiement d'un script de logon

1) Préparer le script de « logon.vbs »

 Le script en Vbscript peut être préparé et édité sur le serveur ou un poste


de travail.
 Pour le tester, l'exécuter en mode console avec la commande « cscript »
 Lorsqu'il est au point le transférer dans un répertoire temporaire vers un
contrôleurs de domaine. Dans la pratique, le transfert pourra être réalisé
via le bureau distant.

04/2016
M. Villers – F. Lenartowski 44
GPO : Déploiement d'un script de logon

2) Utiliser l'outil « gestion de stratégie de groupe »


 Procéder à la création d'un GPO intitulée « logon »

Cliquer sur l'onglet détail pour prendre connaissance du GUID

Prendre note du GUID de la GPO car il faudra repérer


le répertoire de cette GPO dans SYSVOL
04/2016
M. Villers – F. Lenartowski 45
GPO : Déploiement d'un script de logon

3) Identification du chemin vers le sous-répertoire logon de la GPO dans SYSVOL



Editer la GPO « logon » Nécessaire pour initialiser l'arborescence
de la GPO dans SYSVOL

04/2016
M. Villers – F. Lenartowski 46
GPO : Déploiement d'un script de logon

4) Glisser le fichier « logon.vbs » dans le sous-répertoire logon


de la GPO dans SYSVOL
Il faudra déployer l'arborescence correspondant au GUID de la GPO

04/2016
M. Villers – F. Lenartowski 47
GPO : Déploiement d'un script de logon

5) Récupération du chemin d'accès du script « logon.vbs » dans SYSVOL


 Astuce : Positionner la souris sur le répertoire Logon dans la chaîne de
répertoire et cliquer sur le bouton droit pour « copier l'adresse »

04/2016
M. Villers – F. Lenartowski 48
6) Création et édition du fichier « logon.bat »
 Utiliser l'éditeur notepad et récupérer le chemin dans SYSVOL par un
« copie-coller »

Chemin d'accès relatif dans SYSVOL pour atteindre le répertoire où


est stocké le script « logon.vbs »
 Modifier le chemin d'accès en un chemin réseau UNC qui devra être
référencé par la station de travail pour récupérer le script .vbs et l'exécuter
en mode console (cscript)

Chemin UNC vers le partage réseau Script Vbs


SYSVOL d'un DC du domaine à exécuter
04/2016
M. Villers – F. Lenartowski 49
GPO : Déploiement d'un script de logon

7) Copie du fichier Batch « logon.bat » dans le sous-répertoire logon


de la GPO dans SYSVOL.

Le sous-répertoire logon de la GPO dans SYSVOL héberge


 Le fichier batch « logon .bat »
 Le script Vbs « logon.vbs »

 La GPO doit être paramétrée pour planifier l'exécution du script


« logon.bat » dans la station de travail.

 Le script DOS invitera la station à récupérer le script Vbs via le


partage réseau SYSVOL pour l'exécuter en mode console.

04/2016
M. Villers – F. Lenartowski 50
GPO : Déploiement d'un script de logon

7) Planification de l'exécution du script « logon.bat » dans la GPO

04/2016
M. Villers – F. Lenartowski 51
GPO : Déploiement d'un script de logon

04/2016
M. Villers – F. Lenartowski 52
GPO : Déploiement d'un script de logon

8) L'exécution du script DOS est planifiée dans la GPO logon

Il ne reste plus qu'à limiter éventuellement l'exécution du script


de logon à des groupes d'utilisateurs plutôt que des utilisateurs
authentifiés.
04/2016
M. Villers – F. Lenartowski 53
GPO : Déploiement d'un script de démarrage

1) Edition d'un script DOS pour une installation silencieuse d'un logiciel

 Le programme d'installation de Notepad++ est stocké dans le partage réseau « softs »


 Les variables d'environnement « ProgramFiles(x86) » et « ProgramFiles » précisent
les répertoires racines susceptibles d'accueillir le logiciel notepad++
 L'installation silencieuse de notepad++ peut être commanditée avec le
commutateur /S

04/2016
M. Villers – F. Lenartowski 54
GPO : Déploiement d'un script de démarrage

2) Planification de l'exécution du script notepadpp.bat via GPO.

04/2016
M. Villers – F. Lenartowski 55
Les domaines
sous
Windows NT4

05/02/2014
M. Villers – F. Lenartowski 1
Historique: NT4

✔ Historique: Sous NT4, à cause de la faible capacité


des disques, il était obligatoire de choisir la finalité du
serveur:
✔ PDC (Primary Domain Controler) ou contrôleur de

domaine principal,
✔ BDC (Backup Domain Controler) ou contrôleur de

domaine secondaire,
✔ « standalone » ou serveur d'application autonome.

Objectif: N'installer que les outils du système


d'exploitation utile à son affectation pour
économiser l'occupation des disques.
Conséquences: L'installation étant incomplète,
il fallait toujours avoir sous la main le CD
d'installation pour mettre en service certaines
05/02/2014
M. Villers – F. Lenartowski
fonctionnalités du système. 2
Domaines sous NT4: Principes de base

✔ Domaine: groupe d'ordinateurs fédérés à une même


autorité de contrôle.
✔ Contrôleur de domaine: Serveur d'authentification
centralisant une base de comptes, de groupes, de
machines et de mots de passe.
✔ SAM: fichier « plat » sous NT4 contenant la description
des comptes, des groupes et des machines.
Remarque: Pour la description, prévoir 1
Koctets/utilisateur et 0,5 Koctets/machine.
Le format de la SAM est rigide et non évolutif.
✔ Contrôleur de domaine principal (PDC): Contrôleur de
domaine contenant le fichier SAM original.
✔ Contrôleur de domaine secondaire (BDC): Contrôleur
de domaine contenant une copie du fichier SAM.
05/02/2014
M. Villers – F. Lenartowski 3
NT4: Déploiement avec 1 seul PDC
NT4 Server - PDC

SAM

Partage
Authentification +
Accès au partage

NT4 WorkStation NT4 WorkStation NT4 WorkStation NT4 WorkStation

En cas de panne du PDC, les utilisateurs


ne peuvent plus s'authentifier sur les
05/02/2014
stations de travail.
M. Villers – F. Lenartowski 4
NT4: Déploiement avec 1 PDC + 1 BDC
Read/Write Read Only

SAM SAM
NT4 Server Réplication NT4 Server
PDC périodique BDC
(5 minutes)

Partage

Répartition des
Accès au authentifications sur
partage les 2 contrôleurs

NT4 WorkStation NT4 WorkStation NT4 WorkStation NT4 WorkStation

En cas de panne du PDC, les utilisateurs


peuvent continuer à s'authentifier via le BDC
05/02/2014
et travailler localement sans utiliser le partage
M. Villers – F. Lenartowski 5
NT4: Défi/réponse et SAT

NT4 Server – PDC (ou BDC)

SAM
2. Demande d'authentification
1) La station avec des
3. Défi partages soumet le poste
client à un défi/réponse
avec l'aide du PDC pour
6. Réponse 7. SID-SAT obtenir le SID du client.
Partage
5.Réponse 2) Le SID retourné est
ensuite recherché dans
4. Défi l'ACL pour autoriser ou
1. Demande de connexion interdire l'accès à la
ressource

NT4 WorkStation
SID-SAT ? ACL
= OK ou pas OK

NT4 WorkStation NT4 WorkStation NT4 WorkStation Access Control List (ACL)
cliente d'un partage
décentralisé
Remarque: le mot de passe ᄇ
encodé lors de l'entrée
en session est dans la
mémoire RAM de la
workstation. Partages décentralisés
05/02/2014
M. Villers – F. Lenartowski 6
Domaines sous NT4: Synthèse

La présence d'un contrôleur de domaine dans un


réseau est indispensable:
✔ Au moment d'une entrée en session sur un poste de travail pour
 contrôler le mot de passe de l'utilisateur

 communiquer à l'O.S. (système d'exploitation) du poste de

travail le SID (et le SAT) de l'utilisateur entré en session.


✔ Lors d'une tentative d'accès à un partage pour qu'un serveur de
fichier puisse
 authentifier l'utilisateur distant (vérification du mot de passe)

 associer au client distant un SID (et un SAT)

 trouver dans l' ACL le droit d'accès du client distant

Rappel: Un SAT (Security Access Token) est un jeton de sécurité reprenant le SID de
l'utilisateur et les SID des groupes auxquels il appartient.

Les contrôles de sécurité réalisés au travers du réseau


sont fréquents et nécessaires.

Comment minimiser les temps de réponse ?


05/02/2014
M. Villers – F. Lenartowski
Comment garantir la disponibilité du contrôle ? 7
NT4: Crash du PDC avec présence de BDC

En cas de crash du contrôleur de domaine principal (PDC)


✔ Les entrées en session et le contrôle des accès aux
partages décentralisés sont toujours opérationnels
par le biais des BDC.
✔ La gestion des comptes est figée: impossibilité de
créer des comptes, de changer de mot de passe, de
modifier les droits et privilèges, etc...
✔ Les partages définis sur le contrôleur de domaine
principal sont inaccessibles.

05/02/2014
M. Villers – F. Lenartowski 8
NT4: Autres avantages apportés par les BDC

Pour un réseau étendu, l'usage de BDC sur différents


réseaux locaux permet
✔ d'accélérer les entrées en session.
✔ de décentraliser les tâches d'authentification.
Réplication de Réplication de
SAM SAM

PDC BDC Routeur BDC


Routeur

Tâches d' Tâches d'


authentification authentification

05/02/2014
Un seul et même domaine sur un réseau étendu
M. Villers – F. Lenartowski 9
NT4: Réparation d'un désastre

Dans le cas où le contrôleur de domaine principal est


irrécupérable, les principales tâches à réaliser sont:
✔ Promouvoir un contrôleur de domaine secondaire comme
nouveau contrôleur de domaine principal.
✔ A condition d'avoir plannifié des backups, restaurer les
répertoires partagés sur le nouveau contrôleur de domaine
principal.

Remarque: Il est possible d'éviter la restauration des


répertoires de données du PDC
✔ Soit en configurant l'outil de duplication de répertoires,

✔ Soit en plannifiant des backups

05/02/2014
M. Villers – F. Lenartowski 10
NT4: Cohabitation et coopération de domaines

Caratéristiques d'un domaine:


Un domaine se compose

✔ d'une liste d'ordinateurs,

✔ d'une liste d'utilisateurs.

✔ Un ordinateur n'appartient qu'à un seul domaine.

✔ Un utilisateur n'appartient qu'à un seul domaine.

Conséquence: Dans un même réseau, 2 domaines peuvent


cohabiter avec les restrictions suivantes:
✔ Un utilisateur ne peut entrer en session que sur des
ordinateurs appartenant au même domaine.
✔ Un utilisateur d'un domaine ne peut pas atteindre les
partages déclarés sur un ordinateur d'un autre domaine.
05/02/2014
M. Villers – F. Lenartowski 11
NT4: Relations d'approbation

Sous NT4, les relations d'approbation (Trusts


Relationships) ont été introduites pour
✔ Permettre une intercommunication entre 2 domaines amis.

✔ Permettre à un utilisateur d'exploiter les imprimantes d'un


autre domaine.
✔ Permettre d'accorder des accès à des ressources pour un
membre d'un autre domaine.
✔ Permettre à un utilisateur d'atteindre un partage défini sur un
autre domaine.
✔ Permettre à un utilisateur d'entrer en session sur un
ordinateur d'un autre domaine.

Solution pratique en cas de fusion ou partenariat


05/02/2014 entre des sociétés.
M. Villers – F. Lenartowski 12
NT4: Approbations

✔ L'approbation entre 2 domaines est un acte bilatéral de partenariat


entre 2 domaines.
✔ L'approbation n'est pas automatique et doit être établie par les
administrateurs des 2 domaines.
✔ Dans le cadre d'une approbation, un domaine peut être approuvant
et/ou approuvé.
✔ Domaine approuvant: Domaine acceptant de faire confiance à
l'autre domaine.
✔ Domaine approuvé: Domaine dont les membres peuvent exploiter
les ressources de l'autre domaine.
Les utilisateurs d'un domaine approuvé sont donc acceptés
par les équipements du domaine approuvant.
✔ Une relation d'approbation peut-être unidirectionnelle ou bi-
directionnelle.
05/02/2014
M. Villers – F. Lenartowski 13
NT4: Absence d'approbation

Domaine ALPHA Domaine BETA


PDC BDC PDC BDC

Domaines approuvés: Aucun Domaines approuvés: Aucun

Les utilisateurs d'un domaine peuvent


uniquement
✔ Entrer en session sur les
équipements de leur domaine,
✔ Accéder aux partages définis
uniquement sur leur domaine.

05/02/2014
M. Villers – F. Lenartowski 14
NT4: Approbation uni-directionnelle
Existance d'un canal de communication entre
les contrôleurs de domaine

Domaine ALPHA Domaine BETA


PDC BDC PDC BDC

Approbation

Domaines approuvés: BETA Domaines approuvés: Aucun

Des entrées en session peuvent


être engagées par des utilisateurs Le contrôleur de domaine BETA
du domaine BETA sur les accepte de soumettre des
équipements du domaine ALPHA. défis/réponses avec les ordinateurs
membres du domaine ALPHA
L'accès à des partages sur les
équipements du domaine ALPHA par
des utilisateurs du domaine BETA
peut être engagé
05/02/2014
M. Villers – F. Lenartowski 15
NT4: L'approbation peut être bi-directionnelle
Existance d'un canal de communication entre
les contrôleurs de domaine

Domaine ALPHA Domaine BETA


PDC BDC PDC BDC

Approbation
réciproque

Domaines approuvés: BETA Domaines approuvés: ALPHA

Des entrées en session peuvent être Des entrées en session peuvent être
engagées par des utilisateurs du engagées par des utilisateurs du
domaine BETA sur les équipements du domaine ALPHA sur les équipements du
domaine ALPHA. domaine BETA.

L'accès à des partages sur les L'accès à des partages sur les
équipements du domaine ALPHA par des équipements du domaine BETA par des
utilisateurs du domaine BETA peut être utilisateurs du domaineALPHA peut être
05/02/2014engagé engagé
M. Villers – F. Lenartowski 16
NT4: L'approbation est ni transitive, ni transmissible
Domaine GAMMA
Les utilisateurs du domaine GAMMA peuvent
entrer en session sur les équipements du domaine PDC BDC
BETA et accéder aux partages du domaine BETA

Les utilisateurs du domaine BETA peuvent entrer en


session sur les équipements du domaine ALPHA et
accéder aux partages du domaine ALPHA

Les utilisateurs du domaine GAMMA ne peuvent pas


entrer en session sur les équipements du domaine Domaines approuvés: Aucun
ALPHA et accéder aux partages du domaine ALPHA
Approbation
Domaine ALPHA Domaine BETA
PDC BDC PDC BDC

Approbation

05/02/2014
Domaines approuvés: BETA
M. Villers – F. Lenartowski Domaines approuvés: GAMMA 17
NT4: Limitations - Conclusion

✔ Le format des fichiers SAM est rigide:


● Impossibilité d'intégrer des paramètres supplémentaires dans la SAM.
● Accès séquentiel (lent et couteux en mémoire RAM) – Effondrement
à partir de 5000 comptes.
● Solution non évolutive.
✔ La réplication maître/esclave (PDC vers BDCs) n'est pas pratique.
● Un sinistre ou le remplacement d'un PDC engendre des tâches
manuelles pour promouvoir un BDC en PDC.

✔ Les relations d'approbation sont uniquement bilatérales.


● Difficulté de fédérer plusieurs domaines car il faut établir de
multiples relations d'approbation entre tous les domaines.
● Exemple:
● Entre 2 domaines : 1 relation d'approbation bi-directionnelle.

● Entre 3 domaines: 3 relations d'approbations bi-directionnelles.

● Entre 4 domaines: 6 relations d'approbations bi-directionnelles.

● Entre 5 domaines: 10 relations d'approbations bi-directionnelles.

NT4 n'est pas mûr.


Nécessité d'innover et d'articuler le déploiement des contrôleurs de domaines
05/02/2014
sur des structures dynamiques telles que des bases de données.
M. Villers – F. Lenartowski 18
Active Directory

et forêts de domaines

sous Win 2000/2003/2008

09/03/2014 1
Active Directory: Nouveautés ?

✔ AD est un nouveau concept introduit sous Win 2000 Server.


✔ Innovation introduite pour combler les limitations des
contrôleurs de domaine sous NT.
Principales nouveautés:
✔ Adoption d'un système de base de données hiérarchique (LDAP)
✔ Abandon des PDC/BDC au profit d'un modèle multimaître DC/DC.
✔ Les relations d'approbation bilatérales seront abandonnées par
l'introduction de relations d'approbation transitives sous forme
✔ d' arbres de domaines

✔ de forêts de domaines.

✔ Introduction des unités organisationnelles (OU).


✔ Introduction de la notion de sites pour optimiser les réplications.

09/03/2014 2
Active Directory: LDAP - DNS

✔ Active Directory s'articule sur


✔ LDAP (Lightweight Directory Access Protocol): service

d'annuaire utilisé pour cataloguer les ressources du


domaine (utilisateurs, équipements, imprimantes,
applications, etc...)
La SAM est remplacée par une base de données.

Garantie de souplesse et évolution

✔ DNS (Domain Name Server) plutôt que WINS et


NETBIOS.
Le système de nommage des équipements pourra être hiérarchisé.

09/03/2014 3
LDAP (Lightweight Directory Access Protocol)
✔ Protocole créé en 1993 permettant de déployer un annuaire
sous TCP/IP et utilisant le port TCP 389.
Ce n'est pas une invention de Microsoft.
✔ Fonctionnalités et avantages ?
✔ Permettre le stockage de données suivant un schéma hiérarchique.
✔ Offrir une structure flexible et évolutive.
Possibilité d'intégrer des paramètres d'administration additionnels
facilitant la mise en service et les gestion de fonctionnalités
complémentaires.
✔ Disposer d'un mécanisme de recherche de paramètres rapide et
efficace. Repousser le seuil d'effondrement du contrôleur de domaine.
✔ Conçu pour

 un taux de consultation élevé

 un taux de modification réduit.

✔ Disposer d'un mécanisme de communication natif et bidirectionnel

entre annuaires.
09/03/2014
Les réplications seront désormais réalisées en utilisant les facilités de 4
communication offertes par le protocole LDAP (abandon des copies de
fichiers)
Win 2000: DNS et LDAP

✔ Depuis qu'Internet et TCP/IP se sont généralisés, Microsoft


tente de se débarasser de NetBIOS.
✔ Les utilisateurs étant familiarisés à l'utilisation de noms DNS,
cette solution sera désormais privilégiée.
✔ Le DNS étant désormais la solution privilégiée pour désigner
les équipements dans un réseau Windows, sa mise à jour doit
être dynamique.
Exemple:
✔ Les stations de travail et, en particulier les portables, sont susceptibles de

changer d'adresse IP. Ces changements doivent être répercutés


immédiatement dans le DNS pour permettre de les « cibler » dans le réseau.
✔ Les DNS secondaires devront être synchronisés fréquemment.

Il est avantageux d'implémenter le DNS sur LDAP plutôt


que de mettre à jour des fichiers de zones statiques.

09/03/2014 5
Architecture d'un contrôleur de domaine sous AD

Serveur Win 2003 - AD

IP

UDP TCP
LDAP: Service d'annuaire
Port 53 Port 389 pilotant les accès à
Socket Socket l'Active Directory.
Le serveur DNS
utilise l'Active
Directory comme Base de donnée
alternative au DNS LDAP hiérarchique.
fichiers de zone La structure hiérarchique
conventionnels. l'a rend donc extensible.

La ruche SAM a Contient la liste


été supprimée et des utilisateurs et
tous les comptes Active des équipements
existants SAM Directory du domaine
exportés dans
09/03/2014 6
l'Active Directory C:\WINDOWS\NTDS
Active Directory: Modèle multimaître

Modèle Maître/Esclave sous NT4:


Réplication
unidirectionnelle
PDC (copie de la SAM)
BDC

En cas d'arrêt du PDC, impossibilité de faire des mises à jour (création de compte,
changement de mot de passe, etc...)

Modèle Multimaître sous Win2000/2003/2008:


Réplication
bidirectionnelle
via le protocole
DC LDAP DC

En cas d'arrêt d'un DC, possibilité de faire des mises à jour sur l'autre DC (création de
compte, changement de mot de passe, etc...).
09/03/2014 7
AD: Symbolique d'un domaine

✔ Un domaine sera désormais symbolisé par un triangle.


✔ Un domaine sera désigné par un nom de domaine DNS.

Contrôleurs de domaine
répliqués via LDAP
dc1.firme.be dc2.firme.be

Réplication
via LDAP Postes de travail

ws1.firme.be ws2.firme.be ws3.firme.be ws4.firme.be

09/03/2014 firme.be 8
AD: Exemple de réseau Windows avec 2 DC

Contrôleur de Win 2003 Server DC Win 2003 Server DC


domaine AD AD
Synchronisation
périodique
Serveur des AD
d'application Contrôleur de
membre du domaine
domaine
SAM
Domaine
Win 2003
Server
Windows 2003 SAM
membre

SAM Win XP Pro


SAM

Win 98/Me
Postes avec entrée
en session avec des
Clients potentiels du Win 2000 Pro comptes locaux ou
domaine ! A éviter car tout des comptes du
09/03/2014 9
inconnu peut s'octroyer un domaine
compte local
AD: Exemple de réseau Windows avec 2 DC et 1 BDC
Win 2003 Server DC
Contrôleur de + PDC Emulator Win 2003 Server DC
domaine émulant
un PDC AD AD
Synchronisation
périodique
des AD
Serveur NT4 Réplication Contrôleur de
installé périodique domaine
comme BDC

SAM Domaine
NT4
Server
Windows 2003 SAM
BDC

SAM Win XP Pro


SAM
NT4
Workstation Postes avec entrée
en session avec des
Poste nécessitant la Win 2000 Pro comptes locaux ou
présence d'un contrôleur de des comptes du
09/03/2014 10
domaine avec une SAM domaine
AD: Les arbres de domaines

Constats pratiques:
✔ L'expérience a montré (sous NT4) que les administrateurs réseau avaient
tendance à construire des hiérarchies de domaines.
✔ Microsoft a conçu AD en privilégiant le DNS comme nouveau système de
nommage.
Coïncidence: DNS est hiérarchique et les réseaux multi-domaines sont conçus très
souvent de manière hiérarchique.

Arbre de domaines: Structure hiérarchique composée de domaines ayant des


noms contigus.

Exemple:

Domaine
firme.be

Arbre de
Domaine domaines Domaine
09/03/2014 production.firme.be ventes.firme.be 11
AD: Domaine racine, domaine parent, domaine enfant

Domaine Domaine
racine parent
Domaine
parent
Domaine
Domaine
firme.be
firme.be
Domaine
enfant
Arbre de
Domaine
domaines Domaine Domaine
production.firme.be ventes.firme.be enfant

Domaine
enfant
Domaine
export.ventes.firme.be

✔ Le premier domaine AD créé est appelé racine de l'arbre.


✔ Les domaines dont les noms se composent d'un préfixe sont des domaines enfants.
✔ Les domaines dont les noms sont des suffixes sont des domaines parents.

Remarque importante: Dans un arbre, les domaines enfants doivent contenir les noms
des domaines parents.
09/03/2014 12
AD: Relation d'approbation automatique dans un arbre de domaines

Dans un arbre de domaines, les relations d'approbation (trusts


relationships) sont définies automatiquement.
✔ Entre le domaine parent et ses domaines enfants.

✔ Entre les domaines enfants d'un même domaine parent.

Domaine racine
firme.be
Domaine racine
societe.be
Domaine
firme.be
Approbation Approbation
réciproque réciproque Domaine Approbation
Arbre de societe.be
réciproque
domaines Approbation
réciproque
Arbre de
Approbation domaines
Domaine réciproque Domaine
production.firme.be ventes.firme.be
Approbation
réciproque
Domaine Domaine
09/03/2014 13
production.societe.be ventes.societe.be
AD: Forêt d'arbres de domaines

Relation d'approbation
réciproque et transitive
Domaine racine
firme.be Forêt de Domaine racine
domaines societe.fr
Domaine
firme.be
Approbation Approbation
réciproque réciproque Domaine Approbation
Arbre de réciproque
societe.fr
domaines Approbation
réciproque
Arbre de
Approbation domaines
Domaine réciproque Domaine
production.firme.be ventes.firme.be
Approbation
réciproque
Domaine Domaine
production.societe.fr ventes.societe.fr

✔ Une forêt est un groupe d'arbres ayant des relations d'approbations mutuelles.
✔ Les noms des domaines entre arbres peuvent être différents.
09/03/2014 14
Très utile en cas de fusion de sociétés.
AD: Type de domaines

Lors de la promotion d'un contrôleur de domaine, il faudra préciser le type de


domaine:

09/03/2014 15
Contenu d'un annuaire LDAP dans le cas d'un arbre ou d'une forêt.

L'annuaire LDAP dans un domaine isolé contient


 Une liste des utilisateurs avec leur description complète.
 Une liste des postes de travail avec leur description complète.
Le trafic entre les annuaires LDAP se limite
à des réplications bidirectionnelles périodiques.

Conséquence de l'existence de relations d'approbations automatiques sur les annuaires LDAP ?


Les différents annuaires devront communiquer entre eux pour qu'un utilisateur d'un domaine
puisse être reconnu dans les autres.
Un trafic additionnel entre les annuaires LDAP des domaines d'un arbre ou forêt
devrait inévitablement être organisé puisqu'ils doivent coopérer.

09/03/2014 16
Rappel: SID (Security Identifier)

✔ Identifiant unique alphanumérique


➔ désigne ➔ dans

 un utilisateur  un ordinateur

 un équipement  un domaine (réseau)

 un objet (groupe)

09/03/2014 17
SID: Quelques identifiants remarquables

SID connus : Display Name Description


SID
S-1-1 World Authority Tout le monde

S-1-1-0 Everyone Sous Windows XP, le groupe Everyone inclus les utilisateurs authentifiés et Guest. Avant il incluait aussi les
utilisateurs anonymes.
S-1-2-0 Local Les utilisateurs authentifiés localement .
Un membre du groupe S-1-2-0 ne peut être membre de S-1-5-2 (Network).
S-1-3 Creator Authority
S-1-5 NT Authority
S-1-5-1 Dialup Ce groupe inclus tous les utilisateurs qui sont connectés à l'aide d'une connexion à distance.
S-1-5-2 Network Ce groupe inclus tous les utilisateurs connectés par le réseau.

S-1-5-3 Batch Liste des utilisateurs connectés par un batch (les tâches planifiées par exemple).
S-1-5-4 Interactive Utilisateurs connectés localement (loggés, connexion a distance au bureau, ou telnet)

S-1-5-5-X-Y Logon Session Session de connexion, X et Y sont uniques.

S-1-5-6 Service Tous les services connectés.

S-1-5-7 Anonymous Utilisateurs non authentifiés (ne pas confondre avec les connexions anonymes de IIS qui utilisent un compte nommé
Logon IUST_nomdepc.

S-1-5-9 Enterprise Groupe des contrôleurs de domaine.


Domain
Controllers
S-1-5-18 System (or Identité utilisée par le système ou les services.
LocalSystem)

S-1-5-19 LocalService Identité utilisée par le système ou les services locaux (ne possède pas de droits réseau)

S-1-5-20 NetworkService Identité utilisée par les services réseaux (ne possède pas de droits locaux).

S-1-5-domain-500 Administrator Premier compte créé à l'installation. Chaque système possède un administrateur, chaque domaine possède un
09/03/2014 compte administrateur. 18
Un compte administrateur ne peut être bloqué ou supprimé mais peut être renommé.
Le compte administrateur fait partie du groupe administrateurs et ne peut en être enlevé.
Rappel: ACE (Access Control Entrie)

✔ Une ACE est un enregistrement de sécurité


 lié à une ressource (répertoire, fichier, branche dans une base de

registre, ...)
 précisant les droits d'accès accordés ou refusés à un utilisateur.

✔ Une ACE peut être un droit d'accès exprimé par rapport à


 un SID désignant un utilisateur,

 un SID désignant un équipement,

 un SID désignant un groupe.

✔ Une ACL (Acces Control List) est l'ensemble des ACE liées à une
ressource.
A charge du système d'exploitation de rechercher une ACE référençant
 un des SID (du SAT) de l'utilisateur ou de la machine qui accède
 pour décider d'accorder ou de refuser l'accès à la ressource.

09/03/2014 19
ACE: Les types de droits

✔ Dans une partition NTFS, de nombreux types de droits peuvent être


exprimés sur les répertoires et fichiers:

 Contrôle total
 Parcours d'un répertoire ou exécuter le fichier
 Lister un répertoire ou lecture du fichier
 Création d'un fichier ou écriture de données dans un fichier
 Création de sous-répertoire ou ajout de données dans un fichier.
 Suppression d'un sous-répertoire ou d'un fichier.
 Modification des autorisations
 Appropriation

09/03/2014 20
Mécanisme d'exploitation des ACLs

Rappel:
Tout accès engagé par un utilisateur (ou un ordinateur) vers une ressource
(partage, répertoire, fichier, etc...) dans un domaine s'accompagne
● D'un challenge dirigé par un contrôleur de domaine pour identifier l'utilisateur
(ou l'ordinateur) et connaître son SID (et SAT),
● Confronter ce SID (et SAT) à l'ACL pour trouver l'ACE précisant si l'accès
doit être accordé ou refusé.

Problème pratique:
Comment définir les ACE (autorisation, interdiction) efficacement, en particulier en cas
d'accroissement massif de comptes utilisateurs ?

09/03/2014 21
Gestion des ACE et croissance du nombre d'utilisateurs

Autorisations
Cette technique est à éviter
attribuées
par utilisateur

Anne
C:\recettes_de_cuisine

Marie

C:\loisirs_vacances Pierre

Marc

C:\mecanique_automobile

Conclusion: A chaque ajout d'utilisateur, il est nécessaire d'


09/03/2014 ajouter autant de droits d'accès qu'il y a de ressources à lui attribuer. 22
Gestion des ACE et croissance du nombre d'utilisateurs

Autorisations Affectations
Technique à encourager
attribuées des utilisateurs
par groupe dans des groupes

Anne
C:\recettes_de_cuisine

Marie
dames

C:\loisirs_vacances Pierre

hommes Marc

C:\mecanique_automobile

Conclusion: A chaque ajout d'utilisateur, une affectation dans un groupe suffit.


09/03/2014 23
Gestion des « Access Control Entries » et groupes locaux

Recommandations pratiques pour définir les ACE:


✔ Eviter les ACE (autorisation, interdiction) par rapport à des utilisateurs.

✔ Définir des groupes et attribuer des ACE (autorisation, interdiction) par


rapport à ces groupes.
✔ Affecter les utilisateurs dans un ou des groupes pour leur définir
indirectement leurs droits d'accès.
Rangés dans des
ACE
Par rapport à
Groupes Utilisateurs
(autorisation,interdiction)

Conclusion:
Un groupe est donc finalement
un ensemble d'utilisateurs à qui on attribuera
les mêmes autorisations (ou interdictions)
vis-à-vis d'une ou de plusieurs ressources
L'utilité de ces groupes étant liée à la sécurisation des ressources locales,
09/03/2014 ces groupes seront appelés des groupes locaux. 24
Groupes prédéfinis

✔ Les groupes prédéfinis sont des groupes qui servent à accorder à leurs
membres divers privilèges pour administrer l'ordinateur.
✔ Ces groupes sont fonction du système d'exploitation utilisé et ne
peuvent être supprimés.
✔ Une console de contrôle peut être ouverte en utilisant « Poste de travail »,
« clic droit », « gérer » pour
 Créer des groupes locaux pour rationaliser la sécurisation des ressources,

 Affecter des utilisateurs dans les groupes locaux et les groupes prédéfinis.

09/03/2014
Groupes prédéfinis sous Win XP 25
Groupes définis

Groupes prédéfinis sous Win2008 Server (non DC)

Ces groupes prédéfinis peuvent donc aussi être assimilés à des groupes locaux.
09/03/2014 26
Interprétation du qualificatif « local » et « global »

✔ En programmation, on fait la distinction entre


 les variables globales dont la portée est illimitée

 Les variables locales dont la portée est limitée à la

procédure où elles sont définies.

Il en sera de même pour la portée d'un groupe


 Par rapport à un ordinateur,

 Par rapport à un domaine,

 Par rapport à un arbre ou une forêt de domaines.

Depuis l'avènement du concept d'Active Directory,


les groupes définis dans une SAM seront appelés finalement
des groupes locaux d'ordinateur.

09/03/2014 27
Domaines et groupes

✔ Dans un domaine, le regroupement des utilisateurs se justifiera


pour 2 raisons:
 Communiquer à un poste de travail fédéré au domaine
une liste d'utilisateurs à qui on attribuera
des mêmes autorisations (ou interdictions)
par rapport à des ressources de ce poste de travail.
La portée de ces groupes étant limitée à un domaine,
Ces groupes seront appelés groupes locaux de domaine.

 Communiquer à un domaine approuvant et les postes de travail de ce domaine


une liste d'utilisateurs à qui on attribuera
des mêmes autorisations (ou interdictions)
par rapport à des ressources de ce domaine approuvant.
La portée de ces groupes étant étendue à d'autres domaines
(arbres ou forêts de domaines),
ces groupes seront appelés groupes globaux.

09/03/2014 28
Les types de groupes sous AD

✔ Sous Active Directory (Win2000 et suite), les dispositions suivantes


ont été rendues possibles:
 Un groupe peut désormais être composé
 d'utilisateurs,

 d'ordinateurs,

 d'une combinaison d'utilisateurs et d'ordinateurs.

 Le nombre d'imbrication de groupes n'est plus restreint.

Sous NT4, Microsoft avait prévu de limiter l'imbrication des groupes à 2 niveaux:
 Des utilisateurs pouvaient être rangés dans des groupes globaux prédéfinis.

 Des groupes, appelés « groupes locaux », pouvaient être construits en

combinant des utilisateurs et des groupes globaux. L'appellation « groupe


local » s'explique par le fait que ces groupes n'avaient de raison d'être que
dans l'ordinateur dans lequel ils étaient définis.
Cette classification historique doit être revue avec l'apparition de l'Active Directory.
09/03/2014 29
AD: Groupe local de domaine, groupe global de domaine

✔ Groupes définis dans un Active Directory (Domaine)


 Un groupe local de domaine a une portée locale

Un groupe local de domaine n'est donc pas « visible » par un autre


domaine (approuvant) avec lequel une relation d'approbation est établie.
Un groupe local peut être qualifié de non-exportable, de privé.

 Un groupe global de domaine a une portée étendue vers les


domaines avec lesquels des relations d'approbations sont établies.

Un groupe global de domaine est donc « visible » par un autre domaine


(approuvant) avec lequel une relation d'approbation est établie.
Un groupe global de domaine peut être qualifié d'exportable, de public.

09/03/2014 30
AD: Règles d'imbrication de groupes

Relation
d'approbation

Utilisateur Utilisateur
is
Utilisateur Utilisateur o ri s é ma Utilisateur Utilisateur
Aut éviter
à

Groupe Groupe Groupe Groupe


local local global global

Groupe
local

Domaine approuvant Domaine approuvé


✔ Un groupe local d'un domaine se compose

 d'utilisateurs du domaine + d'utilisateurs de domaines approuvés (à éviter)


 d'autres groupes locaux du domaine + d'autres groupes globaux de domaines approuvés
✔ Un groupe global d'un domaine se compose exclusivement
 d'utilisateurs du domaine
 d'autres groupes globaux du domaine
09/03/2014 31
AD: Sécurisation dans un arbre ou une forêt de domaines.

Relation
d'approbation

ACE Groupe Groupe


local global

Domaine approuvant Domaine approuvé


Recommandations:
Dans un arbre ou une forêt de domaines, la sécurisation des ressources des différents
domaines doit être planifiée comme suit:
1. L'administrateur du domaine approuvé rassemble les utilisateurs qu'il administre
dans différents groupes globaux.
2. L'administrateur du domaine approuvant crée des groupes locaux pour organiser
la sécurisation des ressources de son domaine en y incorporant
 Les utilisateurs ou groupes locaux de son domaine,
 Des groupes globaux des domaines approuvés administrés par son confrère.
3. L'administrateur du domaine approuvant défini des autorisations (ou interdictions)
09/03/2014 32
d'accès (ACE) sur les ressources de son domaine par rapport à ses groupes locaux.
AD: Groupe universel

Un groupe global a donc


 Un contenu composé uniquement d'utilisateurs du domaine dans lequel il est

défini.
 Une portée étendue à l'ensemble des domaines d'un arbre ou d'une forêt.

Un groupe local a donc


 Un contenu composé d'utilisateurs provenant des différents domaines de

l'arbre ou de la forêt.
 Une portée limitée au domaine dans lequel il est défini..

Ce principe est hérité de NT4 et n'est donc pas nouveau.

Nouveauté avec l'Active Directory:


Un groupe universel est un groupe qui aura
 Un contenu composé d'utilisateurs provenant des différents domaines de

l'arbre ou de la forêt.
 Une portée étendue à l'ensemble des domaines d'un arbre ou d'une forêt.

Un groupe universel est donc un véritable groupe interdomaines.


09/03/2014 33
AD: Groupe universel - utilité

Arbre ou forêt de domaines:

Défini dans l'annuaire


du domaine B

Groupe
Défini dans l'annuaire
global
du domaine A
Domaine approuvé B

ACE Groupe Groupe


local universel

Domaine approuvant A

Où définir les Groupe


groupes universels ? global
Défini dans l'annuaire
09/03/2014 du domaine C Domaine approuvé C 34
Le catalogue global ?

Un catalogue global est un contrôleur de domaine contenant


en plus de son annuaire une copie partielle des objets
des autres domaines de la forêt.

Contient les attributs les plus


fréquemment recherchés dans une forêt,
en particulier la liste des utilisateurs de
tous les domaines.

Catalogue global

Amélioration significative des performances du réseau en réduisant les


interrogations inter-domaines les plus courantes.
09/03/2014 35
Le catalogue global: utilité ?

● Amélioration des recherches d'objets


Exemple: recherche d'imprimante, d'utilisateurs, etc...

● Authentification du nom principal


Exemple: Retrouver dans quel domaine est défini un utilisateur.

● Informations relatives à l'appartenance à des groupes


universels dans un environnement multidomaines.

09/03/2014 36
Gestion des catalogues globaux

● Le premier domaine d'une forêt active automatiquement un catalogue global.


● L'activation du catalogue global est personnalisable via la console « AD Sites
et Services » et les propriétés du service d'annuaire NTDS.

Activer au moins un Catalogue global par site.

09/03/2014 37
Gestion du schema du catalogue global

● Opération consistant à ajouter ou retirer des attributs du


catalogue global: A utiliser avec parcimonie !!!

09/03/2014 38
Comment accéder au schéma de l'annuaire ?

1. Enregistrer un composant enfichable permettant de manager le schéma.

2. Ouvrir une console MMC

09/03/2014 39
Comment accéder au schéma de l'annuaire ?

3. Engager la préselection d'un composant enfichable.

4. Ajouter le composant
« Active Directory Schema »

09/03/2014 40
Comment accéder au schéma de l'annuaire ?

5. Sauvegarder la console
avec le composant « Active
Directory Schema »

09/03/2014 41
Comment accéder au schéma de l'annuaire ?

09/03/2014 42
Installation d'un serveur Win 2000/2003/2008

✔ Les disques offrant des capacités non critiques,


l'installation du système d'exploitation est standardisée.
Les constructeurs peuvent désormais fournir
l'équipement avec une version serveur pré-installée.

✔ La personnalisation du serveur sera assurée par


l'administrateur réseau dans une phase de post-
configuration.
✔ Au terme de l'installation, le serveur est configuré
comme équipement autonome.
✔ N'étant ni un contrôleur de domaine, ni associé à un
domaine, sa base de comptes initiale est au format
SAM.

09/03/2014 43
Win 2008: Menu des outils d'administration avant
promotion d'un contrôleur de domaine.

09/03/2014 44
Win 2008: Configuration TCP/IP

09/03/2014 45
Win 2008: Configuration TCP/IP

09/03/2014 46
Win 2008: Configuration TCP/IP

La configuration TCP/IP du serveur


doit être statique et pas automatique.

Déclarer le serveur comme étant client


09/03/2014
DNS de lui même. 47
AD: Promotion d'un serveur Active Directory

✔ Pour promouvoir un serveur 2003/2008 en Active


Directory, il faudra obligatoirement lancer la
commande en ligne:

C:>DCPROMO

✔ DCPROMO signifie « Domain Controller Promotion »

09/03/2014 48
Promotion d'un 1er contrôleur de domaine

09/03/2014 49
Win 2008 : Promotion d'un 1er contrôleur de domaine

Prévoir une installation de l'Active


Directory en mode avancé pour
voir et contrôler toutes les options.
09/03/2014 50
Win 2008 : Promotion d'un 1er contrôleur de domaine

En cas de durcissement des algorithmes de


chiffrement, certains équipements (NT4, Le premier contrôleur de domaine est
clients SMB exotiques, NAS) ne supportant forcément le nouveau domaine d'une
pas09/03/2014
ces nouveaux algorithmes seront hors nouvelle forêt. 51
domaine.
Win 2008 : Promotion d'un 1er contrôleur de domaine

Préciser le nom DNS du domaine Windows. Un nom de domaine NetBios est proposé.

09/03/2014 52
Win 2008 : Promotion d'un 1er contrôleur de domaine

Il sera nécessaire de préciser le schéma de l'Active Directory à initialiser.


Ce choix limitera les compatibilités descendantes.

Si le 1er membre de la forêt adopte le


09/03/2014 schema 2003, un Win 2000 server ne 53
pourra pas devenir DC.
Win 2008 : Promotion d'un 1er contrôleur de domaine

Remarque:
Un Win 2000 Server ou Win 2003 Server
Si le 1er membre de la forêt adopte le pourra néanmoins être membre non-DC
schema 2008, un Win 2000 server ou Win d'un forêt 2008.
2003 Server ne pourra pas devenir DC.
09/03/2014 Exemple: Serveur de fichier 54
Win 2008 : Promotion d'un 1er contrôleur de domaine

Vérification de la configuration client DNS du serveur

Incorporation automatique du
Global Catalog dans le 1er DC
de la forêt
+ installation du service DNS

Il n'y aura pas de délégation DNS


vers le 1er serveur DNS de la forêt.

09/03/2014 55
Win 2008 : Promotion d'un 1er contrôleur de domaine

Disques et répertoires utilisés pour Choisir un mot de passe particulier


 La base de donnée LDAP pour engager la restauration de la
Les fichiers de journalisation
09/03/2014 base de données LDAP. 56
Win 2008 : Promotion d'un 1er contrôleur de domaine

Noms DNS et Netbios du domaine

Niveau
fonctionnel de
la forêt

Nom du site dans lequel le DC


est déployé.
09/03/2014 57
Win 2008 : Promotion d'un 1er contrôleur de domaine

09/03/2014 58
Win 2008 : Après promotion d'un contrôleur de domaine

Les rôles « Active Directory » & « DNS Server » ont été


installés automatiquement.

Le firewall a été réactivé pour


protéger l'Active Directory
La SAM ayant été
supprimée, il n'y a plus
de compte et de
groupe local à
l'ordinateur.

09/03/2014 59
Win 2008 : Après promotion d'un contrôleur de domaine

1er DC du
1er site

Zone DNS primaire initiale du domaine « firme.be »


définie dans LDAP

09/03/2014 60
Win 2008 : Après promotion d'un contrôleur de domaine

Présence d'outils pour administrer


 Les relations d'approbation
entre domaines,
 La réplication des annuaires
LDAP entre sites,
 Les utilisateurs et ordinateurs
du domaine.

Outil pour configurer le


serveur DNS.

09/03/2014 61
AD: Console d'administration des utilisateurs du domaine

Groupes locaux, globaux et universels initiaux

09/03/2014 62
AD: Les 2 autres consoles d'administration

09/03/2014 63
Création d'un 1er utilisateur dans le domaine

2 formats de désignation d'utilisateurs:


 Le format DNS sous la forme

prenom.nom@nom_DNS_du_domaine
 Le format NetBIOS (à abandonner) sous la forme

nom_NetBIOS_du_domaine\prenom.nom
09/03/2014 64
Création d'un 1er utilisateur dans le domaine

09/03/2014 65
Création d'un 1er utilisateur dans le domaine

09/03/2014 66
Composition du groupe des administrateurs du domaine

09/03/2014 67
Composition du groupe des administrateurs du domaine

09/03/2014 68
Composition du groupe des administrateurs du domaine

L'utilisateur michel.villers pourra administrer le domaine.


09/03/2014 69
Rattachement d'un ordinateur à un domaine

2 champs dans le logon


= Station hors domaine

La station de travail doit déjà être client


DNS d'un serveur DNS de la forêt qui
lui renseignera l'adresse IP du DC à
contacter pour rejoindre le domaine
09/03/2014
auquel elle se fédère. 70
Rattachement d'un ordinateur à un domaine

09/03/2014 71
Rattachement d'un ordinateur à un domaine

1) Ouvrir les propriétés du poste de travail 2) Choisir le nom


de la station et le
domaine à
rejoindre

3) Communiquer
un compte et un
mot de passe d'un
membre du groupe
administrateurs du
domaine

09/03/2014 72
Etat du DNS et de l'annuaire après rattachement

La station de travail est cataloguée dans


la zone DNS du domaine rejoint avec son
nom et son adresse IP.

La station de travail a été enregistrée dans


09/03/2014 l'annuaire avec son nom et son SID. 73
Entrée en session avec un compte du domaine

3 champs dans le logon


= station fédérée à un domaine
Un profil local pour le
l'utilisateur du
Remarque: domaine est créé
Sous Vista Pro ou Seven Pro, il est dans la station de
recommandé de mentionner son travail.
compte utilisateur au format
prenom.nom@domaineDNS. Pas de disque
réseau assigné à
09/03/2014 l'utilisateur 74
Création d'une partition NTFS pour les répertoires utilisateurs

Une partition peut être initialisée pour y créer


09/03/2014 75
 des répertoires réservés aux utilisateur
 les partager sur le réseau
Création d'une partition NTFS pour les répertoires utilisateurs

09/03/2014 76
Création d'une partition NTFS pour les répertoires utilisateurs

Adopter le format NTFS pour déporter la


gestion de la sécurité vers le disque et pas
le partage réseau.

09/03/2014 77
Création d'une partition NTFS pour les répertoires utilisateurs

09/03/2014 78
Création d'une partition NTFS pour les répertoires utilisateurs

Cliquer sur le bouton droit pour


ouvrir les propriétés du disque
09/03/2014 79
Déclaration d'un partage réseau

Choisir un nom de
09/03/2014 partage 80
approprié.
Déclaration d'un partage réseau

Ouvrir le partage en accès complet à tous


les utilisateurs puisque la sécurité sera
implémentée dans la partition NTFS.

09/03/2014 81
Déclaration d'un partage réseau

Le chemin UNC du partage réseau sera


 \\DC1\home_dir

 \\dc1.firme.be\home_dir

09/03/2014 82
Définition d'un accès à un répertoire réseau dans un compte

Cliquer sur le
Bouton droit
Préciser
 La lettre du lecteur réseau à attribuer

 Le chemin UNC complet \\dc1.firme.be\home_dir\%username%

09/03/2014 L'utilisation du contenu de la variable


Remarque: 83
d'environnement permettra de « copier des comptes »
Montage automatique du répertoire réseau après une connexion au domaine

Chaque utilisateur
du domaine qui se
« loguera » sur la
station de travail se
verra attribué un
profil local.

Il y a donc un
Le disque P: n'est pas local et ne
risque de
consomme pas d'espace disque
saturation du
sur la station de travail.
disque C:

09/03/2014 84
Propriétés du répertoire créé automatiquement dans le partage réseau

Sur le serveur, le répertoire dédicassé à


l'utilisateur est
 créé par le DC lors du 1er logon,
 avec des droits d'accès en écriture
exclusivement pour l'utilisateur concerné.
09/03/2014 85
Propriétés du répertoire créé automatiquement dans le partage réseau

09/03/2014 86
Mise en place de profils itinérants

Etape 1:

Réserver un espace (sur un DC ou un serveur membre) pour y archiver les profils des
utilisateurs.

09/03/2014 87
Mise en place de profils itinérants

Etape 2: Ouvrir un partage sur le répertoire (ou disque) réservé pour archiver les profils.

Remarque:
09/03/2014 88
Le nom du partage se termine par $ pour que son
existence ne soit pas diffusée sur le réseau.
Mise en place de profils itinérants

Etape 3: Paramétrer chaque compte en précisant le chemin du partage réseau


vers lequel le profil itinérant doit être archivé

Préciser un chemin d'accès UNC


en mentionnant l'utilisation du
contenu de la variable
Cliquer sur le
%username% pour permettre de
Bouton droit
dupliquer des comptes.

09/03/2014 89
Mise en place de profils itinérants

Profil itinérant de michel.villers


sauvé automatiquement lors de la
fermeture de session sur la station
de travail.
Ce profil sera récupéré lors d'une
entrée en session sur une autre
station de travail.

09/03/2014 90
Mise en place de profils itinérants

Liste des profils sur la station de travail:

Sous Win2000 Pro,


le profil itinérant est
conservé dans la station
de travail après
fermeture de session.

Il sera modifié lors de la


prochaine entrée en
session si le profil
archivé sur le serveur
est plus récent.

09/03/2014 91
Scripts de logon ?

Script de logon ?
 Procédure exécutable (Commandes DOS ou Vbscript)
 Enregistrée sur chaque contrôleur de domaine.
 Distribuée via réseau aux stations de travail par un partage réseau
particulier (« netlogon »).
 Exécutée sur une station de travail lors d'une entrée en session.

Utilité ?
 Automatiser l'exécution d'opérations sur une station de travail au
moment de l'entrée en session de chaque utilisateur
 Montage de partage réseaux sur des lecteurs (L:, P:, ...),

 Nettoyer ou créer des répertoires,

 Copier des icônes additionnels sur le bureau,


 Montage d'imprimantes,
 Modifier la base de registre locale.
09/03/2014 92
Hébergement des scripts de logon

Partage créé lors


de la promotion
du DC.

09/03/2014 93
Héritage Win NT concernant les scripts de logon:

 Lecteur Z: réservé lors de l'entrée en session pour monter le partage


réseau \\dc1.firme.be\netlogon
 netlogon.bat est généralement le script initialement exécuté.
 Exemples de commandes généralement utilisées dans un script de logon:
NET USE P: \\dc1.firme.be\home_dir\%USERNAME%
Pour monter le répertoire distant d'un utilisateur sur un lecteur réseau.
NET USE L: \\serveur_de_fichier\logiciels
Pour monter un partage réseau contenant des logiciels sur un lecteur réseau.
NET TIME \\serveur_de_temps /SET /YES
Pour synchroniser la date et l'heure dans une station de travail.
REGEDIT /S L:\proxy.reg
Pour imposer des modification dans la base de registre locale.

Remarque: Les GPO (Group Policies) sont des outils plus modernes introduits avec
09/03/2014 94
l'active directory pour éviter d'écrire ou de maintenir des scripts de logon.
Configuration complète d'un compte utilisateur

Chemin UNC vers un répertoire particulier


réservé à l'utilisateur pour sauver son profil
itinérant.

Nom du script de logon à exécuter.

Lecteur réseau et chemin UNC vers le


répertoire réseau réservé à l'utilisateur.

Remarque: Les profils itinérants et répertoires réseaux peuvent être


stockés
09/03/2014dans des serveurs membres du domaine. 95
Exemple de domaine: 2 DC + 2 serveurs membres

2 contrôleurs de domaine 2 serveurs membres


Scripts de logons Scripts de logons Répertoires Profils
+ + utilisateurs itinérants
Profil Default User Profil Default User

netlogon netlogon home_dir profile_dir$

dc1.firme.be dc2.firme.be m1.firme.be m2.firme.be


Trafic important
ws1.firme.be ws2.firme.be ws3.firme.be ws4.firme.be

Profils Profils Profils Profils


locaux
09/03/2014 locaux locaux locaux 96
Profils et entrée en session dans le domaine: quelques règles

Lors d'une entrée en session:

✔ Un utilisateur possède un profil Le profil itinérant est recopié localement.


itinérant sur un serveur sans
en posséder un localement.

✔ Le profil itinérant d'un Le profil local de l'utilisateur est


utilisateur est plus récent que remplacé par une copie de son profil
le profil local. itinérant.

✔ Le partage contenant le profil Le profil local de l'utilisateur, si il existe,


itinérant de l'utilisateur est est réutilisé ou
inaccessible. un profil local temporaire est créé en
copiant localement le profil Defaut User.

✔ Un utilisateur ne possède Un profil local sera créé pour l'utilisateur


ni de profil local, en recopiant un modèle
ni de profil itinérant.  le modèle « Default User » stocké
sur le partage netlogon du DC,
 ou le modèle « Default User » de la
station de travail si il n'y en a pas
09/03/2014 dans le partage netlogon. 97
Profils et fermeture de session dans le domaine: quelques règles

Lors d'une fermeture de session:


✔ Lors d'une fermeture de session, le profil local d'un utilisateur du domaine est archivé via
réseau vers le partage (si il est défini) qui lui est attribué pour stocker son profil itinérant.
✔ Un profil d'un utilisateur du domaine ne pourra être localement détruit que si il a été sauvé
avec succès vers le partage qui lui a été attribué pour stocker son profil itinérant.
✔ La configuration par défaut pour les postes de travail est:
 Sous Win 2000 Pro, le profil local est conservé après sa sauvegarde dans le partage
attribué à l'utilisateur pour stocker son profil itinérant.
 Sous Win XP Pro, Vista Pro, Seven Pro, le profil local est détruit après sa
sauvegarde dans le partage attribué à l'utilisateur pour stocker son profil itinérant.
✔ Pour qu'une station Win 2000 Pro détruise systématiquement le profil local à la fermeture
d'une session, exécuter le fichier suivant pour modifier la base de registres

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"DeleteRoamingCache"=dword:00000001

09/03/2014 98
Profils et performance ?

Constats:

Un profil peut très rapidement devenir volumineux

Risque d'encombrement du disque local de la station de travail ou


surcharge réseau lors des ouvertures et fermetures de session

La gestion des profils sera critique
 Si de nombreux utilisateurs se partagent l'utilisation de plusieurs stations.
 Si les ouvertures et fermetures de session ne sont pas étalées dans le temps.
✔ Quelques pistes de solution:
 Utiliser des stratégies interdisant l'utilisation du répertoire spécial « Mes Documents »,
 Mettre à jour la base de registre dans la station de travail pour modifier les mécanismes
de transfert de profils (pas évident),
 Utiliser des profils obligatoires.

Une expertise au sujet de la gestion des profils permettra d'optimiser le


fonctionnement du réseau.
09/03/2014 99
Les unités organisationnelles

Utilités ?
 Donner le contrôle d'un ensemble de comptes et de machines à un ensemble
d'utilisateurs pour, par exemple, réinitialiser des mots de passe.

Limiter la portée des compétences d'administration dans un


domaine à un sous-ensemble d'utilisateurs ou de machines.

Solution de délégation d'administration.

 Imposer des contraintes environnementales différentes par groupe


d'utilisateurs pour, par exemple,
 durcir les règles de mots de passe pour certains utilisateurs,

 paramétrer différemment les bureaux,

 etc...

Stratégie de groupe (GPO) appliquée à des sous-ensemble


d'utilisateurs ou de machines.

09/03/2014 100
Aucune OU
n'est définie.

09/03/2014 101
Utilisateurs rangés dans 2 groupes locaux
09/03/2014 102
09/03/2014 103
Ajout d'un nouveau domaine
dans un arbre existant

09/03/2014 104
AD: Ajout d'un sous domaine dans un arbre ou une forêt

Pré-requis:

✔ Pré-installer Win2008 sur un nouveau serveur.


✔ Etablir les routes IP entre les domaines existants de la forêt et
le nouveau serveur à promouvoir comme DC.
✔ Planifier une configuration DNS entre les domaines parent et
enfant:

Ajouter le rôle DNS dans le nouveau serveur à promouvoir comme DC.
 Déclarer le futur 1er DC du domaine enfant comme étant
son propre serveur DNS (127.0.0.1).
 Définir le nom du nouveau DC ainsi que la zone primaire DNS
du sous-domaine à créer.

Une délégation DNS du domaine parent vers le domaine enfant.

Un « forward DNS » du domaine enfant vers le domaine parent.
09/03/2014 105
Configuration des noms et adresse IP du nouveau serveur

09/03/2014 106
Installation d'un serveur DNS avant promotion d'un DC

09/03/2014 107
Installation d'un serveur DNS avant promotion d'un DC

09/03/2014 108
Installation d'un serveur DNS avant promotion d'un DC

09/03/2014 109
Installation d'un serveur DNS avant promotion d'un DC

09/03/2014 110
Installation d'un serveur DNS avant promotion d'un DC

09/03/2014 111
Installation d'un serveur DNS avant promotion d'un DC

09/03/2014 112
Installation d'un serveur DNS avant promotion d'un DC

09/03/2014 113
Installation d'un serveur DNS avant promotion d'un DC

Le service DNS
est installé.

09/03/2014 114
Installation d'un serveur DNS avant promotion d'un DC

Réservation d'une nouvelle zone DNS


09/03/2014 115
Installation d'un serveur DNS avant promotion d'un DC

09/03/2014 116
Installation d'un serveur DNS avant promotion d'un DC

La zone primaire DNS sera définie dans


un fichier.

09/03/2014 117
Installation d'un serveur DNS avant promotion d'un DC

09/03/2014 118
Installation d'un serveur DNS avant promotion d'un DC

Pour éditer les définitions d'adresses


dans le fichier de zone DNS.

09/03/2014 119
Installation d'un serveur DNS avant promotion d'un DC

09/03/2014 120
Délégation et redirection DNS

redirection DNS

Zone DNS
firme.be pc2.firme.be ?

pc1.ventes.firme.be ? pc1.ventes.firme.be ?

Délégation DNS

Domaine firme.be Zone DNS


ventes.firme.be

pc2.firme.be ?

09/03/2014 Domaine ventes.firme.be 121


Autorisation du transfert de zone par le DNS du domaine enfant

09/03/2014 122
Redirection DNS vers un domaine parent

09/03/2014 123
Redirection DNS vers un domaine parent

Adresse IP du DNS du domaine


parent.

Utiliser les serveurs DNS racine dans le


cas d'absence de forward

09/03/2014 124
Délégation DNS vers un zone d'un domaine enfant

09/03/2014 125
Délégation DNS vers un zone d'un domaine enfant

09/03/2014 126
Délégation DNS vers un zone d'un domaine enfant

09/03/2014 127
Délégation DNS vers un zone d'un domaine enfant

09/03/2014 128
Délégation DNS vers un zone d'un domaine enfant

09/03/2014 129
Promotion d'un DC dans un domaine enfant

Désactiver le firewall dans le DC parent via la configuration avancée.

09/03/2014 130
Promotion d'un DC dans un domaine enfant

09/03/2014 131
Promotion d'un DC dans un domaine enfant

09/03/2014 132
Promotion d'un DC dans un domaine enfant

Préciser le compte et le mot de


passe d'un administrateur du
domaine parent.

09/03/2014 133
Promotion d'un DC dans un domaine enfant

Nom NetBios du domaine enfant.

09/03/2014 134
Promotion d'un DC dans un domaine enfant

Préciser si le nouveau DC est dans le


même site ou un nouveau.
09/03/2014 135
Préciser si il faut activer un catalogue global dans le DC.
Promotion d'un DC dans un domaine enfant

09/03/2014 136
Promotion d'un DC dans un domaine enfant

09/03/2014 137
Promotion d'un DC dans un domaine enfant

09/03/2014 138
Promotion d'un DC dans un domaine enfant

Entrée en session sur un poste de travail:

Liste des noms de domaines (NetBios)


pouvant être utilisé pour engager une
authentification.

Remarque:

Sous Vista Pro ou Seven Pro, le nom de compte devra être spécifié sous la forme:
 Nom_de_domaine_Netbios\nom_de_compte
 nom_de_compte@nom_de_domaine_DNS
 nom_de_compte
Dans ce cas, c'est le Catalog Global qui
09/03/2014 permettra de déterminer le domaine dans lequel 139
le compte est défini.
Gestion des sites

Et

Des réplications

09/03/2014 140
AD : Site ?

Site ?
Ensemble de sous-réseaux qui communiquent entre eux à haut débit.

Comment définir et gérer les sites ?


Avec l'outil d'administration « Active Directory and Services »

Le site « Default First Site Name » est défini automatiquement


lors de la création du premier domaine d'une forêt.
Il peut être renommé.

Les
09/03/2014différents contrôleurs de domaine seront répertoriés 141
dans les différents sites.
AD: Domaines et Sites

Domaine firme.be Domaine firme.be

Réplication
dc1.firme.be Réplication lente dc3.societe.fr
lente

Site1

ws1.firme.be ws2.firme.be ws1.societe.fr ws2.societe.fr


Liaison
lente

dc2.firme.be dc4.societe.fr

Site2

09/03/2014 ws3.firme.be ws4.firme.be ws4.societe.fr ws4.societe.fr 142


AD: Réplication inter-sites ?

ws1.firme.be ws2.firme.be ws3.firme.be ws4.firme.be

dc1.firme.be dc2.firme.be

4 réplications
Liaison

lentes ?
lente

dc3.firme.be dc4.firme.be

09/03/2014 ws7.firme.be 143


ws5.firme.be ws6.firme.be ws8.firme.be
AD: Comment limiter les réplications inutiles inter-sites ?

Réplications intra-site:

A l'intérieur d'une même site, les DCs d'un même domaine peuvent continuer à se
répliquer librement entre eux (toutes les 5 minutes).
Réplications inter-sites:
Les réplications étant transitives (effet en cascade), on peut envisager de limiter les flux
de réplications pour les DCs d'un même domaine entre des sites différents.

Comment ?
En utilisant l'outil d'administration « Active Directory Sites and Services »
Cet outil permet :

1. Définir chaque site

2. Définir chaque sous-réseau en les affectant dans un site

3. Ranger les contrôleurs de domaines dans les différents sites

4. Définir les liens de réplications inter-sites.


09/03/2014 144
Sites: Ajout de sites

Panneau d'ajout d'un site

Liste des sites ajoutés

09/03/2014 145
Sites: Ajout des sous-réseaux

Panneau pour définir des


sous-réseaux en les
associant à un site.

Liste des
sous-réseaux

09/03/2014 146
Sites: Déplacer les DC dans les sites

09/03/2014 147
Site: Définir les liens de réplication entre DC

En définissant les liens entre contrôleur de domaines,


il est possible de contrôler et donc d'optimiser
09/03/2014
les flux de réplications en fonction de la topologie. 148
Ajout d'un nouveau DC

dans un

domaine existant

09/03/2014 149
Ajout d'un nouveau DC dans un domaine existant

Etape 1: Installer un nouveau serveur, lui attribuer un nom et une configuration TCP/IP.

09/03/2014 150
Ajout d'un nouveau DC dans un domaine existant

09/03/2014 151
Ajout d'un nouveau DC dans un domaine existant

09/03/2014 152
Ajout d'un nouveau DC dans un domaine existant

Préciser le compte et le mot de passe


de l'administrateur du domaine.

09/03/2014 153
Ajout d'un nouveau DC dans un domaine existant

Sélection du domaine de la forêt


pour lequel ajouter un nouveau DC.

Sélection du site dans lequel le nouveau DC


sera incorporé.

09/03/2014 154
Ajout d'un nouveau DC dans un domaine existant

Préciser si le nouveau DC doit


● Etre serveur DNS

● Intégrer un Global Catalog

● Etre seulement Read Only DC

09/03/2014 155
Ajout d'un nouveau DC dans un domaine existant

09/03/2014 156
Ajout d'un nouveau DC dans un domaine existant

09/03/2014 157
Ajout d'un nouveau DC dans un domaine existant

09/03/2014 158
Ajout d'un nouveau DC dans un domaine existant

09/03/2014 159
Désinstallation de l'Active Directory

09/03/2014 160
Désinstallation de l'Active Directory

09/03/2014 161
Désinstallation de l'Active Directory

09/03/2014 162
Désinstallation de l'Active Directory

09/03/2014 163
Désinstallation de l'Active Directory

09/03/2014 164
AD: DNS après entrée en session

L'enregistrement avec l'adresse IP


de la station est mis à jour
09/03/2014 dynmiquement. 165
Jonction d'un ordinateur à un domaine

✔ Après avoir redémarré la station de travail, le panneau


d'entrée en session proposera 3 champs:
✔ Une zone pour introduire le nom de compte,

✔ Une zone pour introduire le mot de passe,

✔ Une liste déroulante proposant d'entrer en session

✔ Sur le domaine: Le contrôle de l'accès à la station sera

pris en charge pour l'Active Directory.


✔ Sur la machine locale: Le contrôle de l'accès à la

station sera réalisé avec l'aide de la SAM locale.

09/03/2014 166
AD: DNS et entrée en session sur le domaine

L'entrée en session dans le domaine au départ d'une station


de travail se traduit par une transaction de mise à jour du DNS.
1. Négociation DHCP
Win 2003 Server – AD – DNS - DHCP
DHCP: DISCOVERY
4. Mise à jour DNS DHCP: OFFER
notebook1.societe.be
DHCP: REQUEST a.b.c.d
DHCP: ACK

2. Encodage du
compte et du mot de
passe du domaine
Domaine
AD: Je suis notebook1
Windows 2003 et j'ai l'adresse IP a.b.c.d. 3. Requête pour
AD: Adresse IP de la une mise à jour
station enregistrée dynamique du DNS
DNS: IP du controleur et annoncer
de domaine ? l'adresse IP de la
DNS: IP d'un contrôleur station.
de domaine
AD: Compte
09/03/2014 5. Défi réponse après
167
Adresse IP fixe (ou automatique) Défi mise à jour du DNS
Réponse
AD: DNS et entrée en session sur le domaine

L'accès à un serveur DNS sous Win 2003 est incontournable


avec l'Active Directory pour:
✔ Permettre d'enregistrer le nom et l'adresse IP de la
station dans le DNS (mise à jour du voisinage réseau).
✔ Pour obtenir l'adresse IP du contrôleur de domaine dans
le réseau local.
Si l'adresse IP du serveur DNS est mal déclarée
dans le client, l'entrée en session s'éternise !!!

09/03/2014 168
Paramétrisation
sous Windows
✔ La base de registres
✔ Les profils

05/02/2014
M. Villers – F. Lenartowski 1
Paramétrisation: historique

✔ Sous DOS et Windows 2.x et 3.x, la paramétrisation


était assurée avec des fichiers ASCII (suffixe .ini)
Exemples: win.ini, system.ini, control.ini
✔ Par souci d'indépendance, quelques logiciels
continuent à utiliser ce type de paramétrisation.
Exemples: Fichier de configuration de WS_FTP
[skynet]
HOST=users.skynet.be
UID=michel.villers
PASVMODE=1
TIMEOFFSET=0
rdir0="/"
ldir0=C:\Program Files\WS_FTP
[Bd Kennedy]
HOST=bdkd.hepmbc.be
UID=villers
TYPE=6010
PASVMODE=1
TIMEOFFSET=0
05/02/2014
M. Villers – F. Lenartowski 2
Raisons de l'abandon des fichiers .ini

✔ Inadapté à la complexité des systèmes d'exploitation


Win 95/98 et Win NT.
✔ Besoin de globaliser et hiérarchiser la configuration
du système d'exploitation et des logiciels installés.
✔ Besoin de disposer d'un outil de paramétrisation
pratique et extensible.

05/02/2014
M. Villers – F. Lenartowski 3
Base de registres ?

✔ Base de données hiérarchique contenant des paramètres


décrivant les comptes utilisateurs, le matériel installé, les
applications.
✔ Les paramètres sont enregistrés dans différents fichiers
appelés « ruches ».
✔ Le format de codification des « ruches » n'est pas lisible
(ASCII) et nécessite l'utilisation de logiciels d'édition
spécifiques.
✔ Jusque Win2000, on pouvait utiliser 2 versions
✔ regedit (plus convivial)
✔ regedt32 (plus pointu)

✔ Depuis Win XP, les 2 versions son unifiées (regedit).

05/02/2014
M. Villers – F. Lenartowski 4
Regedit sous Win 2000

5 sous-arbres principaux:

✔ HKEY_CLASSES_ROOT
✔ HKEY_CURRENT_USER

✔ HKEY_LOCAL_MACHINE

✔ HKEY_USERS

✔HKEY_CURRENT_CONFIG

05/02/2014
M. Villers – F. Lenartowski 5
Regedt32 sous Win 2000 (abandonné sous XP)

05/02/2014
M. Villers – F. Lenartowski 6
Base de registre: Structure logique

✔ La base de registre à une structure logique


étrangement comparable à un système de fichiers.
✔ L'icône de dossier ne représente par un répertoire
physique mais un regroupement de paramètres
appelé sous-arbre.

05/02/2014
M. Villers – F. Lenartowski 7
Le sous-arbre HKEY_LOCAL_MACHINE

Contient des paramètres sur


✔ Le matériel installé,

✔ Le système d'exploitation

✔ Les logiciels installés

✔ La sécurité

✔ Ce sous-arbre est aussi désigné par l'abréviation HKLM


05/02/2014
M. Villers – F. Lenartowski 8
Le sous-arbre HKEY_CURRENT_USER

Contient des paramètres sur


✔ L'utilisateur actuellement

connecté,
✔ Ses préférences,

✔ Son bureau,

✔ Ses options lors de

l'utilisation d'un logiciel,


✔ etc...

✔ Ce sous-arbre est aussi désigné par l'abréviation HKCU


05/02/2014
M. Villers – F. Lenartowski 9
Le sous-arbre HKEY_USERS

✔ Contient les paramètres


décrivant les préférences de
chaque utilisateur.
✔ DEFAULT décrit le
comportement de la machine
quand aucune session n'est
ouverte.

05/02/2014
M. Villers – F. Lenartowski 10
Le sous-arbre HKEY_CLASSES_ROOT

✔ Contient des associations


précisant les applications à
utiliser pour exploiter un fichier
en fonction du suffixe.
✔ Les paramètres de la base de
données OLE.
✔ Redondance dans le sous-arbre
HKEY_LOCAL_MACHINE

✔ Ce sous-arbre est aussi désigné par l'abréviation HKCR


05/02/2014
M. Villers – F. Lenartowski 11
Le sous-arbre HKEY_CURRENT_CONFIG

✔ Regroupe des informations


relatives à la configuration
matérielle spécifique avec
laquelle on a démarré.

✔ Ce sous-arbre est aussi désigné par l'abréviation HKCC


05/02/2014
M. Villers – F. Lenartowski 12
Clé de registre

✔ Une clé de registre est caractérisée par


✔ Un nom

✔ Un type de donnée

✔ Une valeur

✔ Les types de données reconnus sont


✔ REG_BINARY: Entier représenté en hexadécimal.

✔ REG_DWORD: Entier sur 4 octets.

✔ REG_EXPAND_SZ: chaîne de caractères de taille

variable.
✔ REG_MULTI_SZ: Autre type de chaîne de

caractères permettant de combiner plusieurs


paramètres.
✔ REG_SZ: Simple chaîne de caractères.

05/02/2014
M. Villers – F. Lenartowski 13
Edition de la base de registre = danger !

✔ L'édition de la base de registre est une opération


délicate qui n'est pas sans risque.
✔ L'effet du changement d'un paramètre est instantané.

✔ En cas de « plantage » sous Win 2003, redémarrer en


appuyant sur la touche F8 et choisir l'option « bonne
configuration connue ».

05/02/2014
M. Villers – F. Lenartowski 14
Recherche dans la base de registre

Possibilité de localiser une


clé sur
✔ Son nom

✔ Ses valeurs

✔ Ses données

05/02/2014
M. Villers – F. Lenartowski 15
Intérêts d'utiliser l'éditeur de registre ?

✔ L'administration d'un système via l'interface graphique est


limitée. Certaines actions ne peuvent être réalisées que
via l'éditeur de registre.
✔ L'éditeur de registre permet de modifier les paramètres
sur un ordinateur distant.
✔ Win 2003 propose des programmes nommés regini.exe
et reg.exe permettant d'écrire des scripts très puissant
modifiant la base de registre.

05/02/2014
M. Villers – F. Lenartowski 16
Base de registre: importation, exportation, connexion

Possibilité d'importer ou
d'exporter la base de
registre vers un fichier texte

Possibilité de mettre à jour


la base de registre d'un
équipement distant

05/02/2014
M. Villers – F. Lenartowski 17
Utilisation de regedit en ligne

✔ La commande regedit peut être utilisée pour recharger ou


réinitialiser des clés de la base de registre.
✔ Exemple:
C:> regedit /s fichier.reg

Paramètre non documenté


permettant d'éviter l'affichage de
messages

✔ Format d'un fichier .reg:


Windows Registry Editor Version 5.0

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion]
«RegisteredOrganization»=«HEPMBC»
« NumberOfLicences »=dword:00000003\

05/02/2014
M. Villers – F. Lenartowski 18
Localisation des ruches

✔ Les ruches sont stockées dans

✔ %windir%\system32\config
✔ SAM et SAM.LOG

✔ SECURITY et SECURITY.LOG

✔ SOFTWARE et SOFTWARE.LOG

✔ SYSTEM et SYSTEM.ALT

✔ \Documents and Settings\username


✔ NTUSER.DAT

✔ Remarque: Sous Active Directory, le fichier SAM


n'existe pas.

05/02/2014
M. Villers – F. Lenartowski 19
Les ruches du noyau de la base de registre

05/02/2014
M. Villers – F. Lenartowski 20
Les fichiers journaux et sauvegardes

✔ Le suffixe .log désigne le fichier journal associé à une


ruche. Ces fichiers répertorient les modifications
apportées au fichiers originaux d'une ruche.
✔ system.alt est la réplique du fichier-ruche system
pouvant être utilisé si le fichier original est endommagé.

05/02/2014
M. Villers – F. Lenartowski 21
Autorisations sur le base de registre

✔ Des ACL sont associées aux « dossiers » de la base de


registre afin d'éviter des manipulations de la part de
personnes mal intentionnées.
✔ Sous Win2000, les ACL dans la base de registre peuvent
être redéfinies avec regedt32.
✔ Depuis l'unification de regedit et regedt32 sous XP et Win
2003, les ACL dans la base de registre peuvent être
redéfinies en cliquant sur le bouton droit.

05/02/2014
M. Villers – F. Lenartowski 22
Exemple d'ACL d'un sous-arbre de la base de registre

05/02/2014
M. Villers – F. Lenartowski 23
Connexion à une base de registre

Base de registre de
l'ordinateur 192.168.1.121

Référence de
l'ordinateur distant

05/02/2014
M. Villers – F. Lenartowski 24
Profil utilisateur ?

✔ Personnalisation du bureau et des applications pour


un utilisateurs:
✔ Choix des polices,

✔ Couleurs,

✔ Raccourcis,

✔ Type de démarrage des applications,

✔ Menus pour lancer les applications,

✔ Fichiers temporaires,

✔ etc...

Un profil mobilise un répertoire de travail sur le


disque dur utilisé pendant une session
Windows.
05/02/2014
M. Villers – F. Lenartowski 25
Stockage des profils
✔ Sous NT, les profils étaient stockés dans le répertoire racine
%SYSTEMROOT%\PROFILES.
✔ Depuis Win 2000, les profils sont stockés dans un répertoire
intitulé « Documents and Settings » dans le même lecteur que
celui utilisé par le système d'exploitation.
✔ Depuis Win 7, les profils sont stockés dans un répertoire
intitulé « Users » (Utilisateurs).
✔ Sur une station de travail isolée, chaque utilisateur local détiendra un
profil appelé profil local.

✔ 2 profils spéciaux sont aussi présents:


✔ Le profil « All Users » (Public depuis Win7) commun à tous les

utilisateurs,
✔ Le profil « Default User » (Default depuis Win7) qui est utilisé

comme moule de base pour créer les nouveaux profils.

05/02/2014
M. Villers – F. Lenartowski 26
Stockage des profils

4 profils locaux dont


2 spéciaux

05/02/2014
M. Villers – F. Lenartowski 27
Les différents dossiers d'un profil

Le profil se compose de
répertoires prédéfinis ayant
chacun une fonction
particulière

Ruche contenant les


paramètres de la base de
registre spécifique à un
utilisateur
(HKEY_CURRENT_USER)
05/02/2014
M. Villers – F. Lenartowski 28
Profil: Le dossier Application Data

Sous-répertoires contenant
des fichiers préférentiels
spécifiques à l'utilisateur
lorsqu'il utilise une
application déterminée
05/02/2014
M. Villers – F. Lenartowski 29
Profil: Le dossier Bureau

Raccourcis personnels
d'un utilisateur devant
appraître sur le bureau
de l'utilisateur.

05/02/2014
M. Villers – F. Lenartowski 30
Profil: Le dossier Cookies

Cookies créés par


Internet Explorer et
spécifiques à un
utilisateur.

05/02/2014
M. Villers – F. Lenartowski 31
Profil: Le dossier Documents

Dossier dans lequel est


proposé par défaut le
stockage des documents
de l'utilisateur

05/02/2014
M. Villers – F. Lenartowski 32
Profil: Le dossier Local Settings

Dossier du profil servant à


représenter des fichiers
temporaires de l'utilisateur
locaux à la station. Ce contenu
n'est pas itinérant.

05/02/2014
M. Villers – F. Lenartowski 33
Profil: Le dossier Historique

Dossier contenant l'historique


des URLs lancés par
l'utilisateur.

05/02/2014
M. Villers – F. Lenartowski 34
Profil: Le dossier Temp

Contient des sous-dossiers


avec des fichiers temporaires
générés par les applications
que l'utilisateur a exploitées.

05/02/2014
M. Villers – F. Lenartowski 35
Profil: Le dossier Temporary Internet Files

Dossier utilisé comme


« cache » d'Internet
Exploreur. Copie du contenu
web visité par l'utilisateur.
05/02/2014
M. Villers – F. Lenartowski 36
Profil: Le dossier Mes documents récents

Liste des documents et


dossiers récents à afficher
dans la fenêtre surgissante
associée au bouton
démarrer.

05/02/2014
M. Villers – F. Lenartowski 37
Profil: Le dossier Menu Démarrer

Dossier décrivant la liste


hiérarchique des raccourcis
des programmes dans le
menu surgissant
« programmes »

05/02/2014
M. Villers – F. Lenartowski 38
Profil: Le dossier Modèles

Dossier contenant les


modèles de fichier
préferentiels de l'utilisateur
pour diverses applications.

05/02/2014
M. Villers – F. Lenartowski 39
Profil: Le dossier SendTo

Liste des options du


menu Envoyer

05/02/2014
M. Villers – F. Lenartowski 40
Profil: Le dossier Voisinage Réseau

Liste des raccourcis vers


les différentes partages
réseau favoris de
l'utilisateur.

05/02/2014
M. Villers – F. Lenartowski 41
Contenu d'un profil: Synthèse

Un profil utilisateur contient donc:

✔ Des dossiers pour le rangement des fichiers spécifiques


à l'environnement de travail de l'utilisateur.
✔ Un fichier ruche correspondant au sous-arbre
HKEY_CURRENT_USER de la base de registres. Ce
fichier contient des paramètres personnalisant
certaines fonctionnalités du système d'exploitation ou
des applications pour l'utilisateur.
✔ Un dossier « Mes Documents » pour le rangement
des documents de l'utilisateur.
Problème: La taille du profil peut rapidement devenir
excessive si elle sert à héberger les documents de
05/02/2014 l'utilisateur.
M. Villers – F. Lenartowski 42
Le gestionnaire de profils

Accessible via l'onglet


avancé des propriétés
du poste de travail.

05/02/2014
M. Villers – F. Lenartowski 43
Liste des profils utilisateurs

Possibilité de
modifier le type,
supprimer ou copier
un profil utilisateur

05/02/2014
M. Villers – F. Lenartowski 44
Réseau Windows
✔ Groupe de travail et Domaine
✔ NetBIOS et TCP/IP
✔ Voisinage réseau
✔ Gestionnaires de compte
✔ Explorateur Windows
✔ Partage et sécurité
✔ Partition FAT32 et NTFS 1
Les modèles de réseaux Microsoft

Le modèle « Peer-to-Peer »

Le modèle « Client/Serveur »

2
Comparaison des modèles

Le modèle Peer-to-Peer:

✔ Pour des petites infrastructures (moins de 10 WorkStations)


✔ Facile à configurer et administrer

✔ Lourd à administrer si accroissement du nombre de postes de

travail.
✔ Sécurité élémentaire et globalisée
Cette restriction rend ce modèle
inapproprié pour le monde professionnel
✔ Pas optimisé pour partager des ressources entre un grand
nombre de clients Performance volontairement réduite pour
justifier commercialement le modèle
client/serveur
✔ Coût réduit car pas d'équipement dédicassé 3
Comparaison des modèles

Le modèle Client/Serveur:

✔ Pour des grandes infrastructures (plus de 10 WorkStations)

✔ Configuration nécessitant plus d'expertise


✔ Permet un meilleur contrôle du réseau
✔ Sécurité évoluée et individualisée
Plus grande latitude de configuration
de sécurité.
✔ Partage des ressources optimisés

✔ Nécessite des équipements dédicassés plus coûteux


(serveurs) 4
Workgroup ?

Workgroup (Groupe de travail):


Organisation dans un réseau consistant
✔ à fédérer des stations de travail

✔ décentraliser l'administration des ressources et la

sécurité entre stations d'un même groupe


Chaque utilisateur d'une station de travail
est responsable de ce qu'il fait
Cette organisation devient très vite difficile à gérer en
cas
✔ d'accroissement du nombre d'ordinateurs et

d'utilisateurs
✔ En présence d'utilisateurs itinérants

Remarque: Il est possible de faire cohabiter plusieurs 5


groupes de travail sur un même réseau physique.
Domaine ?

Domaine:
Organisation dans un réseau consistant
✔ à rattacher des stations de travail à un (ou plusieurs)

serveur
✔ recentrer l'administration des utilisateurs, de leurs

ressources et de la sécurité vers ces serveurs


Organisation plus rigide et plus robuste

Dans ce type d'organisation, on pourra distinguer


plusieurs catégories de serveurs:
✔ Contrôleurs de domaine

✔ Serveurs de fichier

✔ Serveurs d'application
6
Contrôleur de domaine ?

Serveur chargé d'organiser la sécurité possédant


✔ La définition des comptes-utilisateur

✔ Les environnements de travail (profils ?)

✔ Leurs privilèges

Concept introduit avec Windows NT (1994) et caractérisé par


l'utilisation d'un fichier nommé SAM (Security Account
Manager)
Un contrôleur de domaine ne doit pas nécessairement
disposer d'une grande capacité de stockage.
La mémoire vive et le processeur peuvent cependant
être fortement sollicités.
Remarque:
Le dédoublement du contrôleur de domaine et de ses informations
de contrôle doit absolument être envisagé de manière à garantir la
disponibilité de l'accès aux ressources du réseau. 7
Serveur de fichier ?

Serveur chargé de stocker


✔ les différents fichiers de données des utilisateurs,

✔ les différents logiciels pouvant être distribués aux

stations de travail.
✔ Le code exécutable des logiciels est transféré vers
les stations.
✔ L'exécution est décentralisée.

La sécurité des serveurs de fichiers est gérée par le


contrôleur de domaine.

✔ Le serveur de fichier doit avoir une grande capacité


de stockage.
✔ Le serveur de fichier doit être équipé d'une ou de
plusieurs cartes réseaux performantes. 8
Serveur d'application ?

Serveur détenant
✔ différents logiciels pouvant être utilisés à distance par

les clients.
✔ Le code exécutable des logiciels est exécuté sur le
serveur à la demande des stations clientes.
✔ L'exécution est centralisée.
Exemples d'application:
✔ Serveur de base de données (SQL Server, Oracle,

etc...)
✔ Serveur Web, serveur Proxy

✔ Serveur de messagerie

✔ Un serveur d'application doit posséder une grande


mémoire centrale.
✔ Un serveur d'application doit disposer d'une grande
puissance de calcul (CPU rapide, carte-mère multi- 9
processeurs, etc...)
NetBIOS ?

✔ Network Basic Input/Output System.


✔ API (Application Programming Interface) introduite en 1984
par IBM pour organiser dans un réseau l'accès à des
partages distants.
✔ Caractérisé sous DOS par les commandes
C:\> net view
C:\> net use
C:\> nbtstat
permettant de
✔ voir les partages dans le réseau,

✔ contrôler l'accès à un partage,

✔ accèder à la liste des ordinateurs, des groupes et des

services opérationnels sur le réseau


10
NetBIOS: Format d'un nom

✔ Un nom NetBIOS a pour objectif historique de différencier


les ordinateurs dans un réseau local.
✔ Dans un même groupe de travail (workgroup), les noms
des stations doivent être différents.
✔ Les noms NetBIOS et noms de groupe sont limités à 15
caractères.
✔ Un nom NetBIOS peut se composer de
✔ Minuscules ou majuscules (non case-sensitive),

✔ De chiffres,

✔ Des caractères spéciaux suivants: !@#$%^&()-'{}.~

✔ Un nom NetBIOS est choisi arbitrairement et ne doit pas


respecter de hiérarchie comme avec le DNS.
✔ L'usage du point dans un nom NetBIOS est à proscrire 11
pour éviter les confusions avec les noms DNS.
UNC ?

✔ Universal Naming Convention

✔ Convention syntaxique définie par Microsoft pour


adresser une ressource dans un réseau Windows

✔ Format UNC pour atteindre un partage réseau:

\\serveur\partage

✔ Format UNC pour atteindre un fichier sans utiliser une


lettre de lecteur réseau

\\serveur\partage\chemin\fichier
12
Exemple d'utilisation de « net use »

C:\> net use L: \\serveur\partage

Pour associer à un partage une lettre de lecteur


réseau.

C:\> net use L: /DELETE

Pour supprimer une lettre de lecteur réseau.

13
Netbeui ?

✔ NetBIOS Extended User Interface

✔ Protocole de transport conçu spécialement en 1985 par


IBM pour assurer l'acheminement des requêtes de l'API
NetBIOS sur un réseau local.
✔ Protocole de transport installé par défaut avec
« Windows for Workgroups » (Win 3.11 - 1993).
✔ Netbeui utilisant les chaînes de caractères des noms
NetBIOS comme adresse logique, le caractère arbitraire
et non-hiérarchique des adresses le rend non-routable.
✔ L'utilisation de Netbeui étant limitée à un réseau local,
ce protocole sera abandonné au profit de TCP/IP au
milieu des années 90. 14
NetBIOS/Netbeui

alpha beta gamma

NetBIOS NetBIOS NetBIOS


Voisinage
réseau, partage, Requete
accès partage NetBios
distant. Requete
NetBios

Netbeui Netbeui Netbeui

Requete Entête
Couche NetBios Netbeui
Entête
transport Netbeui
Requete
NetBios

Requete
alpha gamma
NetBios
Entête Netbeui
15
Partage réseau uniquement dans un réseau local
NetBIOS / TCP/IP

alpha delta

NetBIOS NetBIOS
Voisinage
réseau, partage, Requete
accès partage NetBios
Requete
distant. Couche NetBios
TCP/UDP routage TCP/UDP

Couche 192.168.1.2 192.168.1.1 192.168.2.1 192.168.2.2


transport
IP Requete IP IP
NetBios Entête IP

Entête IP Requete
NetBios

Requete
192.168.1.2 192.168.2.2
NetBios
Entête IP
16
Partage réseau entre des réseaux locaux
Voisinage réseau ?

✔ Concept développé par Microsoft pour rendre conviviale


l'utilisation des partages en réseau
✔ Principes:
✔ Affichage des groupes de travail

✔ Affichage des noms NetBIOS des stations dans un groupe


de travail
✔ Affichage des partages proposés par une station de travail

✔ Remarque:
✔ La mise à jour des listes de groupes de travail et des noms
des stations doit être automatisée afin que cette facilité soit
disponible dans un réseau sans serveur (modèle peer-to-
peer) 17
Nom NetBIOS, adresse IP, nom DNS

Nom NetBIOS:
✔ Ce nom est configuré dans un poste Windows par le biais
d'une assignation manuelle via un onglet ouvert avec les
propriétés du poste de travail.
✔ La personne chargée de la configuration des postes de
travail doit absolument choisir des noms différents.
Adresse IP:
✔ Adresse décimale pointée configurée manuellement ou
attribuée via DHCP au poste de travail.

Nom DNS:
✔ Nom hiérarchique enregistré manuellement dans un
fichier de zone d'un serveur DNS par l'administrateur
réseau. 18
Negociation Netbios – résolution Netbios

✔ Avec l'encapsulation de NetBIOS sur TCP/IP, il


s'avère nécessaire d'organiser l'association d'un nom
NetBIOS avec l'adresse IP configurée:
1.La négociation NetBIOS est un mécanisme
permettant à une station
• de signaler sa présence dans le réseau en vérifiant

qu'il est bien unique.


• d'enregistrer son nom dans une « liste de

pointage ».
2.La résolution NetBIOS est un mécanisme permettant
à une station cliente d'obtenir l'adresse IP d'une
station ciblée avec son nom NetBIOS.
✔ Name Bios Name Server: Serveur chargé d'arbitrer
les négociations de nom NetBIOS et leur résolution. 19
NetBIOS: Négociation d'un nouveau nom NetBIOS

✔ Lorsqu'une station démarre dans un réseau, elle doit


négocier l'utilisation de son nom NetBIOS.
Scénario sans serveur NBNS:
1.La station qui démarre envoie une requête de diffusion pour signaler sa
présence sur le réseau avec son nom NetBIOS et demander si elle peut être
active avec ce nom.
2.Si une station dans le réseau utilise déjà ce nom NetBIOS, cette dernière lui
adresse un refus.

Scénario avec serveur NBNS:


1.La station qui démarre envoie une requête au serveur NBNS pour signaler
sa présence sur le réseau avec son nom NetBIOS et demander si elle peut
être active avec ce nom.
2.Le serveur NBNS enregistre l'adresse IP et le nouveau nom NetBIOS de la
nouvelle station dans une table en mémoire ou retourne un refus à la
nouvelle station d'être active dans le réseau avec ce nom.
Remarque: La station doit connaître l'adresse IP du serveur NBNS. 20
NetBIOS: Résolution d'un nom NetBIOS

✔ Lorsqu'une station souhaite atteindre un partage sur


une station NetBIOS, elle doit obtenir son adresse IP.
Scénario sans serveur NBNS:
1.La station qui souhaite atteindre un partage sur une station NetBIOS envoie
une requête de diffusion pour obtenir l'adresse IP de cett station NetBIOS
cible.
2.La station détenant le nom NetBIOS cible répond à la station cliente en lui
délivrant son adresse IP.
Scénario avec serveur NBNS:
1.La station qui souhaite atteindre un partage sur une station NetBIOS envoie
une requête au serveur NBNS pour obtenir l'adresse IP de la station NetBIOS
cible.
2.Si le serveur NBNS détient dans sa table le nom de la station NetBIOS cible,
le serveur NBNS retourne à la station cliente l'adresse IP de la station cible.

Remarque: La station doit connaître l'adresse IP du serveur NBNS. 21


NetBIOS: Les différents type de noeuds

b-node (b=broadcast):
✔ Station utilisant uniquement la technique de la diffusion
pour négocier son nom NetBIOS ou réaliser une
résolution NetBIOS.

p-node (p=point à point):


✔ Station s'adressant à un serveur NBNS pour négocier
son nom NetBIOS ou réaliser une résolution NetBIOS.

22
NetBIOS avec ou sans NBNS ?

Sans NBNS (diffusion):


✔ Les négociations et résolution NetBIOS étant engagées avec des
requêtes de diffusion, la portée des noms NetBIOS sera limitée à
un réseau local.
✔ Chaque requête de diffusion engendre un traitement CPU dans

chaque station.
✔ Le voisinage réseau sera difficile à organiser (pas de liste

maintenue).
✔ Mise en oeuvre automatique.

✔ La négociation d'un nom NetBIOS nécessite un temps mort en

cas de non-refus.
Avec NBNS:
✔ Les négociations et résolution NetBIOS étant engagées vers un
serveur dédicassé, la portée des noms NetBIOS sera étendue au
delà d'un réseau local.
✔ Le voisinage réseau sera facile à organiser (liste maintenue) 23
✔ Mise en oeuvre automatique.
Comment cacher la présence d'une station dans le réseau ?
HKEY_CURRENT_USER\ SOFTWARE\ Microsoft\ Windows\ CurrentVersion\
Policies\ Network\NoEntireNetwork = « 1 »

24
NetBIOS: Les différents type de noeuds

m-node (m=mixed - Diffusion avant NBNS):


Priorité à l'utilisation des requêtes de diffusion
✔ Station négociant son nom NetBIOS par diffusion et en cas de
succès notifiant sa présence au serveur NBNS.
✔ Station engageant une résolution NetBIOS par diffusion et en cas
d'échec s'adressant au serveur NBNS.
h-node (h=hybrid – NBNS avant diffusion):
Priorité à l'utilisation du serveur NBNS
✔ Station négociant son nom NetBIOS en s'adressant d'abord à un
serveur NBNS. Si le serveur NBNS ne répond pas, la station
négociera son nom NetBIOS par diffusion.
✔ Station engageant une résolution NetBIOS en s'adressant d'abord
au serveur NBNS. Si le serveur NBNS ne répond pas, la station
engagera la résolution NetBIOS par diffusion.
25
Exploration réseau ?

L'exploration réseau est un mécanisme permettant de


visualiser
✔ la liste des groupes de travail ou domaines dans le réseau

local,
✔ La liste des noms NetBIOS des ordinateurs par groupe de

travail ou domaine.

La liste des noms NetBIOS des stations, des groupes de


travail ou domaines sera maintenue à jour dans la mémoire
RAM d'un équipement du réseau. Cet équipement sera
appelé:
✔ Serveur d'exploration,

✔ Explorateur ou explorateur maître (Master Browser).

Toute station Windows dont le partage de fichiers ou


d'imprimantes est activé devra cataloguer son nom 26
NetBIOS dans un master browser.
Choix de l'explorateur maître ?

L'ordinateur chargé d'assurer les fonctions d'explorateur


maître sera
✔ Élu dans un réseau sans serveur (réseau domestique,

réseau peer-to-peer).
✔ Imposé dans un réseau avec serveurs (réseau

d'entreprise). Dans ce cas on parlera de serveur WINS


(Windows Name Serveur).

Remarque: Dans un réseau Windows, les serveurs DHCP


sont en mesure de communiquer aux stations clientes
✔ Une adresse IP et un Netmask,

✔ Une adresse IP d'une passerelle,

✔ Une adresse IP d'un serveur DNS,

✔ Une adresse IP d'un serveur WINS.

27
Election d'un explorateur maître: Poids d'un OS

L'élection d'un explorateur maître est assurée avec un


critère de poids lié à l'Operating System:
✔ 1 pour Windows for Workgroups,

✔ 1 pour Windows 95/98/Me,

✔ 16 pour un Windows NT/2000/2003/XP ne jouant pas le

rôle de contrôleur de domaine,


✔ 32 pour un Windows NT/2000/2003 jouant le rôle de

contrôleur de domaine.

28
Type de ressources NetBIOS ?

Un équipement NetBIOS ne se contente pas d'annoncer


sa présence dans le réseau. Il précise aussi le type de
services ou d'activités qu'elle peut assurer.

Le type de ressource est un seizième octet ajouté


✔ à un nom NetBIOS

✔ à un nom de groupe ou de domaine

pour préciser ce qu'une station est en mesure d'assurer.

29
Nomenclature des types de ressources NetBIOS

Type de ressources NetBIOS:

00 Service station de travail


03 Service de message (Messenger Service)
06 Serveur RAS
1B Service explorateur maître de domaine
1D Nom de l'explorateur principal
1F Service NetDDE
20 Service de fichiers et d'impression
21 Service client RAS
BE Agent du moniteur réseau
BF Moniteur réseau
Type de ressources NetBIOS:

00 Groupe de station de travail standard


1C Serveur de connexion
1D Nom de l'explorateur maître
1E Nom normal de groupe lors d'un élection
20 Nom de groupe internet 30
La commande nbtstat

NBTSTAT [-a Nom Distant] [-A adresse IP] [-c] [-n]


[-r] [-R] [-RR] [-s] [S] [intervalle]

-a (état carte) Liste la table de noms de l'ordinateur distant (nom connu).


-A (état carte) Liste la table de noms d'ordinateurs distants (adresse IP).
-c (cache) Liste le cache de noms distant y compris les adresses IP.
-n (noms) Liste les noms NetBIOS locaux.
-r (résolus) Liste les noms résolus par diffusion et via WINS.
-R (Recharge) Purge et recharge la table du cache de noms distante.
-S (Sessions) Liste la table de sessions avec les adresses destination IP.
-s (sessions) Liste la table de sessions convertissant les adresses de
destination IP en noms d'hôtes NETBIOS.
-RR (ReleaseRefresh) Envoie des paquets de libération de nom à WINS puis
actualise

Nom Distant Nom de l'ordinateur hôte distant.


adresse IP Représentation décimale pointée de l'adresse IP.
intervalle Réaffiche les statistiques sélectionnées, en marquant un
temps d'arrêt égal à "intervalle" secondes entre chaque
affichage. Appuyez sur Ctrl+C pour arrêter l'affichage des
statistiques.
31
Nbtstat: Exemple

32
Commandes « net view » et « net use »

NET VIEW [\\nom d'ordinateur [/CACHE] | /D


NET VIEW /NETWORK:NW [\\nom d'ordinateur]

NET USE [nom de périph.|*] [\\Ordinateur\Partage[volume] [mot de passe | *]]


[/USER:[nom de domaine\]nom d'utilisateur]
[/USER:[nom de domaine avec points\]nom d'utilisateur]
[/USER:[nom d'utilisateur@nom de domaine avec points]
[[/DELETE] | [/PERSISTENT:{YES | NO}]]

NET USE [nom de périphérique | *] [mot de passe | *] [/HOME]

NET USE [/PERSISTENT:{YES | NO}]

33
Résolution de noms sous Windows: conclusions

Evolution de la résolution de noms:


✔ Mécanisme par diffusion

✔ Serveur WINS (nom NetBIOS)

✔ Serveur DNS (nom de domaine hiérarchique)

La résolution d'un nom est assurée par une combinaison


d'actions:
✔ Interrogation d'un cache DNS,

✔ Interrogation d'un serveur DNS,

✔ Consultation du fichier hosts (alternative DNS),

✔ Interrogation d'un serveur WINS,

✔ Consultation du fichier lmhosts (alternative à WINS),

✔ Emission d'une requête de diffusion sur le réseau local.

34
Résolution de noms sous Windows (source Technet)

35
Résolution de noms sous Windows (source Technet)

36
Listes de mots de passe: Historique

Sous Win95/98/Me, un partage réseau pouvait recevoir les


protections suivantes:
✔ Partage accessible en lecture/écriture ou lecture seule.
✔ Association d'un mot de passe à un partage.

Conséquences:
Pour accèder à des partages différents protégés par mot de
passe, l'utilisateur d'une station cliente devait préciser
autant de mots de passe qu'il y avait de partages à
atteindre.
Pour éviter l'encodage récurrent des mots de passe,
un utilisateur sur une station Windows peut sauver
chaque mot de passe utilisé dans un fichier spécial
37
suffixé par .pwl
Listes de mots de passe: Inconvénients

✔ Les fichiers .pwl contiennent une liste des mots de


passe utilisés au départ d'une station de travail.
✔ Les fichiers .pwl étant stockés sur une station de travail,
ces fichiers intéresseront les personnes mal
intentionnées.
✔ Les fichiers .pwl sont cryptés en utilisant le mot de
passe Windows comme clé de chiffrement.
✔ Cette technique de cryptage n'est pas très robuste et ne
résiste pas à une attaque par la force brute.
L'interdiction du stockage de mots de passe dans un
groupe de travail n'est pas pratique car il faudra
spécifier à chaque session l'ensemble des mots de
passe permettent d'accèder aux différents partages. 38
Domaine Windows: Principe de sécurité

✔ Dans un domaine Windows, la sécurité d'un partage réseau


sera basée sur des ACL et des SID.
✔ Un SID (Security Identifier) est un nombre unique utilisé pour
identifier un utilisateur ou groupe d'utilisateurs dans un
domaine.
✔ Une ACL (Access Control List) est une liste d'ACE (Access
Control Entrie) précisant pour un utilisateur ou un groupe
d'utilisateurs les droits d'accès à une ressource.
✔ La protection d'une ressource est définie par
rapport à un utilisateur ou un groupe d'utilisateurs.
✔ L'usage des mots de passe est seulement utilisé
pour organiser l'authentification d'un utilisateur. 39
Format d'un SID

Un SID est un code unique identifiant un compte ou un


groupe dans un système de sécurité NT:
Préfixe conventionnel depuis Win NT. 3 nombres de 32 bits générés N° relatif différent
aléatoirement. pour chaque
compte

S – 1 – 5 – 21 - D1 – D2 – D3 - RID
Identifie le domaine Identifie le
compte
Exemples de SID sur un équipement:

S-1-5-21-1417001333-1563985344-1957994488-500 Compte Administrateur


S-1-5-21-1417001333-1563985344-1957994488-1002 Compte toto
S-1-5-21-1417001333-1563985344-1957994488-1003 Groupe professeurs
S-1-5-32-544 Groupe local
Administrateurs
40
Authentification et contrôle dans un domaine

L'authentification dans un domaine Windows consiste


✔ A fournir un nom et un mot de passe via un protocole
de défi/réponse entre le client et le contrôleur de
domaine.
✔ Si le mot de passe est valide, le contrôleur de domaine
retournera un « jeton de sécurité » (SAT=Security Access
Token) au système d'exploitation de la station cliente
représentant l'identité de l'utilisateur.
✔ Lors d'une tentative d'accès à une ressource, le système
d'exploitation vérifiera que le « jeton de sécurité » est
conforme (SAT=Security Access Token) aux droits
d'accès définis dans les entrées de l'ACL protégeant la
ressource. En cas de non-conformité, l'accès sera refusé.
41
Contenu d'un jeton d'accès (SAT)

Un jeton d'accès décrit le contexte de sécurité à associer à un


processus. Il se compose de:
✔ Le SID du compte.
✔ Les SID des groupes auquel le compte appartient.
✔ Les privilèges du processus.
✔ Le SID à utiliser comme marque de propriété des
ressources créées par le processus.
✔ Le SID du groupe primaire auquel le compte appartient
(norme POSIX).

42
Authentification et contrôle d'accès à un partage

SAM
2me authentification
pour délivrer un jeton
Contrôleur de
d'accès au serveur
Authentification domaine
de fichier
engagée lors
du login

SI
SI nse

Ré i
Dé e

Co

D-
SA
pt

Ré fi


po
po

mp
m

SA
D-
Co

f
ns
te

T
e
Compte
Compte + Station de Défi Serveur de
mot de passe travail Réponse fichiers

Accès avec Partage et Accès avec


Répertoire SID-SAT répertoire SID-SAT
local protégé 43
protégé par ACL
par ACL
Les interfaces de gestion de comptes.

Depuis Win XP, Microsoft propose 2 interfaces de gestion


de comptes:
✔ Une interface « grand public »:
✔ Basique,

✔ sobre,

✔ Intuitive,

✔ limitée.

✔ Une interface pour les informaticiens:


✔ Plus riche et mieux détaillée,

✔ moins intuitive,

✔ Modulaire en fonction du type d'ordinateur (station de

travail, serveur).

44
XP: Accès au gestionnaire de comptes basique

45
XP: Gestionnaire de comptes basique - Création

Lien pour engager le


création d'un nouveau
compte

Liste de
comptes
prédéfinis

46
XP : Gestionnaire de comptes basique - Création

Encodage du
nom du compte

47
XP: Gestionnaire de comptes basique - Création

Impossibilité la première
fois de choisir un type
de compte autre
qu'administrateur

48
XP: Gestionnaire de comptes basique - Création

Le premier
compte créé est
automatiquement
administrateur
49
XP: Gestionnaire de comptes basique - Création

Encodage d'un
deuxième nom
du compte

50
XP : Gestionnaire de comptes basique - Création

Possibilité de
choisir un statut
limité

51
XP : Gestionnaire de comptes basique - Création

52
Gestionnaire de comptes basique - Conclusions

Le gestionnaire de comptes « grand public »:



Permet seulement de:
✔ créer des comptes,

✔ avec 2 type de statuts (administrateur, utilisateur),

✔ avec la possibilité de définir un mot de passe.

✔ L'utilisation d'images pour illustrer les comptes ne


permet pas de gérer facilement une grande liste de
comptes.
✔ Le contexte d'utilisation de ce gestionnaire basique est
purement domestique.
53
XP: Accès au gestionnaire de comptes pour informaticiens

Cliquer sur le bouton


droit du « poste de
travail » puis cliquer
sur « gérer »

Remarque:
Sous Win 7, l'exploitation du
gestionnaire de comptes avancé
n'est possible que via la console
mmc.

54
XP : Gestionnaire de comptes intégré à la gestion de l'ordinateur

Possibilité via le volet d'exploration de


visualiser la liste des comptes et des
groupes locaux à la station de travail

Double cliquer pour


modifier un compte

55
XP : Gestion de comptes - onglet « Général »

3 options permettent de
définir les modalités de
modifications du mot de
passe

Le compte n'est pas


détruit mais n'est
plus utilisable

Cette disposition n'est opérationnelle


que si la stratégie limitant les
tentatives de mots de passe erronés
est activée.

56
XP : Gestion de comptes - onglet « membre de »

Liste des différents groupes


auxquels le compte appartient.

Bouton permettant d'ajouter un


autre groupe auquel le compte
appartiendra.

57
XP : Gestion des comptes - onglet « profil »

Précise le chemin d'accès où seront stockés les paramètres


décrivant l'environnement de travail du compte:
✔ Icônes sur le bureau, contenu des menus, etc...

✔ Configuration des logiciels utilisés,

✔ Imprimantes, etc..

Précise le script à
éxécuter lors d'une
ouverture de session
avec ce compte

Permet de préciser le répertoire Remarque: les variables


local ou le disque réseau et le d'environnement peuvent être
chemin UNC dans lesquels seront spécifiées dans le chemin UNC.
stockés les documents de Exemple:
l'utilisateur \\server1\users\%USERNAME%

58
Win 2003 : Gestion des comptes – autres onglets

Présence d'onglets
supplémentaires
spécifiques pour
Win2003 Server

Onglets communs
au gestionnaire de
comptes de Win XP

59
XP : Gestion de comptes - Groupes prédéfinis

60
Win 2003 : Gestion de comptes - Groupes prédéfinis

61
Win 7 : Gestionnaire de comptes basique

Gestionnaire de
comptes basique

62
Win 7 : Gestionnaire de comptes basique

63
MMC : Microsoft Management Console

La console MMC permet aux administrateurs de créer et personnaliser les outils


d'administrations.

64
MMC : Ajout du composant pour gérer les comptes

65
MMC : Ajout du composant pour gérer les comptes

66
Win 7 : Liste des comptes

67
Win 7 : Liste des groupes prédéfinis

68
Gestion des groupes: liste de comptes

Boutons permettant
d'ajouter ou de
supprimer des
membres à un
groupe

69
Gestion des groupes: liste de comptes

Double tête
pour symboliser
un groupe

Simple tête
pour symboliser
un utilisateur

70
XP : Groupe gobal – Groupe local

Pour éviter des « groupes circulaires », Microsoft a prévu


de distinguer 2 types de groupes:
✔ Un groupe global ne peut contenir qu'une liste

d'utilisateurs.
✔ Un groupe local peut contenir une liste d'utilisateurs et

une liste de groupes globaux.


Groupe local Groupe local Groupe local

Groupe global Groupe global Groupe global

En créant ces 2 types de groupes, Microsoft a limité


71
l'imbrication de groupes
Création de comptes

Cliquer sur le bouton droit pour


ouvrir un menu proposant la
création d'un nouveau compte

Remarque: Cette technique n'est pas adaptée pour


créer de nombreux comptes. 72
Création de groupes

Cliquer sur le bouton droit pour


ouvrir un menu proposant la
création d'un nouveau groupe

Remarque: Les groupes créés par cet outil sont des


groupes locaux. 73
Explorateur Windows: Composition

Barre d'outils

Barre d'adresse

Volet
d'exploration

Barre d'état

74
Explorateur Windows: Personnalisation de l'affichage

Permet de configurer les


modalités d'affichage des
différentes composantes
de l'explorateur windows.

75
Explorateur Windows: Barre d'outils

Permet d'activer ou de
désactiver les outils
d'exploration

76
Exploration Windows: Icônes de la barre d'outils

Icônes pouvant être


ajoutés ou retirés de la
barre d'outil 77
Explorateur Windows: Barre d'état

Active ou désactive
l'affichage de la
barre d'état

78
Explorateur Windows: Utilité de la barre d'état

Description complète
du fichier sélectionné

79
Explorateur Windows: Volet d'exploration vide

Affichage de
menus

80
Explorateur Windows: Volet d'exploration « rechercher »

Permet de lancer
de multiples
recherches

81
Explorateur Windows: Volet d'exploration « favoris »

Permet d'afficher
les favoris dans
le volet
d'exploration

82
Explorateur Windows: Volet d'exploration « historique »

Permet d'afficher
les ressources
visitées les jours
précédents

83
Explorateur Windows: Volet d'exploration « dossiers »

Permet d'afficher
les ressources
suivant un
schéma
hiérarchique

84
Exploration Windows: Affichage miniature

85
Exploration Windows: Affichage mosaïques

86
Exploration Windows: Affichage icônes

87
Exploration Windows: Affichage détaillé

88
Exploration Windows: Choix des colonnes d'un
affichage détaillé

89
Explorateur Windows: Liste détaillée

90
Explorateur Windows: Liste détaillée

91
Exploration Windows: Options des dossiers

Permet de paramétrer les


modalités et formats de
présentation des fichiers
dans un dossier

92
Exploration Windows: Options des dossiers

Les modalités d'affichage


peuvent être globalisées ou
réinitialisées

Permet d'accéder aux


options de partage
« grand public »
Remarques:
● L'option équivalente sous XP Pro est

« utiliser le partage de fichiers simple »


● Dans les versions familiales, obligation

d'utiliser l'assistant de partage, ce qui 93


constitue une restriction.
Propriétés d'un répertoire: les onglets

L'onglet sécurité
L'onglet partage n'est disponible
n'est disponible que dans le cas
que si le partage d'une partition
de fichiers est NTFS
activé

Fenêtre de Fenêtre de
propriétés en propriétés en 94
cas de FAT32 cas de NTFS
Propriétés d'un répertoire sous Win 7

95
FAT, FAT16, FAT32 (File Allocation Table)

✔ Système de gestion d'une partition disque hérité du DOS


✔ L'espace disque est alloué par cluster (grappe de
secteurs consécutifs)
✔ Plan d'occupation de la partition est dédoublé
✔ Le nombre de clusters/partition ne peut dépasser
65524 (FAT16) ou ???? (FAT32)
✔ A cause de cette contrainte, la taille des clusters doit
être importante, ce qui engendre un gaspillage
important avec les fichiers de petite taille.
✔ La protection d'un fichier est plus que sommaire
(lecture seule, fichier archivé, fichier masqué)
✔ Un fichier n'a pas de propriétaire ni d'ACL.
96
NTFS

✔ Système de fichier introduit avec NT.


✔ Offre une meilleure granularité pour la gestion de
l'occupation du support. La taille d'un cluster ne
dépasse jamais 4 Koctets.
✔ Associe à un répertoire ou un fichiers un nombre
plus importants de paramètres: date de création,
date de modification, propriétaire, ACL.
✔ Gestion de quotas.
✔ Compression et cryptage de données en option.
✔ Gestion de point de montage.

97
Conversion d'une partition FAT en NTFS

La conversion d'une partition FAT en NTFS peut être


engagée avec une commande en ligne: convert

98
Sécurité d'un partage – Sécurité NTFS

\\pc\videos
La sécurité d'un partage
est appliquée à l'entrée
Service de partage d'un équipement
de fichiers
(NetBIOS)

Système de gestion
NTFS

La sécurité NTFS
est appliquée au niveau
du disque, des répertoires 99
et des fichiers
Win XP : Création d'un partage de fichier simple

Cocher pour
activer le partage
Nom du partage

Possibilité de
déclarer un accès
en lecture ou en
lecture/écriture.
Impossibilité de
définir des ACLs.

100
Win 2000 Pro: Partage de fichiers = Faille de sécurité
✔Attention ! Sous Win 2000, un partage est par défaut
accessible en lecture/écriture (faille utilisateur).

101
Win XP Pro: Création d'un partage « avancé »

Possibilité de déterminer le
nombre maximum d'accès
concurrentiels au partage.
Limité à
● 10 sous Win XP Pro

● 20 sous Win 7 Pro

Bouton à utiliser
Remarque: pour éditer les
ACLs
Les options de
partage avancés
ne sont pas
proposées dans les
versions familliales. 102
Partage « avancé»: Edition d'une ACL

L'autorisation
initiale est un
accès public en
lecture seule

Utiliser ce bouton pour


ajouter des autorisation
ou interdictions (ACLs)
Utiliser ce bouton pour
supprimer les autorisations
ou interdictions de
l'utilisateur ou groupe
sélectionné

103
Partage « avancé » : Ajout d'une ACE
Cliquer sur ce bouton
pour présélectionner des
utilisateurs, groupes ou
types d'utilisateurs

Cliquer sur ce bouton Les cases à cocher


pour afficher la liste permettent de
présélection présélectionner les
utilisateurs, groupes ou
types d'utilisateurs

104
Les entités de sécurité intégrées

✔ Groupes de sécurité définis par le système de sécurité:


 Administrateurs

 Utilisateurs authentifiés

 Réseau

 Utilisateurs interactifs

 Créateur propriétaire

 etc...

105
Partage non simplifié: Ajout d'un ACE

Sélectionner un utilisateur,
un groupe ou un type
d'utilisateur pour lequel
personnaliser une ACL et
cliquer sur le bouton OK

106
Partage « avancé »: Ajout d'une ACE

Précise l'utilisateur
d'une station ou d'un
domaine pour qui l'ACE
sera définie

107
Partage « avancé » : Affichage et édition d'une ACL

108
Win 7: Assistant partage « coché »

Le bouton « partager »
est disponible

Le bouton « partage avancé»


est aussi disponible
109
Win 7: Assistant partage « coché »

Possibilité d'accéder à
des options de partage
« grand public »

110
Win 7: Assistant partage « coché »

2 options de sécurité
sont proposées:
● Lecture

● Lecture/Ecriture

En activant l'assistant de partage, l'exploitation des options de partage avancé


n'est pas encouragée.
111
Win 7: Groupe résidentiel ?

✔ Groupe résidentiel = solution domestique introduite sous Win 7


permettant de préciser
 La liste des ordinateurs composant le groupe résidentiel

 Les fichiers, dossiers et imprimantes partagés dans ce groupe

Solution plus rationnelle pour partager des ressources dans un modèle peer-to-peer.

✔ L'accès à un groupe résidentiel peut-être protégé par un mot de passe.


✔ Sous Win 7 Pro, on peut créer ou rejoindre un groupe résidentiel.
Restriction:
Une station Win 7 rattachée à un domaine ne peut pas créer de groupe
résidentiel mais peut seulement rejoindre un groupe résidentiel.
✔ Sous Win 7 Edition Starter ou Win 7 Home
 Impossibilité de créer un groupe résidentiel

 Possibilité de rejoindre un groupe résidentiel existant dans le réseau.

✔ Solution non supportée par Win Vista, Win XP, Win 2000 Pro
Amélioration dans le cadre d'une utilisation non-professionnelle.
112
Win 7 Pro: Assistant partage « non coché »

Le bouton « partager »
n'est plus disponible

113
Obligation d'exploiter le partage avancé.
Win 7 Pro: Assistant partage « non coché »

Possibilité d'accéder
seulement aux options
de partage avancé

114
Win 7 Pro: Assistant partage « non coché »

Bouton permettant
d'accéder aux options
pour définir des ACE 115
sur le partage
Sécurité sur les partages: conclusions

✔ La sécurité sur un partage est définie « grossièrement » et ne reconnaît


que 3 types d'actions:
 Contrôle total

 Modifier

 Lecture

✔ La sécurité ne s'applique que pour les demandes d'accès provenant du


réseau.
Les accès engagés directement vers le disque par un utilisateur local
(interactif) « court-circuitent » les partages.
✔ La portée d'une définition de sécurité s'applique
 à un disque,

 à un répertoire.

La sécurité définie par le partage est identique sur l'ensemble de


l'arborescence de fichiers
✔ La sécurité ne peut pas être personnalisée
 sur les fichiers

 sur les sous-répertoires


116
Sécurité NTFS

 La sécurité NTFS est définie sur le disque et s'applique sur


les accès
 commandités par un utilisateur via un partage réseau.

 commandités par un utilisateur local (interactif)

Objectifs:
✔ Protéger le système d'exploitation et éviter qu'il ne soit corrompu.
✔ Contrôler finement toutes les ressources stockées sur un disque.

117
NTFS: Onglet sécurité

Sélection de l'utilisateur, groupe ou


type d'utilisateur pour qui une ACE
est définie

Boutons permettant d'ajouter


ou supprimer une ACE pour
l'utilisateur sélectionné

Bouton permettant d'ouvrir


des onglets pour un
paramètrage avancé

118
NTFS: Autorisations élémentaires (atomiques)

La sécurité NTFS permet d'autoriser ou interdire 13 types d'actions


élémentaires pouvant être engagées sur des fichiers ou dossiers:
1. Parcours d'un dossier / Exécution d'un fichier
2. Liste du dossier / Lecture de données (*)
3. Lecture des attributs
4. Lecture des attributs étendus
5. Création de fichier / Ecriture de données
6. Création de dossiers / Ajout de données
7. Ecriture des attributs
8. Ecriture des attributs étendus
9. Suppression de sous-dossiers et de fichiers (*)
10. Suppression
11. Autorisation de lecture
12. Modification des autorisations
13. Devenir propriétaire

(*) Ce type d'action n'est pris en compte


que pour un dossier

Cet onglet est ouvert en utilisant 119


les paramètres de sécurité avancé
NTFS: Autorisations élémentaires

Parcourir le dossier/ Autorisation permettant de se déplacer dans un dossier pour


Exécuter le fichier atteindre d'autres dossiers ou fichiers

Lecture du dossier/ Autorisation permettant d'afficher les noms des fichiers et des sous-
Lecture de données dossiers.

Attributs de lecture Autorisation permettant d'afficher les attributs des fichiers et des
sous-dossiers tels que « lecture seule » ou « masqué »
Lire les attributs Autorisation permettant d'afficher les attributs étendus des fichiers
étendus et des sous-dossiers.

Création de fichier/ Autorisation permettant de créer des fichiers dans un dossier ou de


Ecriture de données modifier ou remplacer un fichier.

Création de dossier/ Autorisation permettant de créer des sous-dossiers dans un dossier


Ajout de données ou d'ajouter des données à la fin d'un fichier sans pouvoir modifier
le contenu existant.

Attributs d'écriture Autorisation permettant de modifier les attributs des fichiers et des
sous-dossiers tels que « lecture seule » ou « masqué »
120
NTFS: Autorisations élémentaires

Attributs d'écriture Autorisation permettant de modifier les attributs étendus des fichiers
étendus et des sous-dossiers autres que « lecture seule » ou « masqué »

Suppression de Autorisation permettant de supprimer un fichier ou un sous-dossier


sous-dossiers et de même si l'autorisation suppression n'a pas été attribuée sur le fichier
fichiers ou le sous-dossier.

Suppression Autorisation permettant de supprimer un fichier ou un dossier.

Autorisations de Autorisation permettant de lire le fichier ou le dossier


lecture
Modifier les Autorisation permettant de modifier les autorisations de lecture,
autorisations écirture ou contrôle total d'un fichier ou d'un dossier.

Appropriation Autorisation permettant de devenir le propriétaire d'un fichier ou d'un


dossier.

La gestion des autorisations élémentaires s'avère peu


pratique à cause du nombre de cases à cocher ou décocher.

121
NTFS: Autorisations générales (moléculaires)

Les autorisations générales ont été introduites pour


 Regrouper les autorisations élémentaires

 Réduire le nombre de cases à cocher pour une gestion plus pratique

122
NTFS : Lecture ?

123
NTFS : Affichage du contenu du dossier ?

124
NTFS : Lecture et exécution ?

125
NTFS : Ecriture ?

126
NTFS : Modification ?

127
NTFS : Contrôle total ?

128
NTFS: Entrée de sécurité (ACE) et liste de contrôle (ACL)
Une entrée de sécurité (ACE) NTFS
✔ S'applique (se définit) sur

 un disque,

 un répertoire

 un fichier.

✔ S'exprime par rapport à


 Un utilisateur,

 Un groupe d'utilisateur,

 Un statut d'utilisateur (affiché en majuscule)

Exemples: Créateur propriétaire, utilisateur


interactif, utilisateur réseau, etc...
✔ Autorise et/ou interdit une série d'actions
générales ou élémentaires
Conséquences:
Un utilisateur peut avoir des droits d'accès individuels entrant en contradiction avec des
droits dérivés des groupes auxquels il appartient ou de son statut.
Les autorisations et interdictions se cumulent
L'interdiction est prédominante par rapport à une autorisation.
129
L'absence d'autorisation ou d'interdiction est assimilée à une interdiction
NTFS: Propagation de la sécurité (héritage)

✔ Les entrées de sécurité définies sur un disque ou un répertoire se


propagent aux sous-répertoires et fichiers par héritage.
Ces autorisations ou interdictions sont dites non-explicites ou héritées.
Les autorisations ou interdictions héritées sont affichées en grisés et ne
peuvent être modifiées.
Objectifs:
✔ Cette disposition permet d'économiser l'occupation du disque en évitant
de le surcharger avec des ACE explicites et identiques dans une
arborescence de répertoires.
✔ Rationaliser le déploiement des ACE et faciliter la maitrise des ACL.
✔ La propagation des ACE par héritage peut être neutralisée au niveau
d'un sous-répertoire pour changer la politique d'accès sur une partie du
disque.
✔ Les ACE se propageant par héritage peuvent être remplacées par des
ACE redéfinies explicitement sur les descendants.
130
NTFS: Paramètres de sécurité avancé

L'autorisation de lecture pour tout


le monde est déclarée non
héritée et a donc été définie sur
E:\Users\michel\tmp

Les 4 autorisations se
proprageront par héritage
dans tous les sous-dossiers
de E:\Users\michel\tmp

Les 3 autres autorisations


sont héritées du répertoire
parent E:\Users\michel

131
NTFS: Neutralisation de l'héritage

En décochant cette case, il est possible de


neutraliser l'héritage des autorisations d'accès 132
provenant des dossiers parents
NTFS: Réinitialisation des autorisations

En cochant cette case, il est possible de déclencher la


redéfinition explicite des autorisations d'accès sur les 133
sous-dossiers et fichiers
NTFS: Audit

Les règles d'audit sont des dispositions


permettant de « journaliser » les accès ou
tentatives d'accès engagées par les utilisateurs
vers des ressources

134
NTFS: Appropriation

135
Protection d'un partage ou Protection NTFS

Répertoire NTFS:
✔ La protection du partage s'avère inutile: Un accès en
lecture/écriture pour « tout le monde » est recommandé.
✔ On sera attentif uniquement à établir correctement les
droits d'accès NTFS vers les répertoires et fichiers du
partage.

Répertoire FAT32:
✔ La simplicité des mécanismes de protection dans une
FAT32 nécessite de « déporter » l'établissement des
droits d'accès sur le partage.

136
Scripting
sous
Windows

26/02/2014
M. Villers – F. Lenartowski Diapo 1
Script ?

✔ Fichier au format texte


✔ Enchaînement de commandes pour un Système
d'exploitation.
✔ Langage interprété

Exemples connus:

✔ Script en Shell Bourne sous UNIX


✔ Fichiers .bat sous DOS

26/02/2014
M. Villers – F. Lenartowski Diapo 2
La mauvaise réputation du scripting

Exemples de propos:

✔ Pourquoi se compliquer la vie alors qu'on dispose


maintenant d'interfaces graphiques conviviales ?
✔ Réfléchir à un script prend du temps.

✔ Jusque maintenant, je me suis toujours débrouillé en


utilisant les interfaces graphiques. Pourquoi changer ?

26/02/2014
M. Villers – F. Lenartowski Diapo 3
Limites des interfaces graphiques

✔ Les interfaces graphiques sont des outils d'administration


par défaut:
✔ Créer un compte,
✔ Configurer l'accès à une imprimante partagée,
✔ Changer un mot de passe,
✔ etc...
Quelques clics et l'affaire est faite !!!

Et pour les manipulations à grande échelle ?


✔ Répéter des modifications massives sur les
propriétés des comptes.
✔ Faire des modifications dans la base de registre de
toutes les stations de travail de l'entreprise.
26/02/2014
M. Villers – F. Lenartowski Diapo 4
Interêts du scripting

✔ Automatiser les tâches répétitives


✔ Gain de temps
✔ Fiabilité dans les tâches d'administration

✔ Accéder à des fonctionnalités du système non prévues


par les outils d'administration
✔ Plannifier dans le temps des actions d'administration:
✔ Périodiquement,

✔ En différé.

26/02/2014
M. Villers – F. Lenartowski Diapo 5
Productivité côté administration et support technique

✔ Amélioration du travail d'administration et du support


technique:
✔ Gestion des comptes, des machines, groupes de sécurité
✔ Gestion du réseau: DNS, DHCP, WINS, etc...
✔ Maintenance des services: installation/désinstallation,
configurations, etc...
✔ Audit de l'existant
✔ Gestion globale de l'Active Directory
✔ Reporting pour les serveurs et postes de travail: audit des
imprimantes, espaces disques, charge des processeurs,
etc...
Le scripting permet de mieux comprendre le
26/02/2014 fonctionnement du système
M. Villers – F. Lenartowski Diapo 6
Productivité côté poste de travail

✔ Gestion des scripts de connexion


✔ Automatisation dans des applications bureautiques
✔ Maintenance du système d'exploitation des stations de
travail
✔ Personnalisation de l'interface
✔Aide pour des tâches complexes pour les utilisateurs
courants.

26/02/2014
M. Villers – F. Lenartowski Diapo 7
Outils de scripting

Sous DOS:
✔ L'interpréteur de commande « command.com »

✔ Les fichiers batchs avec l'extension .bat

Solution primitive (????)


Solutions modernes:
VBScript:
✔ Langage de scripting dérivé de Visual Basic

✔ Langage interprété:

Souplesse et légéreté, relative lenteur.


WSH:
✔ Windows Script Hosting

✔ Multi-langages: VBScript, Javascript, Active Perl

26/02/2014
M. Villers – F. Lenartowski Diapo 8
VBScript: Quelques caractéristiques

✔ VBScript est un langage interprété


✔ VBScript est un langage autorisant l'utilisation
de variables et de tableaux.
✔ VBScript est un langage procédural
✔ VBScript est un langage permettant d'exploiter
des objets

26/02/2014
M. Villers – F. Lenartowski Diapo 9
VBScript: Les différentes versions

Version VBScript Environnement

1.0 MSIE 3.0


2.0 IIS 3.0
3.0 MSIE 4.0, IIS 4.0
4.0 Visual Studio 6.0
5.0 MSIE 5.0
5.1 MSIE 5.1, Win 2000
5.5 MSIE 5.5, Windows Me
5.6 MSIE 6.0, Win XP

26/02/2014
M. Villers – F. Lenartowski Diapo 10
Premier exemple de script en VBScript

Fichier hello.vbs:

mon_message="Hello"
wscript.echo mon_message

Lancement du script Sortie du message


dans une boîte DOS dans une boîte à
message

26/02/2014
M. Villers – F. Lenartowski Diapo 11
Execution en « mode console » ou en « mode windows »

Mode windows: wscript Sortie du message nécessitant un


clic sur OK.

Adapté pour délivrer des messages à


l'utilisateur sur une station de travail.

Mode console: cscript

Sortie du message ne
nécessitant par un clic sur OK.

Mieux adapté pour des exécutions sur des serveurs.


26/02/2014 Possibilité de rediriger les sorties dans un fichier.
M. Villers – F. Lenartowski Diapo 12
Options de wscript et mode par défaut

C:> wscript //H:CScript C:> wscript //H:WScript

Définit le mode Définit le mode


console par défaut windows par défaut
26/02/2014
M. Villers – F. Lenartowski Diapo 13
Documentation et utilitaires

Quelques liens:
http://www.microsoft.com/technet/scriptcenter/default.mspx

26/02/2014
M. Villers – F. Lenartowski Diapo 14
VBScript: Déclaration de constantes

Const MyString = "This is my string."

Const MyAge = 49

Const CutoffDate = #6-1-97#

Const Hour = #4:45:23 PM#

4 déclarations de constantes:
• Une chaîne

• Un nombre

• Une date

• Une heure

26/02/2014
M. Villers – F. Lenartowski Diapo 15
VBScript: Types de variables
✔ VBScript étant un langage interprété, une variable est non
typée et est appelée « Variant ».
✔ Une variable stocke une valeur numérique ou une chaîne
de caractères.
✔ La signification de la variable dépend du contexte
d'utilisation.
✔ Les doubles guillemets sont utilisés pour délimiter une
chaîne de caractères.
✔ Le type de contenu d'une variable peut changer.
✔ VBScript gérera une information de contrôle appelée sous-
type.
26/02/2014
M. Villers – F. Lenartowski Diapo 16
VBScript: Sous-type de variables

Boolean True False


Byte Entier entre 0 et 255
Integer Entier entre -32768 et 32767
Currency -922,337,203,685,477.5808 à 922,337,203,685,477.5807.
Long Entier entre -2147483648 et 2147483647
Single Réel en simple précision
Double Réel en double précision
Date Date entre le 01/01/0100 et 31/12/9999
String Chaîne de taille illimitée
Object Objet
Error Contient un numéro d'erreur

26/02/2014
M. Villers – F. Lenartowski Diapo 17
VBScript: Déclaration de variables
Dim DegreesFahrenheit 'Déclaration d une variable
Dim Top, Bottom, Left, Right 'Déclaration de plusieurs variables
Dim A(10) 'Déclaration de tableau avec un
'indice pouvant varier de 0 à 10
Dim B(20,5) 'Déclaration de tableau à 2 indices

✔ Le nom d'une variable doit commencer par une lettre et a


une longueur maximum de 255 caractères.
✔ VBScript ne fait pas de différence entre les minuscules ou
majuscules dans le nom d'une variable

A utiliser pour obliger de déclarer toutes les variables


avant de les utiliser. Cette option est recommandée car
une simple faute de frappe dans le nom d'une variable
peut compromettre le script.

Option Explicit ' Pour rendre obligatoire la déclaration


' des variables
Dim MyVar ' Déclaration de variable
MyInt = 10 ' Cette instruction génére une erreur
MyVar = 10 ' Cette instruction ne génére pas une erreur
26/02/2014
M. Villers – F. Lenartowski Diapo 18
VBScript: Portée des variables

✔ Une variable déclarée dans une procédure à une


portée et une durée de vie limitée à la procédure.
Variable locale
✔ Une variable déclarée en tête d'un script a une portée
et une durée de vie illimitée.
Variable globale
Private Var1,Tab(10) ' Déclaration de variables privées
Public Var2,Cp(10) ' Déclaration de variables publique

Les mots-clé Private et La directive Private s'utilisera


Public permettent de définir donc pour préciser qu'une
explicitement la portée d'une
variable variable déclarée en tête d'un
script ne peut pas être
26/02/2014
adressée dans une procédure.
M. Villers – F. Lenartowski Diapo 19
VBScript: Tableaux statique et dynamique

Tableau statique:
Dim TabStat(9) ' Déclaration de tableau statique

Erase TabStat ' Toutes les composante du tableau sont effacées


' sans libération de la mémoire

Tableau dynamique:
Dim TabDyn() ' Déclaration de tableau dynamique
ReDim TabDyn(9) ' Redimensionnement avec perte de données
ReDim Preserve TabDyn(9)
' Redimensionnement en conservant les
' données existantes
Erase TabDyn ' Destruction des composantes du tableau et
' libération de l espace mémoire.

L'utilisation de tableau dynamique permet de maîtriser


l'espace mémoire consommé par le script.
Cet disposition se justifie si un tableau de grande
26/02/2014
taille doit être utilisée dans une partie d'un script.
M. Villers – F. Lenartowski Diapo 20
VBScript: Fonctions sur les dates/heures

MyDate = "October 19, 1962" ' Define date.


MyShortDate = CDate(MyDate) ' Convert to Date data type.
MyTime = "4:35:47 PM" ' Define time.
MyShortTime = CDate(MyTime) ' Convert to Date data type.

Conversion d'une
chaîne en un type date

Dim MyDate, YourDate, NoDate, MyCheck


MyDate = "October 19, 1962": YourDate = #10/19/62#: NoDate = "Hello"
MyCheck = IsDate(MyDate) ' Returns True.
MyCheck = IsDate(YourDate) ' Returns True.
MyCheck = IsDate(NoDate) ' Returns False.

Vérification qu'une
variable contient une
information de type date
26/02/2014
M. Villers – F. Lenartowski Diapo 21
VBScript: Fonctions de conversions sur les chaînes

Dim MyNumber
MyNumber = Asc("A") ' Returns 65.
MyNumber = Asc("a") ' Returns 97.
Conversion d'un
MyNumber = Asc("Apple") ' Returns 65.
code ASCII en
caractère

Obtention du code Dim MyChar


ASCII d'un caractère MyChar = Chr(65) ' Returns A.
MyChar = Chr(97) ' Returns a.
MyChar = Chr(62) ' Returns >.
MyChar = Chr(37) ' Returns %.

Dim MyDouble, MyString


MyDouble = 437.324 ' MyDouble is a Double.
MyString = CStr(MyDouble) ' MyString contains "437.324".

Conversion d'un nombre


en chaîne de caractères

26/02/2014
M. Villers – F. Lenartowski Diapo 22
VBScript: Conversion en booléen

Conversion du résultat d'une


comparaison en booléen.

Dim A, B, Check
A = 5: B = 5 ' Initialize variables.
Check = CBool(A = B) ' Check contains True.
A=0 ' Define variable.
Check = CBool(A) ' Check contains False.
A = 2.5 ' Define variable.
Check = CBool(A) ' Check contains True.

Conversion d'un nombre nul


en booléen faux

Conversion d'un nombre


non nul en booléen vrai

26/02/2014
M. Villers – F. Lenartowski Diapo 23
VBScript: Fonctions de conversion entière

Dim MyDouble, MyByte


MyDouble = 125.5678 ' MyDouble is a Double.
MyByte = CByte(MyDouble) ' MyByte contains 126.

Conversion d'un nombre en


entier court de 1 octet.

Dim MyDouble, MyInt


MyDouble = 2345.5678 ' MyDouble is a Double.
MyInt = CInt(MyDouble) ' MyInt contains 2346.

Conversion d'un nombre en


entier de 2 octets

Dim MyVal1, MyVal2, MyLong1, MyLong2


MyVal1 = 25427.45: MyVal2 = 25427.55 ' MyVal1, MyVal2 are Doubles.
MyLong1 = CLng(MyVal1) ' MyLong1 contains 25427.
MyLong2 = CLng(MyVal2) ' MyLong2 contains 25428.

Conversion d'un nombre en


entier long de 4 octets
26/02/2014
M. Villers – F. Lenartowski Diapo 24
VBScript: Fonctions arrondi et partie entière

Int() permet d'obtenir la


partie entière inférieure

MyNumber = Int(99.8) ' Returns 99.


MyNumber = Fix(99.2) ' Returns 99.
MyNumber = Int(-99.8) ' Returns -100.
MyNumber = Fix(-99.8) ' Returns -99.
MyNumber = Int(-99.2) ' Returns -100.
MyNumber = Fix(-99.2) ' Returns -99.

Fix() permet d'obtenir la


partie entière

Dim MyVar, pi
pi = 3.14159
MyVar = Round(pi, 2) ' MyVar contains 3.14.

Round() permet d'obtenir


l'arrondi sur un nombre de
décimales
26/02/2014
M. Villers – F. Lenartowski Diapo 25
VBScript: Fonctions de conversion virgule flottante

Dim MyDouble1, MyDouble2, MySingle1, MySingle2


' MyDouble1, MyDouble2 are Doubles.
MyDouble1 = 75.3421115: MyDouble2 = 75.3421555
MySingle1 = CSng(MyDouble1) ' MySingle1 contains 75.34211.
MySingle2 = CSng(MyDouble2) ' MySingle2 contains 75.34216.

Conversion d'un nombre


en simple précision

Dim MyCurr, MyDouble


MyCurr = CCur(234.456784) ' MyCurr is a Currency (234.4567).
MyDouble = CDbl(MyCurr * 8.2 * 0.01) ' Convert result to
' a Double (19.2254576).

Conversion d'un nombre


en double précision

26/02/2014
M. Villers – F. Lenartowski Diapo 26
VBScript: Conversion en hexadécimal ou octal

Dim MyHex
MyHex = Hex(5) ' Returns 5.
MyHex = Hex(10) ' Returns A.
MyHex = Hex(459) ' Returns 1CB.

Conversion d'un nombre entier


en hexadécimal

Dim MyOct
MyOct = Oct(4) ' Returns 4.
MyOct = Oct(8) ' Returns 10.
MyOct = Oct(459) ' Returns 713.

Conversion d'un nombre entier


en octal

26/02/2014
M. Villers – F. Lenartowski Diapo 27
VBScript: Opérateurs arithmétiques et de comparaison

^ Exposant
- Changement de signe
* Multiplication
/ Division
\ Division entière
mod Reste de la division par
+ Addition
- Soustraction
& Concaténation

= Egalité
<> Inégalité
< Plus petit que
<= Plus petit ou égal que
> Plus grand que
>= Plus grand ou égal que
Is Equivalence de 2 objets
Permet de comparer que 2
objets sont issu de la même
classe

26/02/2014
M. Villers – F. Lenartowski Diapo 28
VBScript: Les opérateurs logiques
Not Négation
And Conjonction
Or Disjonction
Xor Exclusion
Eqv Equivalence
Impl Implication Table de vérité
A B A And B A Or B A Xor B A Eqv B A Impl B

false false false false false true true


false true false true true false true
true false false true true false false
true true true true false true true

false null false null true


true null null true null
null false false null null
null true null true true
null null null null null

Remarque: les opérateurs logiques peuvent aussi être


utilisés entre 2 entiers. Dans ce cas, la table de vérité est
appliquée entre les bits de même poids.
26/02/2014
M. Villers – F. Lenartowski Diapo 29
VBScript: Instruction conditionnelle

Plusieurs instructions peuvent être prévues


sur la même ligne en les séparants par :

If condition Then statements [Else elsestatements ]

Utiliser ElseIF pour des


instructions
conditionnelles
imbriquées

If condition Then
[statements] L'absence de code derrière
[ElseIf condition-n Then
Then indique que
[elseifstatements]] . . .
[Else l'instruction conditionnelle
[elsestatements]] est programmée sur
End If plusieurs lignes

Utilisée sur plusieurs


lignes, le End If est
26/02/2014 obligatoire
M. Villers – F. Lenartowski Diapo 30
VBScript: Instruction CASE

Variable ou expression à
tester

Select Case testexpression Liste de valeurs séparées


[Case expressionlist-n par des virgules
[statements-n]] . . .
[Case Else
[elsestatements-n]] Liste d'instructioins
End Select séparées par des :

26/02/2014
M. Villers – F. Lenartowski Diapo 31
VBScript: Boucle Loop

Do While condition Condition pré-évaluée pour rester


statements dans la boucle
Loop

Do Condition post-évaluée pour


statements rester dans la boucle
Loop While condition

Do Condition post-évaluée pour sortir


statements
de la boucle
Loop Until condition

Do Until condition Condition pré-évaluée pour sortir


statements de la boucle
Loop

Do [ While | Until ] condition


statements

Exit Do L'instruction Exit Do permet de sortir


anticipativement de la boucle
statements
Loop [ While | Until ] condition
26/02/2014
M. Villers – F. Lenartowski Diapo 32
VBScript: Boucles For et While..Wend

For counter = start To end [Step step]


Boucle avec indice auto-
statements incréménté ou auto-
Next décrémenté

Boucle avec une variable de


For Each element In group
contrôle prenant des valeurs
statements
Next énumérées dans un tableau

While condition
statements
Wend

Boucle avec itération


contrôlée par une
condition.
Structure plus rigide que
la boucle Loop

26/02/2014
M. Villers – F. Lenartowski Diapo 33
VBScript: Déclaration de procédure et de fonction

Possibilité de déclarer des procédures


privées dans des procédures

[Public [Default] | Private] Sub name [(arglist)]


[statements]
[Exit Sub] Instruction pour sortir
[statements]
End Sub
anticipativement de la Arguments de la
procédure procédure

Possibilité de déclarer des fonctions


privées dans des fonctions
[Public [Default] | Private] Function name [(arglist)]
[statements]
[name = expression]
Arguments de la
[Exit Function] Instruction pour sortir
[statements] fonction
anticipativement de la
[name = expression]
fonction
End Function

Résultat de la fonction
26/02/2014
M. Villers – F. Lenartowski Diapo 34
VBScript: Appel de procédure ou de fonction

Call Name (Arguments,...)

L'instruction Call permet


d'appeler une procédure
avec des arguments.

26/02/2014
M. Villers – F. Lenartowski Diapo 35
VBScript: La fonction MsgBox

✔ Fonction utilisée dans des scripts interactifs


✔ Permet d'ouvrir une boîte de message
✔ Permet d'afficher divers boutons (OK, Cancel, Retry, ...)
✔ Attend un clic de souris sur un des boutons affichés
✔ Retourne une valeur précisant le bouton qui a été utilisé
Texte du Titre de la barre de la
message affiché boîte de message

MsgBox(prompt[, buttons][, title][, helpfile, context])

Masque binaire précisant Référence d'un fichier


les boutons et (OK, d'aide
Cancel, Retry, ...) icônes
26/02/2014 à afficher
M. Villers – F. Lenartowski Diapo 36
MsgBox: Sélection des boutons

Nom de constante Valeur Description

vbOkOnly 0 Bouton OK
vbOkCancel 1 Boutons OK et Annuler
vbAbortRetryIgnore 2 Boutons Abandonner, Réessayer, Ignorer
vbYesNoCancel 3 Boutons Oui, Non, Annuler
vbYesNo 4 Boutons Oui, Non
vbRetryCancel 5 Boutons Réessayer, Annuler
vbCritical 16 Pour afficher un message avec une
croix blanche sur un disque rouge
vbQuestion 32 Pour afficher un message avec une
bulle et point d'interrogation
vbExclamation 48 Pour afficher un message avec un
point d'exclamation dans un triangle jaune
vbInformation 64 Pour afficher un message avec une
bulle et le i de information
vbDefaultButton1 0 Pour sélectionner le bouton par défaut
vbDefaultButton2 256
vbDefaultButton3 512
vbDefaultButton4 768
vbSystemModal 4096 Pour suspendre toutes les applications tant
que l'utilisateur ne répond pas
Pour la lisibilité des scripts, il vaut
26/02/2014 mieux utiliser les noms de constante
M. Villers – F. Lenartowski Diapo 37
MsgBox: Valeur retournée

Nom de constante Valeur Description

vbOk 1 Bouton OK
vbCancel 2 Bouton Annuler
vbAbort 3 Bouton Abandonner
vbRetry 4 Bouton Réessayer
vbIgnore 5 Bouton Ignorer
vbYes 6 Bouton Oui
vbNo 7 Bouton Non

Pour la lisibilité des


scripts, il vaut mieux
utiliser les noms de
constante

26/02/2014
M. Villers – F. Lenartowski Diapo 38
MsgBox: Exemple

' Script=msgbox1.vbs
' Ce script permet de tester l'utilisation de la fonction MsgBox
Dim Rep, Boutons, code(9), Bouton
code(0)=0
code(1)=1
code(2)=2
code(3)=3
code(4)=4
code(5)=5
code(6)=16
code(7)=32
code(8)=48
code(9)=64
For Each Boutons In code
Rep = MsgBox ("Le 2me argument de la fonction MsgBox est " & boutons,boutons,
"Essai d'utilisation de MsgBox")
Select Case Rep
Case vbOK Bouton="OK"
Case vbCancel Bouton="Annuler"
Case vbAbort Bouton="Arrêter"
Case vbRetry Bouton="Réessayer"
Case vbIgnore Bouton="Ignorer"
Case vbYes Bouton="Oui"
Case vbNo Bouton="Non"
End Select
Wscript.echo "Le bouton utilisé est " & Bouton
Next

26/02/2014
M. Villers – F. Lenartowski Diapo 39
MsgBox: Exemple

vbOkOnly vbOkCancel vbAbortRetryIgnore

vbYesNoCancel vbYesNo vbRetryCancel

vbCritical vbQuestion

vbExclamation vbInformation

26/02/2014
M. Villers – F. Lenartowski Diapo 40
VBScript: La fonction InputBox

✔ La fonction InputBox permet d'afficher une boîte de


dialogue.
✔ La fonction attend la réponse de l'utilisateur et le clic
sur un bouton de soumission.
✔ Retourne le contenu de la réponse.

Texte du Titre de la barre de la


message affiché boîte de message

InputBox(prompt[, title][, default][, xpos][, ypos][, helpfile, context])

Position de la boîte de
Réponse par défaut
dialogue.
26/02/2014
M. Villers – F. Lenartowski Diapo 41
InputBox: Exemple

' inputbox1.vbs
' Exemple de script utilisant une boîte de dialogue.
Dim Rep
Rep=InputBox("Précisez votre nom SVP","Inscription","Sans réponse")
WScript.echo "La réponse est: " & Rep

26/02/2014
M. Villers – F. Lenartowski Diapo 42
VBScript: Objets

✔ Objets = Composants développés par des programmeurs,


accessibles dans les scripts et proposant 2 types de
fonctionnalités.
✔ Les méthodes = actions que l'objet peut réaliser
✔ Les propriétés = informations que l'objet peut
retourner. Ces informations sont accessibles en
lecture seule ou modifiables.

✔ Classe = Description d'un objet, de ses propriétés et de


ses méthodes.

26/02/2014
M. Villers – F. Lenartowski Diapo 43
VBScript: Définition d'une classe

Nom de la classe

Class name Instructions pour définir la classe


statements
End Class

✔ Chaque propriété et méthode aura une portée:


 Public: La propriété ou la méthode est externe.

 Private: La propriété ou la méthode est interne.

 Par défaut la portée sera Public.

✔ Chaque classe pourra contenir


 Un constructeur class_initialize

 Un destructeur class_terminate

 chargés d'initialiser les propriétés lors d'une

instanciation d'un objet ou de libérer les ressources


occupées par lors de la destruction de l'objet.
26/02/2014
M. Villers – F. Lenartowski Diapo 44
VBScript: Définition d'une classe

✔ Si la directive « option explicit » est utilisée, il faut au


préalable prédéfinir la variable avec Dim:

 Dim nom_objet
✔ L'initialisation d'un objet est assurée avec l'instruction
set et le mot-clé New déclenche l'instanciation:

 Set nom_objet = New nom_classe


✔ L'accès à une propriété ou l'utilisation d'une méthode
se fait en suffixant le nom de l'objet avec le nom de la
propriété ou de la méthode:

 nom_objet.nom_propriété = nouvelle_valeur
 nom_objet.nom_procedure(arguments,...)
26/02/2014  Variable = nom_objet.nom_fonction(arguments,...)
M. Villers – F. Lenartowski Diapo 45
VBScript: Exemple de création d'objet

' class1.vbs
' Exemple de définititon et création de classe
Option Explicit
Définition d'une classe
Class Compte
Public nom Déclaration d'une propriété publique
Private mot_de_passe et d'une propriété privée
Private Sub Class_Initialize()
nom="Inconnu" Constructeur
mot_de_passe=""
End Sub

Public Sub init_mot_de_passe() Définition d'une méthode publique


Dim mot_de_passe_1, mot_de_passe_2
WScript.StdOut.Write "Précisez un nouveau mot de passe pour " & nom & ": "
mot_de_passe_1=WScript.StdIn.Readline()
WScript.StdOut.Write "Veuillez confirmer le mot de passe : "
mot_de_passe_2=WScript.StdIn.Readline()
If mot_de_passe_1=mot_de_passe_2 Then
mot_de_passe=mot_de_passe_1
WScript.StdOut.Writeline "Mot de passe modifié"
Else
WScript.StdOut.Writeline "Mot de passe non modifié"
End If
End Sub

26/02/2014
M. Villers – F. Lenartowski Diapo 46
VBScript: Exemple de création d'objet

Public Function authentification() Définition d'une méthode publique


Dim mot_de_passe_a_verifier
WScript.StdOut.Write "Précisez votre mot de passe: "
mot_de_passe_a_verifier=WScript.StdIn.Readline()
If mot_de_passe_a_verifier=mot_de_passe Then
authentification="Correct !"
Else
authentification="Incorrect !"
End If
End Function

End Class Instanciation de l'objet compte1


Dim compte1
avec la classe compte
Set compte1 = NEW compte
compte1.nom="Michel" Modification de la propriété nom de l'objet compte1
compte1.init_mot_de_passe()
WScript.StdOut.Writeline compte1.authentification()

Appel des 2 méthodes de


l'objet compte1

26/02/2014
M. Villers – F. Lenartowski Diapo 47
VBScript: Les « accesseurs »

✔ Dans une programmation orientée objet rigoureuse, il


est recommandé
 de déclarer toutes les propriétés privées,

 De programmer des méthodes pour accéder aux

propriétés
✔ VBScript permet cette rigueur de programmation par le
biais de fonctions appelées « accesseurs »:
 Let comparable à une propriété à écriture seule

 Get comparable à une propriété à lecture seule

 Set

26/02/2014
M. Villers – F. Lenartowski Diapo 48
VBScript: Les « accesseurs »
Class Personne
Private PrStrPrenom
Private PrStrSurnom
Private PrStrTitreNom

Private Sub Class_Initialize()


Response.Write "La classe est initialisée :<br>"
PrStrPrenom = "inconnu"
PrStrSurnom = "l'inconnu"
End Sub

Private Sub Class_Terminate()


Response.Write "La classe est détruite<br>"
End Sub

'*************** LET **************


Public Property Let SexSitNom(StrSexe, BlnMarie, StrNom)
' StrSexe peut prendre les valeurs "m", "M", "f", "F"
' BlnMarie est un booléen et peut donc prendre les valeurs True ou False
Dim StrTitre ' variable locale à la fonction

If Lcase(StrSexe) = "m" Then


StrTitre = "Mr"
Else
If BlnMarie Then
StrTitre = "Mme"
Else
StrTitre = "Melle"
End If
End If
PrStrTitreNom = StrTitre & " " & PrStrPrenom & " " & StrNom
End Property

Public Property Let Prenom(StrPrenom)


PrStrPrenom = StrPrenom
End Property

Public Property Let Surnom(StrSurnom)


PrStrSurnom = StrSurnom
End Property

'*************** GET **************


Public Property Get TitreNom() ' ici les parenthèses peuvent être omises
TitreNom = PrStrTitreNom
End Property

Public Property Get Surnom() ' ici aussi évidemment


Surnom = PrStrSurnom
End Property

End Class

Set instPersonne = New Personne


instPersonne.Prenom = "jérôme"
instPersonne.SexSitNom("m", False) = "Sauvain"
instPersonne.Surnom = "goldorak" ' goldorak n'est pas mon vrai surnom, c'est juste pour l'exemple ;))

Response.Write "Bonjour " & instPersonne.TitreNom


26/02/2014 Response.Write ", ou peut-être
préférez-vous que je vous appelle '" & instPersonne.Surnom & "' ?<br>"
Set instPersonne = Nothing
M. Villers – F. Lenartowski Diapo 49
VBScript: L'héritage ?

✔ VBScript n'autorise pas l'héritage.


✔ VBScript autorise le « pseudo-héritage » en permettant
l'instanciation d'une classe A dans une classe B.

26/02/2014
M. Villers – F. Lenartowski Diapo 50
WSH ?

WSH est un environnement


d'exécution intégrant
✔ Un interpréteur de script
reconnaissant différents
langages:
 VBScript,

 JavaScript,

 WSF (Windows Script File).

✔ Un ensemble limité de 14 objets étendant


la portée des scripts. Ces objets sont
appelés objet d'automation
(COM=Component Object Model)

26/02/2014
M. Villers – F. Lenartowski Diapo 51
WSH: Version actuelle

✔ La version actuelle est WSH 5.8 (sous Windows 7)

✔ WSH 5.6 est livré avec


 Windows XP

 Windows Me

 Windows 2000

 Windows 98

 Windows NT4.0 Option Pack

 MSIE 5.0

✔ WSH 5.6 n'est pas livré avec


 Windows 95

 Windows NT4

26/02/2014
M. Villers – F. Lenartowski Diapo 52
L'objet WScript

Les propriétés:
Wscript.Arguments Contient la collection d'arguments WshArguments.
Wscript.BuildVersion Version de WSH.
Wscript.Version Version de WSH.
Wscript.Interactive Booléen précisant si le script est exécuté interactivement.
Si faux les entrées et sorties WSH ne sont pas opérationnelles.
Wscript.Name Nom de l'interpréteur utilisé: Cscript.exe ou Wscript.exe
Wscript.Path Nom du répertoire contenant l'intrepréteur utilisé.
Wscript.FullName Chemin d'accès de l'interpréteur utilisé:
C:\WINNT\System32\Cscript.exe ou C:\WINNT\System32\Wscripte.exe
Wscript.ScriptName Nom du script exécuté.
Wscript.ScriptFullName Chemin complet du script exécuté.
Wscript.StdErr Objet à utiliser pour les messages d'erreur
Wscript.StdIn Objet correspondant à StdIn pour organiser les lectures console
Wscript.StdOut Objet correspondant à StdOut pour organiser les sorties console

Les méthodes:
Wscript.ConnectObject()
Wscript.DisconnectObject()
Wscript.CreateObject() Méthode permettant de créer un objet d'automation COM de WSH.
Wscript.GetObject() Méthode permettant de récupérer un objet en mémoire ou un objet
persistant à partir d'un fichier sur le disque.
Wscript.echo() Méthode pour sortir un message vers le console ou
une boîte de message.
Wscript.sleep() Méthode permettant de réaliser une temporisation exprimée en msecs.
Wscript.quit() Méthode pour arrêter un script et délivrer un code d'erreur.

26/02/2014
M. Villers – F. Lenartowski Diapo 53
L'objet WshScript: Exemple

' wshscript1.vbs
' Exemple d'exploitation de l'objet WshScript

WScript.StdOut.WriteLine "Description du script exécuté:"


WScript.StdOut.WriteLine "Nom : " & WScript.ScriptName
WScript.StdOut.WriteLine "Origine : " & WScript.ScriptFullName
WScript.Sleep(1000)
WScript.StdOut.Write "Votre nom: "
Nom=WScript.StdIn.ReadLine
WScript.StdOut.Write "Le nom introduit est: "
WScript.StdOut.WriteLine Nom

Quelques méthodes sur les unités d'entrée/sortie:


Write() Sortie sans retour à la ligne
WriteLine() Sortie avec retour à la ligne
Read() Lecture d'un nombre déterminé de caractères
ReadLine() Lecture d'une ligne de caractères

26/02/2014
M. Villers – F. Lenartowski Diapo 54
L'objet WshArgument

WshArgument est un objet représentant les arguments précisés


lors du lancement du script.

Ces arguments peuvent avoir un nom ou pas.


Les propriétés:
WshArgument.Length Nombre d'arguments précisés

WshArgumant.UnNamed Collection d'arguments non nommés.


WshArgument.UnNamed(i) Valeur de l'argument non nommé n° i

WshArgument.Named Collection d'arguments nommés (préfixé avec /nom ).


WshArgument.Named.exists(«A») Booléen précisant si l'argument A existe
WshArgument.Named.item(«A») Valeur de l'argument A

Les méthodes:
WshArguments.count Méthode évaluant le nombre d'éléments de la collection

26/02/2014
M. Villers – F. Lenartowski Diapo 55
L'objet WshArgument: Exemple
' wshargument.vbs
' Exemple dexploitation de l'objet WshArgument
Set argsN = WScript.Arguments.Named
Set argsU = WScript.Arguments.Unnamed

WScript.Echo "Il y a " & argsN.Count & " arguments nommés:"

If argsN.exists("A") then
WScript.Echo "L'argument A= " & argsN.item("A")
else
WScript.Echo "L'argument A n'existe pas"
End If

If argsN.exists("B") then
WScript.Echo "L'argument B= " & argsN.item("B")
else
WScript.Echo "L'argument B n'existe pas"
End If

WScript.Echo "Il y a " & argsU.Count & " arguments non nommés:"

For i = 0 to argsU.Count-1
WScript.Echo "Arg" & i & "= " & argsU(i)
Next

26/02/2014
M. Villers – F. Lenartowski Diapo 56
L'objet WshShell

Les propriétés:
WshShell.CurrentDirectory Propriété précisant le répertoire courant

WshShell.Environment Collection de variables d'environnements

WshShell.SpecialFolders Collection de répertoires spéciaux

Les méthodes:
WshShell.RegRead() Méthode pour lire une valeur d'une clé dans la base de registre
WshShell.RegWrite() Méthode pour changer la valeur d'une clé dans la base de registre
WshShell.RegDelete() Méthode pour supprimer une clé dans la base de registre

WshShell.CreateShortcut() Méthode pour créer un objet WshShortCut ou WshUrlShortCut


représentant un raccourci ou un lien

WshShell.Popup() Méthode pour ouvrir une boîte de message

WshShell.LogEvent() Méthode permettant de délivrer un message vers un fichier de Log.

WshShell.Exec() Méthode permettant d'instancier un environnement d'exécution


pour une application et crée un object WshScriptExec

WshShell.ExpandEnvironmentStrings
Méthode permettant d'accéder à une variable d'environnement
complémentaire
26/02/2014
M. Villers – F. Lenartowski Diapo 57
L'objet WshEnvironment
Les collections d'environnements:
WshSheel.Environment(« SYSTEM ») désignent les collections de variables
WshSheel.Environment(« USER ») d'environnement du Système,
WshSheel.Environment(« VOLATILE ») de l'utilisateur, etc...
WshSheel.Environment(« PROCESS»)
Liste des variables d'environnements adressables avec l'objet WshEnvironment:
NUMBER_OF_PROCESSORS Nbre de processeurs de l'ordinateur
PROCESSOR_ARCHITECTURE Type de processeur de l'ordinateur
PROCESSOR_IDENTIFIER ID du processeur de l'ordinateur
PROCESSOR_LEVEL
PROCESSOR_REVISION
OS Système d'exploitation utilisé
COMSPEC Commande exécutée
HOMEDRIVE Lettre de la partition principale
HOMEPATH Répertoire par défaut de l'utilisateur
PATH Valeur de la variable d'environnement PATH
PATHEXT Extensions des fichiers exécutables
PROMPT Chaine indicative du DOS (prompt)
SYSTEMDRIVE Lettre du disque contenant le système d'exploitation
SYSTEMROOT Chemin vers la racine du répertoire du système
d'exploitation
WINDIR Chemin vers la racine du répertoire du système
d'exploitation
TEMP Chemin vers le répertoire temporaire
26/02/2014
TMP
M. Villers – F. Lenartowski Chemin vers le répertoire temporaire Diapo 58
L'objet WshSpecialFolders

L'objet WshSpecialFolders permet d'obtenir le chemin


d'accès de:  AllUsersDesktop
 AllUsersStartMenu
 AllUsersPrograms
 AllUsersStartup
 Desktop
 Favorites
 Fonts
 MyDocuments
 NetHood
 PrintHood
 Programs
 Recent
 SendTo
 StartMenu
 Startup
 Templates
26/02/2014
M. Villers – F. Lenartowski Diapo 59
L'objet WshShell: Exemple

' wshshell1.vbs
' Exemple de script extrayabt différentes informations du système
'
' Lecture d'une clé de la base de registre
Set MonShell=WScript.CreateObject("WScript.Shell")
CleProduit=MonShell.RegRead("HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\ProductId")
WScript.StdOut.WriteLine "La clé de produit est " & CleProduit
'
' Lecture d'une variable d'environnement
Set MonEnvironment=MonShell.Environment("SYSTEM")
WScript.StdOut.WriteLine "Le système d'exploitation est " & MonEnvironment("OS")
'
' Détermination de répertoires spéciaux
MesDocs=MonShell.SpecialFolders("MyDocuments")
WScript.StdOut.WriteLine "Mes Documents est " & MesDocs
MonBureau=MonShell.SpecialFolders("Desktop")
WScript.StdOut.WriteLine "Mon bureau est " & MonBureau

26/02/2014
M. Villers – F. Lenartowski Diapo 60
Les objets WshController, WshRemote,
WshRemoteError
✔ WSH propose une technologie permettant d'exécuter des
scripts sur une machine distante.
✔ L'exploitation de cette technologie n'est possible qu'en
autorisant au préalable le lancement de script distant sur
l'ordinateur distant:
La clé HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Script Host\Settings
doit valoir 1

✔ L'exécution de scripts distants consiste à envoyer des


scripts, à les faire exécuter et à récolter les messages
d'erreurs. Cette technologie s'articule sur 3 objets:

 WshController
 WshRemote
 WshRemoteError
26/02/2014
M. Villers – F. Lenartowski Diapo 61
L'objet WshNetwork

Les propriétés:
WshNetwork.ComputerName Propriété précisant le nom de l'ordinateur
WshNetwork.UserDomain Propriété précisant le nom de domaine
WshNetwork.UserName Propriété précisant le nom d' l'utilisateur

Les méthodes:
WshNetwork.MapNetworkDrive() Méthode permettant d'assigner un partage réseau à une
lettre de lecteur.
WshNetwork.RemoveNetworkDrive() Méthode permettant de désassigner une lettre de
lecteur avec un partage réseau.
WshNetwork.EnumNetworkDrives() Méthode permettant de connaître les lettres de
lecteurs assignées à des partage réseau.
WshNetwork.AddPrinterConnection() Méthode permettant d'assigner une imprimante réseau à
une porte d'imprimante LPT1, LPT2: ...
WshNetwork.AddWindowsPrinterConnection()
Méthode permettant de définir l'accès à un partage
d'impression
WshNetwork.RemovePrinterConnection() Méthode permettant de supprimer l'accès à un partage
d'impression
WhsNetWork.SetDefaultPrinter() Méthode permettant de définir l'imprimante par
défaut
WhsNetWork.EnumPrinterConnections() Méthode permettant de connaître les imprimantes
accessibles

Remarque: WshNetwork ne prend pas en charge l'installation des pilotes d'impressions. Il


faut donc qu'un pilote soit pré-installé pour qu'une imprimante puisse être accessible.
26/02/2014
M. Villers – F. Lenartowski Diapo 62
WshNetwork: Exemple
' wshnetwork.vbs
' Exemple de script utilisant wshnetwork
'
' Lecture d'une clé de la base de registre
Set Monreseau=WScript.CreateObject("Wscript.Network")

Wscript.StdOut.WriteLine "Le nom de l'ordinateur est: " & Monreseau.ComputerName


Wscript.StdOut.WriteLine "Le nom de l'utilisateur est: " & Monreseau.UserName

Set Drives = Monreseau.EnumNetworkDrives()


For i = 0 to Drives.Count - 1 step 2
Wscript.StdOut.WriteLine "Lecteur " & Drives.item(i) & " = " & Drives.item(i+1)
Next

Set Printers = Monreseau.EnumPrinterConnections()


For i = 0 to Printers.Count - 1 step 2
Wscript.StdOut.WriteLine "Imprimante " & Printers.item(i) & " = " & Printers.item(i+1)
Next

26/02/2014
M. Villers – F. Lenartowski Diapo 63
Wsh: Conclusions

✔ WSH constitue une solution incomplète pour


automatiser l'administration d'un système Windows:

 L'informaticien dispose d'une syntaxe de


programmation évoluée permettant de manipuler
facilement des variables, de mettre en oeuvre les
principes de la programmation procédurale et orientée
objet.

 De 14 classes primitives constituant une solution de


base pour interagir avec le système d'exploitation.

26/02/2014
M. Villers – F. Lenartowski Diapo 64
Wsh: Les insuffisances

✔ Comment administrer les fichiers et répertoires (copier,


supprimer, déplacer, renommer) ?
✔ Comment gérer les partages et les ACLs ?
✔ Comment extraire diverses informations de contrôle
relatives aux ressources de la station de travail ?
✔ Comment installer des pilotes d'impression ?

26/02/2014
M. Villers – F. Lenartowski Diapo 65
Solution: Objet Externe ou ActiveX

Objet COM Externe ou ActiveX

WSH =
VBScript +

FSO ADSI
WMI

Hardware,
Lecteur, répertoire, fichier Software Active Directory
26/02/2014
M. Villers – F. Lenartowski Diapo 66
Script RunTime ou FSO (File System Object)

✔ Script RunTime est un composant donnant accès au


système de fichier.
✔ Script RunTime est aussi appelé FSO (File System
Object).
✔ Script RunTime se trouve dans la librairie scrrun.dll

✔ L'instanciation dans VBScript d'objet FSO constitue


donc une solution pour manipuler les fichiers et
répertoires par scripting.

Set objFSO = CreateObjet(« Scripting.FileSystemObject »)

26/02/2014
M. Villers – F. Lenartowski Diapo 67
FSO ?

FSO est une hiérarchie de classes qui a pour objectif de


permettre une manipulation simple des fichiers, dossiers et
unités logiques.
 FileSystemObject: point d'entrée de la hiérarchie représentant le
système de fichiers. Principalement composé de méthodes.
 Drive: Objet représentant une unité logique (disque dur, CD/DVD,
disque réseau, ...) et composé de propriétés. Membre de la
collection Drives de FSO.
 Folder: Objet représentant un répertoire et composé de propriétés.
Cet objet est instanciée avec la méthode GetFolder() de FSO.
 File: Objet représentant un fichier et composé de propriétés. Cet
objet est instancié avec la méthode GetFile() de FSO.
 TextStream: Objet composé de méthodes permettant d'organiser
la lecture ou l'écriture d'un fichier. Cet objet est instancié avec les
26/02/2014 méthodes CreateTextFile() ou OpenTextFile() de FSO.
M. Villers – F. Lenartowski Diapo 68
FSO: Méthodes de l'objet FSO

Retourne un chemin d'accès en concaténant le nom du fichier


BuildPath(path,name)
passé en paramètre (name) au chemin existant (path).
Copie un fichier d'une source vers une destination. Si jamais le
CopyFile(source,destination[,overwrite]) fichier de destination existe déjà, le paramètre optionnel
overwrite permet de préciser (true) si il doit être écrasé.
Copie un répertoire, ainsi que tous les fichiers et sous-
répertoires qu'il contient, d'une source vers une destination. Si
CopyFolder(source,destination[,overwrite]) jamais le répertoire de destination existe déjà, le paramètre
optionnel overwrite permet de préciser (true) si les éléments
qu'il contient doivent être remplacés.
Crée un répertoire, dont l'emplacement et le nom sont précisé
CreateFolder(foldername)
par le chemin d'accès complet précisé en argument.
Crée un fichier dont le nom est précisé par le chemin d'accès
complet précisé en argument (filename) et retourne un objet
TextStreamObject pouvant être utilisé pour lire ou écrire dans le
CreateTextFile(filename[,overwrite[,unicode]]) fichier. Si le fichier précisé existe déjà, le paramètre optionnel
overwrite permet de préciser (lorsqu'il vaut True) si il doit être
écrasé. Le second paramètre optionnel indique si le fichier texte
à créer doit l'être au format Unicode.
Supprime le ou les fichiers dont le nom est précisé en argument.
Des caractères joker (appelés wildcards) peuvent être utilisés
DeleteFile(filename[,force]) pour désigner plusieurs fichiers (par exemple * pour désigner
tous les fichiers ou f* pour indiquer tous les fichiers
commençant par la lettre f)
A la manière de DeleteFile, permet de supprimer un répertoire
DeleteFolder(filename[,force])
26/02/2014 et tous les fichiers et sous-répertoires qu'il contient.
M. Villers – F. Lenartowski Diapo 69
FSO: Méthodes de l'objet FSO

Permet de vérifier si le lecteur dont le nom est précisé en paramètre ( drivename)


DriveExists(drivename)
existe. Retourne True s'il existe, sinon False
Permet de vérifier si le fichier dont le nom est précisé en paramètre ( filename)
FileExists(filename)
existe. Retourne True s'il existe, sinon False
Permet de vérifier si le répertoire dont le nom est précisé en paramètre
FolderExists(foldername)
(filename) existe. Retourne True s'il existe, sinon False
Retourne le chemin d'accès complet à partir de la racine du lecteur pour le
GetAbsolutePathName(path)
chemin précisé en paramètre.
Retourne le nom du fichier, à partir du chemin d'accès complet précisé en
GetBaseName(path)
paramètre.
Retourne un objet Drive correspondant au lecteur, à partir du chemin d'accès
GetDrive(path)
complet précisé en paramètre.
Retourne une chaîne contenant le nom du lecteur, à partir du chemin d'accès
GetDriveName(path)
complet précisé en paramètre.
Retourne l'extension du fichier, à partir du chemin d'accès complet précisé en
GetExtensionName(path)
paramètre.
Retourne un objet File correspondant au fichier dont le chemin d'accès est
GetFile(filename)
précisé en paramètre.
Retourne le nom du fichier ou du dernier répertoire contenu dans le chemin
GetFileName(path)
d'accès précisé en paramètre.
GetFileVersion(path)
26/02/2014 Retourne la version du fichier dans le chemin d'accès précisé en paramètre.
M. Villers – F. Lenartowski Diapo 70
FSO: Méthodes de l'objet FSO

Retourne le nom du répertoire parent, à partir du chemin d'accès


GetParentFolderName(path)
complet précisé en paramètre.
Retourne le chemin d'accès complet pour le répertoire spécial dont
GetSpecialFolder(folder) le nom est précisé en paramètre (par exemple \Windows, \System
ou \Desktop).
Retourne un nom de fichier créé aléatoirement, afin de créer un
GetTempName()
fichier temporaire.
Déplace un ou plusieurs fichiers d'un emplacement source vers une
MoveFile(source,destination)
destination.
Déplace un ou plusieurs répertoire d'un emplacement source vers
MoveFolder(source,destination)
une destination.
Ouvre le fichier dont le nom est précisé par le chemin d'accès
complet précisé en argument ( filename) et retourne un objet
TextStreamObject pouvant être utilisé pour lire ou écrire dans le
fichier. L'argument facultatif iomode précise de mode d'ouverture du
fichier. Les valeurs possibles sont les suivantes :

 1, ouverture en lecture ( Reading) ;


OpenTextFile(filename[,iomode[,create[,
format]]])  2, ouverture en écriture (Writing), permettant d'écrire des
données dans le fichier, venant remplacer les données existantes ;
 8, ouverture en ajout (Appending), permettant d'écrire des
données dans le fichier, venant s'ajouter à la suite des données
existantes.
26/02/2014
M. Villers – F. Lenartowski Diapo 71
FSO: Exemple d'utilisation de méthodes

' FSO_methode.vbs
' Exemple d'appel de méthode FSO
Option Explicit

Dim objFSO
Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FolderExists("C:\TMP") then
Wscript.StdOut.WriteLine ("Le répertoire C:\TMP existe déjà")
Else
objFSO.CreateFolder("C:\TMP")
Wscript.StdOut.WriteLine ("Création du répertoire C:\TMP")
End If

26/02/2014
M. Villers – F. Lenartowski Diapo 72
FSO: Propriétés de l'objet Drive

Instanciation:
For Each Drive in objFSO.Drives

Propriétés:
Drive.AvailableSpace Espace disponible en octets du lecteur. Si les quotas sont
activés, capacité disponible pour l'utilisateur.
Drive.DriveLetter Lettre assignée au lecteur.
Drive.DriveType Valeur indiquant le type de périphérique (1=Disque amovible,
2=Disque dur, 3=Disque réseau, 4=CD/DVD, 5=Disque RAM)
Drive.FreeSpace Espace disque libre en octets pour le lecteur.
Drive.FileSystem Type de système de fichier (FAT, FAT32, NTFS, etc...)
Drive.IsReady Booléen précisant si le lecteur est prêt.
Drive.Path Chemin d'accès au péréiphérique: Une lettre pour un disque
local, un chemin UNC pour un disque réseau.
Drive.RootFolder Chemin d'accès au répertoire racine du lecteur.
Drive.SerialNumber Numéro de série du média. 0 pour les lecteurs de disquettes
et disque réseau.
Drive.ShareName Nom de partage assigné à un disque réseau.
Drive.TotalSize Capacité totale du disque en octets.
Drive.VolumeName Nom de volume du périphérique.

26/02/2014
M. Villers – F. Lenartowski Diapo 73
FSO: Exemple d'utilisation de l'objet Drive
' FSO_Drive.vbs
' Exemple d'utilisation d'objet FSO_Drive
Option Explicit
Dim objFSO, colDrives, objDrive, DriveType

Set objFSO = CreateObject("Scripting.FileSystemObject")


Set colDrives=objFSO.Drives

For Each objDrive in colDrives


Wscript.StdOut.Write "Lecteur " & objDrive.DriveLetter & ": "
Select Case objDrive.DriveType
Case 1 DriveType="Périphérique Amovible "
Case 2 DriveType="Disque Dur "
Case 3 DriveType="Disque réseau "
Case 4 DriveType="CD/DVD "
Case 5 DriveType="Disque RAM "
End Select
Wscript.StdOut.Write DriveType
If objDrive.IsReady Then
Wscript.StdOut.Write Int(objDrive.TotalSize/(1024*1024)) & " Moctets"
End If
Wscript.StdOut.WriteLine
Next

26/02/2014
M. Villers – F. Lenartowski Diapo 74
FSO: Objet Folder

Instanciation:
Set Folder = objFSO.GetFolder(« C:\chemin_du_répertoire »)

Propriétés:
Folder.DateCreate Date de création du répertoire
Folder.DateLastAccessed Date du dernier accès utilisateur au répertoire
Folder.DateLastModified Date de la dernière modificiation du répertoire
Folder.Drive Lettre du lecteur hébergeant le répertoire
Folder.Name Nom du répertoire
Folder.ParentFolder Chemin du répertoire parent
Folder.Path Chemin complet (lettre:\....\repertoire) du répertoire
Folder.ShortName Nom du répertoire en nomenclature DOS (8 caractères)
Folder.ShortPath Chemin complet du répertoire en nomenclature DOS
Folder.Size Taille du répertoire en octets
Folder.Type Chaîne décrivant le type de répertoire

26/02/2014
M. Villers – F. Lenartowski Diapo 75
FSO: Objet File

Instanciation:
Set File = objFSO.GetFile(« C:\chemin_du_fichier »)

Propriétés:
File.DateCreate Date de création du fichier
File.DateLastAccessed Date du dernier accès utilisateur au fichier
File.DateLastModified Date de la dernière modificiation du fichier
File.Drive Lettre du lecteur hébergeant le fichier
File.Name Nom du fichier
File.ParentFolder Chemin du répertoire hébergeant le fichier
File.Path Chemin complet (lettre:\....\fichier.suffixe) du fichier
File.ShortName Nom du fichier en nomenclature DOS (8.3 caractères)
File.ShortPath Chemin complet du fichier en nomenclature DOS
File.Size Taille du fichier en octets
File.Type Chaîne décrivant le type de fichier suivant les dénominations
enregistrées dans la base de registre

26/02/2014
M. Villers – F. Lenartowski Diapo 76
FSO: Exemple d'utilisation de l'objet Folder

' FSO_Folder.vbs
' Exemple d'utilisation d'objet FSO_Folder
Option Explicit
Dim objFSO, objFolder, colSubfolders,objSubfolder,Typefolder

Set objFSO = CreateObject("Scripting.FileSystemObject")


Set objFolder=objFSO.GetFolder("C:\")
Set colSubfolders=objFolder.Subfolders

Wscript.StdOut.WriteLine "Le disque C: se compose des répertoires"


For Each objSubfolder in colSubfolders
Wscript.StdOut.Write objSubfolder.Name
Wscript.StdOut.Write "("
If (objSubfolder.Attributes And 2) = 2 then Wscript.StdOut.Write " Caché"
If (objSubfolder.Attributes And 4) = 4 then Wscript.StdOut.Write " Système"
If (objSubfolder.Attributes And 16) = 16 then Wscript.StdOut.Write " Defaut"
If (objSubfolder.Attributes And 32) = 32 then Wscript.StdOut.Write " Archive"
WScript.StdOut.WriteLine ")"
Next

26/02/2014
M. Villers – F. Lenartowski Diapo 77
FSO: Objet TextStream

Instanciation:
Set Stream = objFSO.CreateTextFile(...) ou
Set Stream = objFSO.OpenTextFile(...)

Propriétés:
Stream.AtEndOfLine Vrai si le pointeur est à la fin de ligne.
Stream.AdEndOfStream Vrai si le pointeur est à la fin du fichier.
Stream.Line Numéro de la ligne courante actuellement accédée par le pointeur.
Stream.Column Position actuelle du caractère accédé par le pointeur.

Méthodes:
Stream.Close() Permet de fermer le fichier.
Stream.Read(n) Permet de lire n caractères.
Stream.ReadLine() Permet de lire tous les caractères d'une ligne.
Stream.Skip(n) Permet d'ignorer les n caractères suivants.
Stream.SkipLine() Permet de passer à la ligne suivante.
Stream.Write(chaîne) Permet d'écrire la chaîne dans le fichier sans retour à la ligne.
Stream.WriteLine(chaîne) Permet d'écrire la chaîne dans le fichier avec un retour à
la ligne.
Stream.WriteBlankLines(n) Permet d'écrire n lignes blanches dans le fichier.

26/02/2014
M. Villers – F. Lenartowski Diapo 78
Les types de groupes

Groupe local:

✔ Groupe intra-domaine
✔ Utilité limitée au domaine et à l'organisation de la sécurisation des ressources du
domaine. Inexploitable par les domaines approuvants.
✔ Géré par l'administrateur d'un domaine approuvant.
✔ Référencé pour définir des ACE
✔ Complété avec
✔ Des utilisateurs du domaine (autorisés mais déconseillés)

✔ Des utilisateurs d'un domaine approuvé (autorisés mais fortement déconseillés)

✔ Des groupes globaux du domaine

✔ Des groupes globaux d'un domaine approuvé

Groupe global:

✔ Groupe inter-domaine
✔ Dans un domaine approuvé:
✔ préparé par l'administrateur du domaine approuvé

✔ complété avec des utilisateurs du domaine approuvé en fonction de critères spécifiques.

✔ Dans un domaine approuvant :


✔ complété avec des utilisateurs du domaine en fonction de critères spécifiques

✔ préparé avant de se focaliser sur la sécurisation des ressources

Eviter de les référencer dans des ACE


09/03/2014 1
Les unités organisationnelles

Zone hiérarchique « personnalisée » définie dans l'annuaire LDAP permettant d'entreposer


et de séparer des définitions
✔ d'utilisateurs du domaine

✔ de groupes du domaine

✔ d'ordinateurs fédérés au domaine

Les unités organisationnelles (OU) peuvent s'imbriquer les unes dans les autres.

Contrainte: un utilisateur, un groupe ou un ordinateur ne peut être défini que dans une
seule unité organisationnelle.

09/03/2014 2
Rôles FSMO

✔ Flexible Single Master Operation


Rôle particulier assuré par un seul DC dans une forêt ou un domaine
Un rôle FSMO est
● une mission particulière

● ne pouvant être assurée que par un seul DC

● pour éviter des discordances dans une forêt ou un domaine

Pour une mission particulière, le DC « compétent » est appelé le maître


d'opération.

Les rôles FSMO peuvent être attribués à différents DC.


✔ 2 types de rôle:
✔ Rôles dans une forêt :
● Maître de schéma (schema master)
● Maître d'attribution de noms de domaine (domain naming master)
✔ Rôles dans un domaine :
● Maître d'infrastructure
● Maître des ID relatifs
● Emulateur de contrôleur principal de domaine
09/03/2014 3
Rôles FSMO

Rôle Type Description

Maître de schéma Unique dans ● Prendre en charge mes


(Schema Master) une forêt modifications du schema,
● Répliquer les modifications du
schema vers les autres DC de la
forêt
Maître d'attribution des Unique dans ● Ajouter ou supprimer un domaine
noms de domaine une forêt dans une forêt.
(Naming Master) ● Créer ou supprimer des relations
d'approbations externes.
Maître des ID relatifs Unique dans ● Attribue des « pools » de n° relatifs
(RID Master) un domaine aux différents DC

Maître d'infrasctructure Unique dans ● Mettre à jour des références


(Infrastructure Master) un domaine d'objets inter-domaines.
● Traduction des objets de type
GUID, SID et DN.
Emulateur de contrôleur Unique dans ● Assurer une rétrocompatibilité avec
de domaine principal un domaine les serveurs NT 4.0 et les clients
(PDC Emulator)
09/03/2014 antérieurs à Win 2000. 4
Rôles FSMO : Liste des DC avec les rôles FSMO

09/03/2014 5
✔ Découverte de Win 2012 R2 après une installation de base
✔ Opérations prépartoires avant promulgation de l'Active Directory
✔ Promulgation d'un premier contrôleur de domaine (bxl.belgium.lan) dans un nouvelle forêt
✔ Rattachement de stations de travail à un domaine Windows

09/03/2014 1
Découverte de Win 2012 R2
après une installation
de base

09/03/2014 2
Win2012R2 : Ecran avant l'entrée en session

09/03/2014 3
Win2012R2 : Entrée en session sur un serveur « autonome »

09/03/2014 4
Win2012R2 : Bureau vide – via touche « escape »

09/03/2014 5
Win2012R2 : Menu principal – clic « bouton Windows droit »

09/03/2014 6
Win2012R2 : Programmes et fonctionnalités

09/03/2014 7
Win2012R2 : Mises à jour installées

09/03/2014 8
Win2012R2 : Options d'alimentation

09/03/2014 9
Win2012R2 : Observateurs d'événement

09/03/2014 10
Win2012R2 : Système

09/03/2014 11
Win2012R2 : Gestionnaire de périphériques

09/03/2014 12
Win2012R2 : Connexions réseau

09/03/2014 13
Win2012R2 : Gestion des disques

09/03/2014 14
Win2012R2 : Gestion de l'ordinateur - Utilisateurs

09/03/2014 15
Win2012R2 : Gestion de l'ordinateur - Groupes

09/03/2014 16
Win2012R2 : Panneau de configuration

09/03/2014 17
Win2012R2 : Tous les panneaux de configuration

09/03/2014 18
Win2012R2 : Bureau d'accueil – clic « bouton Windows gauche »

09/03/2014 19
Win2012R2 : Gestionnaire de serveur

09/03/2014 20
Win2012R2 : Gestionnaire de serveur – Menu « outils »

09/03/2014 21
Win2012R2 : Windows PowerShell

09/03/2014 22
Win2012R2 : Outils d'administration

09/03/2014 23
Opérations préparatoires avant promulgation de l'Active Directory

✔ Configuration IP et DNS de l'interface réseau


Pour le 1er contrôleur de domaine d'une forêt,
le déclarer client DNS de lui même (127.0.0.1).

Pour les contrôleurs de domaine additionnels d'une forêt,


le déclarer client DNS du 1er serveur.
✔ Configuration du nom du serveur
Le redémarrage du serveur après son changement de nom
est recommandé.
✔ Configuration d'un accès bureau distant (optionnel)
L'administration via la console intégrée dans un
hyperviseur s'avère peu pratique pour 2 raisons :
● résolution réduite
● présence d'un « ascenseur »
L'administration via un bureau à distance s'avère plus
confortable mais ne permet pas de surveiller l'arrêt et
le démarrage du serveur

09/03/2014 24
Configuration IP et DNS du futur contrôleur de domaine

09/03/2014 25
Le serveur sera client DNS de lui même
Configuration du nom du futur contrôleur de domaine

09/03/2014 26
Configuration « utilisation à distance »

09/03/2014 27
Création d'une nouvelle forêt avec un 1er contrôleur de domaine

bxl.belgium.lan

LDAP
+
DNS

192.168.56.253

09/03/2014 28
09/03/2014 29
09/03/2014 30
09/03/2014 31
09/03/2014 32
09/03/2014 33
09/03/2014 34
Sélection de l'installation du rôle « AD DS »

09/03/2014 35
Sélection de l'installation de la fonctionnalité « services de stockage »

09/03/2014 36
Rappel du rôle « AD DS »

09/03/2014 37
Confirmer la demande d'installation de nouveaux rôles
et fonctionnalités

09/03/2014 38
Démarrage de l'installation des nouveaux rôles et fonctionnalités

09/03/2014 39
Fin l'installation du rôle « AD DS » - Invitation à promulguer le DC

09/03/2014 40
Invitation à promulguer le DC via une notification

09/03/2014 41
Configuration d'un nom DNS racine pour une nouvelle forêt.

09/03/2014 42
Configuration des niveaux fonctionnels de la forêt et du domaine
Configuration du mot de passe de restauration de l'annuaire

09/03/2014 43
Rappel de la nécessité d'installer un service DNS

09/03/2014 44
Configuration du nom NetBIOS « dérivé »

09/03/2014 45
Configuration des répertoires pour le déploiement de l'AD
et du répertoire partagé SYSVOL

09/03/2014 46
Rappel des configurations demandées

09/03/2014 47
Rappel des configurations demandées

09/03/2014 48
Rappel des configurations demandées

09/03/2014 49
Démarrage des opérations d'initialisation de l'annuaire

09/03/2014 50
Installation du service DNS sur l'AD

09/03/2014 51
Initialisation des objets dans l'annuaire

09/03/2014 52
Redémarrage du serveur à la fin de la promulgation de l'AD.

09/03/2014 53
Ecran d'entrée en session dans le serveur promulgué DC

09/03/2014 54
Présence de nouvelles fenêtres dans le gestionnaire du serveur

09/03/2014 55
AD: Rôle « AD DS »

09/03/2014 56
AD: Rôle « DNS »

09/03/2014 57
AD : Outils d'administration - Nouvelles options

09/03/2014 58
AD : Outils d'administration - Nouvelles options

✔ Centre d'administration Active Directory


✔ DNS
✔ Domaines et approbations Active Directory
✔ Gestion de stratégie de groupe
✔ Modification ADSI
✔ Module Active Directory pour Windows PowerShell
✔ Sites et services Active Directory
✔ Utilisateurs et ordinateurs Active Directory

09/03/2014 59
AD : Absence de comptes et de groupes locaux

09/03/2014 60
AD : Utilisateurs et groupes initiaux dans l'annuaire

09/03/2014 61
AD : Liste des contrôleurs de domaine dans l'annuaire

09/03/2014 62
DNS : Le service DNS précise les noms des contrôleurs de domaine

09/03/2014 63
09/03/2014 64
Rattachement d'une station de travail à un contrôleur de domaine

bxl.belgium.lan

pc1.belgium.lan pc2.belgium.lan
LDAP
+
DNS

192.168.56.201 192.168.56.202 192.168.56.253

09/03/2014 65
Ecran d'entrée en session sur une station de travail isolée

09/03/2014 66
Prérequis : chaque PC souhaitant rejoindre un domaine doit être client DNS
du contrôleur de domaine

09/03/2014 67
Ouvrir les propriétés du poste de travail sur la station de travail

09/03/2014 68
Modifier les paramètres sur la station de travail

09/03/2014 69
Préciser le nom du poste de travail et le domaine à rejoindre

09/03/2014 70
Préciser un compte d'administration du domaine et un mot de passe avant
d'engager le rattachement de la station de travail

09/03/2014 71
Confirmation du rattachement de la station de travail au domaine

09/03/2014 72
Obligation de redémarrer la station de travail après son rattachement au domaine

09/03/2014 73
Ecran d'entrée en session d'une station de travail rattachée à un domaine

09/03/2014 74
Ecran d'entrée en session d'une station de travail rattachée à un domaine

09/03/2014 75
bxl.belgium.lan : Liste des stations de travail rattachées à un domaine

09/03/2014 76
bxl.belgium.lan : Liste des adresses IP des stations dans le serveur DNS

09/03/2014 77
Création des ressources de stockage dans un domaine

09/03/2014 78
bxl.belgium.lan: Hébergement des répertoires utilisateurs

09/03/2014 79
bxl.belgium.lan: Hébergement des répertoires utilisateurs

09/03/2014 80
bxl.belgium.lan: Hébergement des répertoires utilisateurs

09/03/2014 81
bxl.belgium.lan: Hébergement des répertoires utilisateurs

09/03/2014 82
bxl.belgium.lan: Hébergement des répertoires utilisateurs

09/03/2014 83
bxl.belgium.lan: Hébergement des répertoires utilisateurs

09/03/2014 84
bxl.belgium.lan: Hébergement des répertoires utilisateurs

09/03/2014 85
bxl.belgium.lan: Hébergement des répertoires utilisateurs

09/03/2014 86
bxl.belgium.lan: Hébergement des répertoires utilisateurs

09/03/2014 87
bxl.belgium.lan: Hébergement des répertoires utilisateurs

09/03/2014 88
bxl.belgium.lan: Hébergement des profils itinérants

09/03/2014 89
bxl.belgium.lan: Création du partage home

09/03/2014 90
bxl.belgium.lan: Création du partage home

09/03/2014 91
bxl.belgium.lan: Création du partage home

09/03/2014 92
bxl.belgium.lan: Création du partage « home »

09/03/2014 93
bxl.belgium.lan: Création du partage « home »

09/03/2014 94
bxl.belgium.lan: Création du partage « home »

09/03/2014 95
bxl.belgium.lan: Création du partage caché « profiles »

09/03/2014 96
bxl.belgium.lan: Création du partage caché « profiles »

09/03/2014 97
Mise en place d'une relation d'approbation entre 2 domaines

bxl.belgium.lan

pc1.belgium.lan pc2.belgium.lan
LDAP
+
DNS

192.168.56.201 192.168.56.202 192.168.56.253

Problème pris en considération :


192.168.56.53

Comment permettre à des utilisateurs de la forêt italia.lan


d'accéder à des ressources de la forêt belgium.lan ? LDAP
+
On supposera que : DNS

● Le schéma fonctionnel des forêts peut-être différent. roma.italia.lan


● La relation d'approbation devra être unidirectionnelle.

09/03/2014 98
Relation d'approbation externe ?

Une relation d'approbation externe est une disposition permettant de continuer à établir
un partenariat uniquement entre 2 domaines explicites.

Cette relation d'approbation reste donc


● non transitive

● non automatique

Ce modèle de relation d'approbation est donc celui qui sera étudié


dans ce cours afin d'appréhender l'ensemble des dispositions à mettre
en ouvre pour disposer d'un mécanisme d'approbation opérationnel.

09/03/2014 99
Etapes de mise en place d'une relation d'approbation

Problème 1:

Les DC des 2 domaines pour lequel une relation d'approbation doit être établie doivent
être en mesure de se localiser.

La communication entre DC ne peut être engagée qu'en connaissant les


adresses IP des « confrères ».

Dans un domaine « Active Directory », les serveurs DNS diffusent


● la liste nominative des DC d'un domaine « Windows »

● Les adresses IP de tous les équipements du domaine dont les DC.

Conséquence:

Avant d'envisager une coopération active entre les DC des 2 domaines, il sera nécessaire
d'organiser une coopération entre les serveurs DNS des 2 domaines pour qu'ils puissent
exploiter et redistribuer leurs définitions DNS mutuelles.

Les redirections DNS conditionnelles dans les serveurs DNS sont


prévues pour mettre en œuvre cette coopération.

09/03/2014 100
roma.italia.lan: ajout d'une redirection DNS conditionnelle

09/03/2014 101
roma.italia.lan: ajout d'une redirection DNS conditionnelle

09/03/2014 102
roma.italia.lan: redirection DNS conditionnelle opérationnelle

09/03/2014 103
bxl.belgium.lan: ajout d'une redirection DNS conditionnelle

09/03/2014 104
bxl.belgium.lan: ajout d'une redirection DNS conditionnelle

09/03/2014 105
bxl.belgium.lan: Redirection DNS conditionnelle opérationnelle

09/03/2014 106
Etapes de mise en place d'une relation d'approbation

Problème 2:

Dès que les DC des 2 domaines pour lequel une relation d'approbation doit être établie
sont en mesure de se contacter, il sera nécessaire de procéder à un accord pour
permettre et/ou limiter aux équipements ou utilisateurs issus des 2 domaines d'accéder
aux information de l'annuaire et aux ressources de l'autre domaine.

Les administrateurs respectifs dans les 2 domaines devront paramétrer


cet accord de partenariat.
La relation d'approbation sera t-elle bidirectionnelle (symétrique) ou
unidirectionnelle (restreinte) ?
Solution: Les outils « relations et appobations active directory » permettent de
réaliser ce paramétrage.

L'acceptation mutuelle de l'accord de partenariat doit pouvoir être


configuré sans devoir échanger les mots de passe des administrateurs
respectifs pour que chaucn reste maître chez soi.

Solution: L'acceptation de l'accord dans les 2 domaines pourra être


activé au moyen d'un mot de passe convenu lié à la relation
09/03/2014 d'approbation devant être établie. 107
Démarches d'approbation à réaliser dans les 2 domaines

Dans roma.italia.lan:

● Configurer une relation d'approbation externe entrante avec le domaine belgium.lan

L'approbation entrante doit être interprétée comme étant le fait que des
informations d'identifications dans le domaine italia.lan pourront être
exploitées par les équipements du domaine belgium.lan ainsi que le service
d'authentification du domaine italia.lan.
●Convenir d'un mot de passe associé à la relation d'appobation pour la
« contresigner »
Dans bxl.belgium.lan:

● Configurer une relation d'approbation externe sortante avec le domaine italia.lan

L'approbation sortante doit être interprétée comme étant le fait que les
ressources (PC, partages) du domaine belgium.lan pourront être accessibles
aux utilisateurs authentifiés dans le domaine italia.lan.
●Convenir d'un mot de passe associé à la relation d'appobation pour la
« contresigner »
09/03/2014 108
Roma.italia.lan: Configuration d'une relation d'approbation externe entrante

09/03/2014 109
Roma.italia.lan: Configuration d'une relation d'approbation externe entrante

09/03/2014 110
Roma.italia.lan: Configuration d'une relation d'approbation externe entrante

09/03/2014 111
Roma.italia.lan: Configuration d'une relation d'approbation externe entrante

09/03/2014 112
Roma.italia.lan: Configuration d'une relation d'approbation externe entrante

09/03/2014 113
Roma.italia.lan: Configuration d'une relation d'approbation externe entrante

09/03/2014 114
Roma.italia.lan: Configuration d'une relation d'approbation externe entrante

09/03/2014 115
Roma.italia.lan: Configuration d'une relation d'approbation externe entrante

09/03/2014 116
Roma.italia.lan: Configuration d'une relation d'approbation externe entrante

09/03/2014 117
Roma.italia.lan: Configuration d'une relation d'approbation externe entrante

09/03/2014 118
Roma.italia.lan: Configuration d'une relation d'approbation externe entrante

09/03/2014 119
Roma.italia.lan: Configuration d'une relation d'approbation externe entrante

09/03/2014 120
Roma.italia.lan: Configuration d'une relation d'approbation externe entrante

09/03/2014 121
Roma.italia.lan: Configuration d'une relation d'approbation externe entrante

09/03/2014 122
bxl.belgium.lan: Configuration d'une relation d'approbation externe sortante

09/03/2014 123
bxl.belgium.lan: Configuration d'une relation d'approbation externe sortante

09/03/2014 124
bxl.belgium.lan: Configuration d'une relation d'approbation externe sortante

09/03/2014 125
bxl.belgium.lan: Configuration d'une relation d'approbation externe sortante

09/03/2014 126
bxl.belgium.lan: Configuration d'une relation d'approbation externe sortante

09/03/2014 127
bxl.belgium.lan: Configuration d'une relation d'approbation externe sortante

09/03/2014 128
bxl.belgium.lan: Configuration d'une relation d'approbation externe sortante

09/03/2014 129
bxl.belgium.lan: Configuration d'une relation d'approbation externe sortante

09/03/2014 130
bxl.belgium.lan: Configuration d'une relation d'approbation externe sortante

09/03/2014 131
bxl.belgium.lan: Configuration d'une relation d'approbation externe sortante

09/03/2014 132
bxl.belgium.lan: Configuration d'une relation d'approbation externe sortante

09/03/2014 133
bxl.belgium.lan: Configuration d'une relation d'approbation externe sortante

09/03/2014 134
bxl.belgium.lan: Configuration d'une relation d'approbation externe sortante

09/03/2014 135
bxl.belgium.lan: Configuration d'une relation d'approbation externe sortante

09/03/2014 136
Création d'un site

bxl2.belgium.lan bxl.belgium.lan

pc1.belgium.lan pc2.belgium.lan
LDAP LDAP
+ +
DNS DNS

192.168.56.201 192.168.56.202 192.168.56.252 192.168.56.253

09/03/2014 137
09/03/2014 138
09/03/2014 139
09/03/2014 140
09/03/2014 141
09/03/2014 142
09/03/2014 143
09/03/2014 144
09/03/2014 145
09/03/2014 146
09/03/2014 147
09/03/2014 148
09/03/2014 149
09/03/2014 150
09/03/2014 151
09/03/2014 152
09/03/2014 153
09/03/2014 154
09/03/2014 155
09/03/2014 156
09/03/2014 157
09/03/2014 158
09/03/2014 159
09/03/2014 160
09/03/2014 161
09/03/2014 162
09/03/2014 163
Création d'un site avec un DC

bxl2.belgium.lan bxl.belgium.lan

pc1.belgium.lan pc2.belgium.lan
LDAP LDAP
+ +
DNS DNS

192.168.56.201 192.168.56.202 192.168.56.252 192.168.56.253

192.168.56.254

192.168.57.254

192.168.57.253

LDAP
+
DNS

09/03/2014 arlon.belgium.lan 164


09/03/2014 165
09/03/2014 166
09/03/2014 167
09/03/2014 168
09/03/2014 169
09/03/2014 170
09/03/2014 171
09/03/2014 172
09/03/2014 173
09/03/2014 174
09/03/2014 175
09/03/2014 176
09/03/2014 177
09/03/2014 178
09/03/2014 179

Vous aimerez peut-être aussi