Bonjour,
Dans l’article du mois d’octobre, je vous ai montré comment activer la fonction ‘recycle bin’ dans 2008 R2 via Powershell. Aujourd’hui, nous allons passer à la pratique avec un objet supprimé dans ADLDS 2008 R2.
Suppose qu’on a supprimé accidentellement le compte utilisateur “user2” , et que l’on veut maintenant le récupérer. Pour cela on recherche les objets supprimés dans ADLDS avec cette commande :
-searchBase = précise l’endroit où on veut faire la recherche, ici c’est la partition applicative “DC=universe,DC=com”
-server = précisele serveur et le port LDAP de l’instance ADLDS
-includeDeletedObjects = précise que l’on veut chercher également les objets supprimés, par défaut il ne cherche pas les objets supprimés
get-adobject -filter "*" -searchbase "dc=universe,dc=com" -server "machine:50000" -IncludeDeletedObjects | ft -A
Deleted DistinguishedName Name ObjectClass ObjectGUID
------- ----------------- ---- ----------- ----------
DC=universe,DC=com universe domainDNS a40f08ac-f08a-49bf-ac85-2002aab16de4
True CN=Deleted Objects,DC=universe,DC=com Deleted Objects container 242ab687-fbd9-447b-9422-7a543510bee8
True CN=user2\0ADEL:e898b0a0-19b3-4e3a-8765-d5e36aee4af5,CN=Deleted Objects,DC=universe,DC=com
user2... user e898b0a0-19b3-4e3a-8765-d5e36aee4af5
CN=LostAndFound,DC=universe,DC=com LostAndFound lostAndFound 177d7450-0d0b-404a-8348-6ef47b5b505d
CN=NTDS Quotas,DC=universe,DC=com NTDS Quotas msDS-QuotaContainer 2e422e5e-481a-4a77-ad84-191b8646e268
CN=Roles,DC=universe,DC=com Roles container f3f2720a-1b5f-4f55-bb89-04ed8cbef976
CN=Administrators,CN=Roles,DC=universe,DC=com
Administrators group ed5b5462-270c-44d2-8db5-daf142633cdd
CN=Users,CN=Roles,DC=universe,DC=com Users group 9aa91f9b-a64e-4f35-a40e-1b9051c5f232
CN=Readers,CN=Roles,DC=universe,DC=com Readers group bb67b0f3-10f9-41a0-9d5c-4e169a7f45eb
OU=OU1,DC=universe,DC=com OU1 organizationalUnit d7cbf694-6286-42b8-9a91-dca888e3a0e3
CN=u1,OU=OU1,DC=universe,DC=com u1 user 64b2247d-35ed-4d89-9123-0feb852f3f49
On va utiliser la commande “Restore-ADObject” suivante avec les options “-newName” pour définir le nom restauré, et “-targetPath” pour préciser où on veut le déposer.
restore-adobject -identity "CN=user2\0ADEL:e898b0a0-19b3-4e3a-8765-d5e36aee4af5,CN=Deleted Objects,DC=universe,DC=com" -newName "user2" -targetPath "OU=OU1,DC=universe,DC=com" -server "machine:50000"
Maintenant, on va vérifier si l’objet “user2” est bien restauré.
get-adobject -filter "*" -searchbase "dc=universe,dc=com" -server "machine:50000" -IncludeDeletedObjects | ft –A
Deleted DistinguishedName Name ObjectClass ObjectGUID
------- ----------------- ---- ----------- ----------
DC=universe,DC=com universe domainDNS a40f08ac-f08a-49bf-ac85-2002aab16de4
True CN=Deleted Objects,DC=universe,DC=com Deleted Objects container 242ab687-fbd9-447b-9422-7a543510bee8
CN=LostAndFound,DC=universe,DC=com LostAndFound lostAndFound 177d7450-0d0b-404a-8348-6ef47b5b505d
CN=NTDS Quotas,DC=universe,DC=com NTDS Quotas msDS-QuotaContainer 2e422e5e-481a-4a77-ad84-191b8646e268
CN=Roles,DC=universe,DC=com Roles container f3f2720a-1b5f-4f55-bb89-04ed8cbef976
CN=Administrators,CN=Roles,DC=universe,DC=com Administrators group ed5b5462-270c-44d2-8db5-daf142633cdd
CN=Users,CN=Roles,DC=universe,DC=com Users group 9aa91f9b-a64e-4f35-a40e-1b9051c5f232
CN=Readers,CN=Roles,DC=universe,DC=com Readers group bb67b0f3-10f9-41a0-9d5c-4e169a7f45eb
OU=OU1,DC=universe,DC=com OU1 organizationalUnit d7cbf694-6286-42b8-9a91-dca888e3a0e3
CN=u1,OU=OU1,DC=universe,DC=com u1 user 64b2247d-35ed-4d89-9123-0feb852f3f49
CN=user2,OU=OU1,DC=universe,DC=com user2 user e898b0a0-19b3-4e3a-8765-d5e36aee4af5
Bonjour,
L’article suivant permet de créer des GPO sous 2008 et 2008 R2 avec PowerShell.
Pour faire cela, on appelle l’objet COM GPMgmt.GPM
$gpobj = New-Object -ComObject GPMgmt.GPM
Afin de s’assurer que l’objet COM est bien appelé, on affiche les détails de la variable $gpobj :
$gpobj | gm
Ces méthodes sont décrites dans ce lien :
http://msdn.microsoft.com/en-us/library/aa814177(VS.85).aspx
On appelle ensuite la méthode constants() et on précise le domaine dans lequel on va créer la GPO.
$gpmConstants = $gpobj.GetConstants()

HRESULT GetDomain(
[in] BSTR bstrDomain,
[in] BSTR bstrDomainController,
[in] long lDCFlags,
[out] IGPMDomain **plIGPMDomain);

Huble.com : domain name
UseAnyDC est le flag de l’argument.
Voir http://msdn.microsoft.com/en-us/library/aa814309(VS.85).aspx
IGPM::GetDomain Method
Creates and returns a GPMDomain object that corresponds to the specified domain.
![clip_image002[4] clip_image002[4]](http://blogs.technet.com/blogfiles/huuducle/WindowsLiveWriter/GestiondesGPOavecPowerShell_100AA/clip_image002%5B4%5D_thumb.jpg)
![clip_image004[4] clip_image004[4]](http://blogs.technet.com/blogfiles/huuducle/WindowsLiveWriter/GestiondesGPOavecPowerShell_100AA/clip_image004%5B4%5D_thumb.jpg)
$gpmDomain =$gpobj.GetDomain(“huble.com”, “”, $gpmConstants.UseAnyDC)

Maintenant, si on veut voir les méthodes de GetDomain(), on utilise gm (pour get-member):
$gpmDomain | gm

La méthode CreateGpo() permet de créer un GPO dans huble.com
$gpmNewGpo = $gpmDomain.CreateGPO()
On donne un nom à cette nouvelle GPO.
$gpmNewGpo.DisplayName = “This GPO is created by PowerShell"

$gpmNewGpo.Description = “This is a description of the GPO created by PowerShell"
Pour vérifier que c’est bien créé, on utilise la MMC “Group Policy Management” 
. Création d’un lien entre cette nouvelle GPO avec une OU existante, par exemple avec l’OU1 :
Pour cela, on va appeler les méthodes GetSOM() et CreateGPOLink() :
$som = $gpmdomain.GetSOM(“OU=OU1,DC=huble,dc=com”) 
$som.CreateGPOLink(1,$gpmNewGPO)

Et enfin, utiliser GPMC pour vérifier la résultat de la création.

Bonjour,
Avec DFSR, vous pouvez avoir plusieurs machines membres appartenant à un groupe de réplication DFSR, ou bien une machine membre peut appartenir à plusieurs groupes de réplication (RG) DFSR.
Pour pouvoir s’y repérer, vous avez la commande DFSRADMIN. Voici quelques exemples de commande dfsradmin :
Exemple 1 : voir les répertoires répliqués par DFSR comprenant la taille, les GUID des RG (replication group) et les GUID des RF (replication folder)
dfsradmin membership list /computer:huble\2008R2 /Attr:StagingPath,StagingSize,MembershipGuid,RgGuid,RfGuid
| StagingPath | StagingSize | MembershipGuid | RgGuid | RfGuid |
| c:\temp\dfsrfolder\DfsrPrivate\Staging | 4096 | 45cb94bc-2a3b-4c38-8f2e-3ccff8036bd0 | 0e67ce5c-935e-46de-8356-1c09d55fb376 | 2f9d6caf-192a-4007-ba14-d26d8621dc22 |
| c:\temp\folderdfsr2\DfsrPrivate\Staging | 4096 | 2a431d63-cebe-4a6c-9833-31cf7674b2ea | 0e67ce5c-935e-46de-8356-1c09d55fb376 | 833e852a-64f4-432c-a0d4-d70a7cfbb2ee |
| C:\Windows\SYSVOL\staging areas\huble.com | 4096 | 0232f4ad-acd6-4c0a-a52d-1fc21539b1e5 | 823c14ae-cf3a-46a2-a51f-33851fc4959f | 44c08a67-51e4-4d98-a7cf-b562588be1a3 |
Exemple 2 : Pour voir les répertoires membres d’un groupe de réplication nommé ‘ReplicationGroup1’, voici la commande :
dfsradmin membership list /rgname:replicationgroup1
On peut voir que pour le répertoire ‘dfsrfolder2’, les membres qui participent à sa réplication sont 2008R2 et 2008R2-1
Pour voir si les répertoires sont en Read-Only ou non dans DFSR
Exemple 3 : avec l’option RO comme attribut dans la commande DFSRADMIN
dfsradmin membership list /rgname:replicationgroup1 /Attr:MemName,RfName,IsPrimary,RO
On peut voir que les répertoires dfsrfolder et dfsrfolder2 sur 2008R2-1 sont en READ ONLY.
| MemName | RfName | IsPrimary | RO |
| 2008R2 | dfsrfolder | No | No |
| 2008R2 | folderdfsr2 | No | No |
| 2008R2-1 | dfsrfolder | No | - |
| 2008R2-1 | folderdfsr2 | No | - |
Comme vous le savez sans doute, l’option “recycle bin” de 2008 R2 permet de récupérer les objets supprimés de l’Active Directory, sans être obligé d’utiliser un jeu de sauvegarde.
Cet article va vous donner les détails pour activer cette fonctionnalité via PowerShell.
Tout d’abord on importe le nouveau module disponible dans PowerShell de 2008 R2. avec la commande suivante :
import-module activedirectory
Vérifier si le module en question est bien importé avec : get-module

Vérifier si le feature de l’AD est actif avec : get-ADOptionFeature –filter {name –like “*”}

Maintenant on active le “recycle bin” avec la commande :
enable-ADOptionFeature “recycle bin feature” –scope forest -target “huble.com”

Choisir Y pour confirmer l’activation du “recycle bin”.

Vérifier s’il y a des objets supprimés qui sont présents dans la corbeille (recycle bin) :
get-ADObject –searchBase “CN=deleted objects,dc=huble,dc=com” –ldapfilter “(objectclass=*)” –IncludeDeletedObjects

Utiliser l’outil DSA.msc pour supprimer un objet, dans cet exemple on va supprimer le groupe “AZS” pour tenter de la récupérer :
Vérifier ensuite si le groupe AZS est désormais dans la corbeille avec la commande suivante :
get-ADObject –searchBase “CN=deleted objects,dc=huble,dc=com” –ldapfilter “(objectclass=*)” –IncludeDeletedObjects

On utilise ensuite cette commande pour voir les détails du groupe AZS, avec l’option FORMAT-LIST :
get-ADObject –searchBase “CN=deleted objects,dc=huble,dc=com” –ldapfilter “(objectclass=*)” –IncludeDeletedObjects | format-list
l’option –searchbase précise l’endroit où l’on va faire des recherches
l’option –IncludeDeletedObjects précise que la recherche comprend les objets supprimés, sinon la recherche ne va pas inclure les objets supprimés
Dans l’écran suivant, on voit que l’objet supprimé est dans “CN=Deleted Objects”
Le CN de l’objet AZS comprend la chaine de caractères 0ADEL signifiant que l’objet est virtuellement supprimé de l’AD.

Maintenant, on va restaurer l’objet AZS qu’on a supprimé avec PowerShell
restore-ADobject –identity GUID_of_Object
Vérifier que AZS est bien restauré avec la commande ci-dessous

Bonjour, Windows 2008 R2 et Windows 7 sont sorties avec des nouveautés, notamment au niveau du fonctionnement du protocole Kerberos.
Parmi ces nouveautés, il y a la nouvelle GPO Kerberos “Use Forest Search Order”, cette GPO permet de définir une liste des forêts ayant les trusts avec celle-ci, elle permet au service KDC d’envoyer des requêtes dans l’ordre des forêts définies dans cette liste, afin de trouver le SPN en contactant les Global Catalog. Si la recherche est positive, alors un ticket Referral lui est retourné.
Si cette GPO n’est pas utilisée, alors le KDC ne va pas chercher les forêts listées pour résoudre le SPN, si la recherche du SPN échoue, alors NTLM sera utilisé.
Voici les captures d’écran des GPO Kerberos 2008 R2.
Quand la GPO est appliquée, les clefs de registre ForestSearchList et UseForestSearch sont créées.
Client Kerberos GPO.
En plus de cette GO, une nouvelle GPO Kerberos permet de faire le mappage de nom avec d’autres Realm kerberos.
La GPO ci-dessous permet d’utiliser l’algorithme d’encryption AES dès la requête AS (authentication service)
Restreindre l’utilisation du protocole NTLM.
A partir de 2008 R2 et Windows 7, vous avez la possibilité de restreindre l’utilsation du protocole NTLM, ceci peut se faire via des GPO qui sont décrites ci-dessous dans :
Computer Configuration --> Windows Settings --> Security Settings --> Local Policies --> Security Options
Network security: Restrict NTLM: Add remote server exceptions for NTLM authentication
Network security: Restrict NTLM: Add server exceptions in this domain
Network security: Restrict NTLM: Audit Incoming NTLM Traffic
Network security: Restrict NTLM: Audit NTLM authentication in this domain
Network security: Restrict NTLM: Incoming NTLM traffic
Network security: Restrict NTLM: NTLM authentication in this domain
Network security: Restrict NTLM: Outgoing NTLM traffic to remote servers
Lê Huu Duc
Si pour des raisons de sécurité, vous ne voulez pas avoir de communication entre un AD et un ADLDS, mais vous voulez néanmoins exporter des objets de l’AD vers ADLDS, il existe un moyen qui est l’outil LDIFDE.
A partir de l’article technique suivant, vous pouvez faire cet export :
http://support.microsoft.com/kb/237677
Exemple:
Je veux exporter les OU de l'AD dans un fichier .LDF et les importer dans ADLDS.
Mon AD a l'architecture suivante :

Mon ADAM a l'architecture suivante :

. J'utilise la commande suivante pour exporter les OU de mon AD dans le fichier expAD.ldf
ldifde -f expAD.ldf -d "dc=lhorn,dc=com" -p subtree -r "(objectCategory=organizationalUnit)" -l "cn,objectclass,ou"
. Voici le fichier expAD.ldf
dn: OU=Domain Controllers,DC=lhorn,DC=com
changetype: add
objectClass: top
objectClass: organizationalUnit
ou: Domain Controllers
dn: OU=OU1,DC=lhorn,DC=com
changetype: add
objectClass: top
objectClass: organizationalUnit
ou: OU1
dn: OU=OU2,DC=lhorn,DC=com
changetype: add
objectClass: top
objectClass: organizationalUnit
ou: OU2
dn: OU=OU21,OU=OU2,DC=lhorn,DC=com
changetype: add
objectClass: top
objectClass: organizationalUnit
ou: OU21
. J'ouvre le fichier expAD.LDF et j'utilise l'option "replace all" pour remplacer DC=lhorn,DC=com par O=milkyway,C=com
. Voici le résultat du remplacement, que je vais sauvegarder dans le fichier impADAM.ldf
dn: OU=Domain Controllers,o=milkyway,c=com
changetype: add
objectClass: top
objectClass: organizationalUnit
ou: Domain Controllers
dn: OU=OU1,o=milkyway,c=com
changetype: add
objectClass: top
objectClass: organizationalUnit
ou: OU1
dn: OU=OU2,o=milkyway,c=com
changetype: add
objectClass: top
objectClass: organizationalUnit
ou: OU2
dn: OU=OU21,OU=OU2,o=milkyway,c=com
changetype: add
objectClass: top
objectClass: organizationalUnit
ou: OU21
. J'exécute la commande suivante pour importer dans ADLDS
ldifde -i -f impADAM.ldf -s localhost:50000
Connecting to "localhost:50000"
Logging in as current user using SSPI
Importing directory from file "impADAM.ldf"
Loading entries.....
4 entries modified successfully.
The command has completed successfully
. Voici le résultat de l'export dans ADAM

. Comme vous pouvez le voir, les OU "Domain Controllers", OU1, OU2 et OU21 ont bien été importés dans ADLDS.
Bonjour,
A partir de 2008 R2, il existe un moyen de voir les fichiers répliqués par DFSR du point de vue du ‘receiver’. En effet, il est toujours intéressant de voir en temps réel les fichiers arrivés des partenaires de réplication.
Pour cela vous avez la commande suivante qui permet de faire le monitoring :
dfsrdiag replstate /a
Cette commande donne les informations suivantes :
Active inbound connection: 1
Connection GUID: 981194B2-CF54-4749-A40B-8C58B49D7F28
Sending member: 2008R2
Number of updates: 12
Updates being processed:
[1] Update name: edbres00002 - Copy.jrs (Downloading)
UID : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v116
GVSN : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v116
Parent UID : {833E852A-64F4-432C-A0D4-D70A7CFBB2EE}-v1
Replicated folder : 833E852A-64F4-432C-A0D4-D70A7CFBB2EE
[2] Update name: edbres00002 (2).jrs (Downloading)
UID : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v113
GVSN : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v113
Parent UID : {833E852A-64F4-432C-A0D4-D70A7CFBB2EE}-v1
Replicated folder : 833E852A-64F4-432C-A0D4-D70A7CFBB2EE
[3] Update name: edbres00002 (3) - Copy - Copy.jrs(Downloading)
UID : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v112
GVSN : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v112
Parent UID : {833E852A-64F4-432C-A0D4-D70A7CFBB2EE}-v1
Replicated folder : 833E852A-64F4-432C-A0D4-D70A7CFBB2EE
[4] Update name: edbres00002.jrs (Downloading)
UID : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v107
GVSN : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v107
Parent UID : {833E852A-64F4-432C-A0D4-D70A7CFBB2EE}-v1
Replicated folder : 833E852A-64F4-432C-A0D4-D70A7CFBB2EE
[5] Update name: edbres00002 (5) - Copy.jrs (Downloading)
UID : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v108
GVSN : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v108
Parent UID : {833E852A-64F4-432C-A0D4-D70A7CFBB2EE}-v1
Replicated folder : 833E852A-64F4-432C-A0D4-D70A7CFBB2EE
[6] Update name: edbres00002 (2) - Copy - Copy.jrs(Downloading)
UID : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v115
GVSN : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v115
Parent UID : {833E852A-64F4-432C-A0D4-D70A7CFBB2EE}-v1
Replicated folder : 833E852A-64F4-432C-A0D4-D70A7CFBB2EE
[7] Update name: edbres00002 (2) - Copy.jrs (Downloading)
UID : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v114
GVSN : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v114
Parent UID : {833E852A-64F4-432C-A0D4-D70A7CFBB2EE}-v1
Replicated folder : 833E852A-64F4-432C-A0D4-D70A7CFBB2EE
[8] Update name: edbres00002 (3) - Copy.jrs (Downloading)
UID : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v111
GVSN : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v111
Parent UID : {833E852A-64F4-432C-A0D4-D70A7CFBB2EE}-v1
Replicated folder : 833E852A-64F4-432C-A0D4-D70A7CFBB2EE
[9] Update name: edbres00002 - Copy - Copy.jrs (Downloading)
UID : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v106
GVSN : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v106
Parent UID : {833E852A-64F4-432C-A0D4-D70A7CFBB2EE}-v1
Replicated folder : 833E852A-64F4-432C-A0D4-D70A7CFBB2EE
[10] Update name: edbres00002 (4) - Copy.jrs (Downloading)
UID : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v109
GVSN : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v109
Parent UID : {833E852A-64F4-432C-A0D4-D70A7CFBB2EE}-v1
Replicated folder : 833E852A-64F4-432C-A0D4-D70A7CFBB2EE
[11] Update name: edbres00002 (3).jrs (Downloading)
UID : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v110
GVSN : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v110
Parent UID : {833E852A-64F4-432C-A0D4-D70A7CFBB2EE}-v1
Replicated folder : 833E852A-64F4-432C-A0D4-D70A7CFBB2EE
[12] Update name: edbres00002 - Copy (2).jrs (Downloading)
UID : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v117
GVSN : {596F2556-EAC8-4C8C-9BE8-7824298669FA}-v117
Parent UID : {833E852A-64F4-432C-A0D4-D70A7CFBB2EE}-v1
Replicated folder : 833E852A-64F4-432C-A0D4-D70A7CFBB2EE
Total number of inbound updates being processed: 12
Total number of inbound updates scheduled: 0
Summary
Active inbound connections: 1
Updates received: 12
Active outbound connections: 0
Updates sent out: 0
Operation Succeeded
Avec la commande ci-dessous, on peut convertir le GUID de ‘Replicated Folder’ pour obtenir le nom du répertoire :
dfsradmin rf list /rgname:replicationgroup1 /attr:rfname,rfguid
RfName RfGuid
dfsrfolder 2f9d6caf-192a-4007-ba14-d26d8621dc22
folderdfsr2 833e852a-64f4-432c-a0d4-d70a7cfbb2ee
folderdfsr3 f577b71c-a773-4cb8-a42d-6d757250c941
Si on veut voir les fichiers restants à répliquer aux partenaires du point de vue du ‘sender’, alors c’est avec l’option BACKLOG :
dfsrdiag backlog /SendingMember:2008R2 /ReceivingMember:2008R2-1 /rgname:replicationGroup1 /rfname:dfsrfolder

Bonjour,
Aujourd’hui, je vais vous parler des filtres qui sont prédéfinis dans DFS-R, ces filtres contiennent une liste de suffix de fichiers (ou extensions) qui empêche DFS-R de répliquer ces types de fichiers car très souvent ils ne sont pas utiles à être répliqués.
Les raisons pour lesquelles ces fichiers ne sont pas répliqués sont nombreuses :
- parce que ce sont des fichiers temporaires (comme les fichiers .tmp)
- parce que ce sont des fichiers créés par des applications qui ont pour but de faire des sauvegardes temporaires des travaux en cours (les fichiers commençant par ~ par exemple)
- parce que ce sont des fichiers d’une version précédente (.bak par exemple)
Afin d’optimiser la réplication faite par DFS-R, une liste a été faite et qui est utilisée par le filtre DFS-R afin de ne pas répliquer ces fichiers inutilement.
Néanmoins, il se trouve qu’il existe des applications qui créent des fichiers dont les extensions sont comprises dans la liste et qui ont besoin que ces fichiers soient répliqués afin de pouvoir fonctionner correctement.
Pour cela, vous avez 2 possibilités pour résoudre ce problème :
1) Modifier l’application en question afin que les fichiers créés par celle-ci n’aient pas une extension qui est comprise dans la liste des fichiers fitrés.
2) Ou bien, changer le filtre de DFS-R afin de permettre aux fichiers ayant cette extension de pouvoir être répliqués.
Pour changer le filtre par défaut proposé dans DFS-R, veuillez suivre les étapes décrites dans les articles suivantes :
- Aller dans ReplicationGroup.
- Cliquer sur votre groupe de replication.
- Aller sur l’onglet Replicated Folder .
- Cliquer sur le répertoire répliqué et il y a une page sur les propriétés.
Dans le champ “File Filter”, vous pouvez changer les filtres par défaut.
Dans le champ “Subfolder filter”, vous pouvez filtrer les sous-répertoires pour qu’ils ne soient pas répliqués.
- File and subfolder filters
http://technet.microsoft.com/en-us/library/cc757726(WS.10).aspx
Bonjour,
Aujourd’hui, je vais vous parler des nouveautés de DFSR 2008 R2.
. La première nouveauté est le répertoire de réplication en mode lecture seule (read only) dans DFSR 2008 R2.
Pour faire cela, utilisez l'interface dfsmgmt.msc pour créer des répertoires à répliquer en lecture seule. Lorsqu’une création en lecture seule est créée et répliquée par DFSR, vous ne pouvez ni déposer ni modifier directement le contenu de ce répertoire.
Voici une procédure de création de ce type de répertoire :
Dans dfsmgmt.msc, choisissez le ‘primary member’

Ensuite choisissez un répertoire à répliquer, sinon créez en un.

Laissez les permissions NTFS par défaut.
Choisissez un membre qui va recevoir le répertoire à répliquer par DFSR en lecture seule, puis choisissez un répertoire existant, sinon créez un.

Choisissez l’option 'Make the selected replicated folder on this member read-only'.

Assurez-vous que dans 'Membership Status' vous avez le status 'Enabled (read-only)'.

Si tout est OK dans la fenêtre “review settings”, alors terminez la procédure de création.
Dans l’onglet Memberships , vérifiez si le répertoire en lecture seule est affiché correctement comme ci-dessous.

Maintenant pour tester le répertoire en lecture seule, allez dans le répertoire dfsrfolder3-2008R2-1 de 2008R2-1 et tentez de créer un fichier.

La création va échouer avec le message d’erreur ci-dessus.
Allez ensuite dans le répertoire FolderDfsr3 de la machine 2008R2, essayez de créer un fichier. La création se déroule bien et on voit le fichier créé se répliquer sur le serveur 2008R2-1


Dans dfsrxxxx.log se trouvant de la répertoire windows\debug, on peut voir les informations suivantes durant la création.
20090608 17:23:32.936 1668 LDBX 4104 Ldb::Insert Inserting contentSetRecord:
+ contentSetId: {F577B71C-A773-4CB8-A42D-6D757250C941}
+ memberId: {E630A3A4-CC13-4131-8B9A-3E9BBF479E94}
+ state: InitialBuilding
+ startVersion: 0xv14
+ authRebuilding: 0
+ stageVolumeSerialNumber: 0x0
+ stageFid: 0x0
+ birthUsn: 0x1006370
+ isTombstone: 0
+ readOnlySince: 20090608 15:23:32.936
+ beingDeleted: 0
+ dbLossRecover: 0
+
20090608 17:23:32.999 1668 STAG 2594 Staging::ScanStagingDirectory Staging space usage is: 0
20090608 17:23:32.999 1668 STAG 6300 StagingManager::RegisterContentSetsOnPath {F577B71C-A773-4CB8-A42D-6D757250C941} added to the replicated folder list.
20090608 17:23:33.014 1668 LDBX 4139 Ldb::Update Updating contentSetRecord:
+ contentSetId: {F577B71C-A773-4CB8-A42D-6D757250C941}
+ memberId: {E630A3A4-CC13-4131-8B9A-3E9BBF479E94}
+ state: InitialBuilding
+ startVersion: 0xv14
+ authRebuilding: 0
+ stageVolumeSerialNumber: 0x44bb8a13
+ stageFid: 0x9000000004C09
+ birthUsn: 0x1006370
+ isTombstone: 0
+ readOnlySince: 20090608 15:23:32.936
+ beingDeleted: 0
+ dbLossRecover: 0
+
20090608 17:23:33.030 1668 CSMG 6914 ContentSetManager::Initialize Walk replica set to initialize or fix up database. csId:{F577B71C-A773-4CB8-A42D-6D757250C941} csName:folderdfsr3
20090608 17:23:33.030 1668 DIRW 576 DirWalkerTask::QueueMoveinJob Queuing move-in. uid:{F577B71C-A773-4CB8-A42D-6D757250C941}-v1 fid:0x2E000000004B85 name:dfsrfolder3-2008R2-1
20090608 17:23:33.030 1672 DIRW 316 DirWalkerTask::Run Start walking directory.
20090608 17:23:33.030 1672 DIRW 1024 DirWalkerTask::MoveinStep Starting to process move-in job. uid:{F577B71C-A773-4CB8-A42D-6D757250C941}-v1
20090608 17:23:33.030 1672 DIRW 101 DirWalkerTask::Job::Finish MoveIn csId:{F577B71C-A773-4CB8-A42D-6D757250C941} uid:{F577B71C-A773-4CB8-A42D-6D757250C941}-v1
20090608 17:23:33.030 1672 DIRW 872 DirWalkerTask::RemoveJob Removing job type:1 uid:{F577B71C-A773-4CB8-A42D-6D757250C941}-v1
20090608 17:23:33.030 1672 LDBX 4472 Ldb::DeleteWalkerJob Deleting dirWalkerJob. uid:{F577B71C-A773-4CB8-A42D-6D757250C941}-v1
20090608 17:23:33.046 1672 EVNT 1185 EventLog::Report Logging eventId:4102 parameterCount:6
20090608 17:23:33.046 1672 EVNT 1205 EventLog::Report eventId:4102 parameter1:F577B71C-A773-4CB8-A42D-6D757250C941
20090608 17:23:33.046 1672 EVNT 1205 EventLog::Report eventId:4102 parameter2:C:\temp\dfsrfolder3-2008R2-1
20090608 17:23:33.046 1672 EVNT 1205 EventLog::Report eventId:4102 parameter3:folderdfsr3
20090608 17:23:33.046 1672 EVNT 1205 EventLog::Report eventId:4102 parameter4:ReplicationGroup1
20090608 17:23:33.046 1672 EVNT 1205 EventLog::Report eventId:4102 parameter5:0E67CE5C-935E-46DE-8356-1C09D55FB376
20090608 17:23:33.046 1672 EVNT 1205 EventLog::Report eventId:4102 parameter6:E630A3A4-CC13-4131-8B9A-3E9BBF479E94
20090608 17:23:33.046 1672 CSMG 4517 ContentSetManager::SetContentSetState Set content set state. csId:{F577B71C-A773-4CB8-A42D-6D757250C941} newState:InitialSync(Sync) (auth:0)
20090608 17:23:33.046 1672 LDBX 4139 Ldb::Update Updating contentSetRecord:
+ contentSetId: {F577B71C-A773-4CB8-A42D-6D757250C941}
+ memberId: {E630A3A4-CC13-4131-8B9A-3E9BBF479E94}
+ state: InitialSync(Sync)
+ startVersion: 0xv14
+ authRebuilding: 0
+ stageVolumeSerialNumber: 0x44bb8a13
+ stageFid: 0x9000000004C09
+ birthUsn: 0x1006370
+ isTombstone: 0
+ readOnlySince: 20090608 15:23:32.936
+ beingDeleted: 0
+ dbLossRecover: 0
+
L’événement 4102 décrit dans DFSRxxxx.log est aussi loggé dans le journal d’événements DFSR.

Après cela, vous avez l’événement 4104 prouvant que la configuration s’est bien déroulée.

. La deuxième nouveauté est que la commande DFSRDIAG possède une nouvelle option qui est ‘replicationState’
Pour plus d’information, tapez la commande :
dfsrdiag replicationState /?
Huu-Duc
Bonjour,
Je vous informe que le docuement "Migrating SYSVOL to DFS Replication" est désormais disponible.
Vous pouvez le télécharger à partir de ce lien :
http://www.microsoft.com/downloads/details.aspx?FamilyID=DF8E5E84-C6C6-4CEF-9DAB-304C92299804&displaylang=en
Huu-Duc LÊ
Bonjour,
Aujourd'hui, je vais vous parler de DFS-R de 2008R2. Cet article consiste à faire une première analyse du contenu des logs DFSR se trouvant dans le répertoire %windir%\debug
Chaque fois que DFS-R démarre et fait de la synchronisation des répertoires, il met des informations dans les fichiers DFSRxxxx.log
Il y a deux outils qui sont utils pour diagnostiquer DFS-R : DRSDIAG et DFSRADMIN.
L'exemple ci-dessous montre un scénario de création d'un répertoire sur un partenaire DFS-R, et on veut savoir qui l'a créé et répliqué.
Dans DFSRxxxx.log, repérer la ligne de création du répertoire TestFolder, cette création provient de la réplication DFS-R et on veut savoir qui est à l'origine de la création du répertoire TestFolder.

Dans la ligne contenant "file:TestFolder", on peut voir le paramètre connID contenant un GUID, c'est le GUID de connexion avec un partenaire.
Mais auparavant, affichons les connexions DFS-R avec leur GUID associé avec la commande DFSADMIN.
dfsradmin conn list /rgname:replication_group_name / attr:sendmem,recvmem,connguid
Remplacer replication_group_name par le nom du group de réplication, ceci peut être vu dans la mmc DFSMGMT.msc
exemple :
![clip_image002[5]](http://blogs.technet.com/blogfiles/huuducle/WindowsLiveWriter/AnalysedeslogsDFSRde2008R2_F0E6/clip_image002%5B5%5D_thumb.jpg)
Comme on peut le voir ci-dessus, le GUID {9811 ...... 7F28} est vu dans le résultat de la commande dfsradmin, ce GUID correspond à la connexion entre les serveur 2008R2 (l'originateur) et 2008R2-1 (le destinataire).
On peut donc conclure que le répertoire TestFolder a été créé sur 2008R2 et est répliqué vers 2008R2-1 via DFS-R.
Les RODC sont les DC 2008 en mode lecture seule, ils sont destinés à déployer dans un site et ne nécessite pas forcément une administration quotidienne.
Il se peut que certains attributs de l'AD que l'on juge 'confidentiels' qu'on ne veut pas forcément qu'ils se trouvent sur les RODC. Pour cela, on peut les empêcher de se propager des RWDC vers les RODC en utilisant la notion de FAS (Filtered Attribute Set).
Un attribut marqué comme "confidentiel" ne peut pas être propagé des RWDC vers les RODC.
Pour cela, on met la valeur 0x080 (128) au 7 ème bit de l'attribut SearchFlag.
L'avantage de marquer les attributs en confidentiels est qu'en cas de perte ou de vol du RODC, ces attributs ne sont pas présents sur le RODC.
Les attributs suivants sont par défaut dans la liste des attributs FAS (filtered attribute set).
ms-PKI-DPAPIMasterKeys
ms-PkI-AccountCredentials
ms-PKI-RoamingTimeStamp
ms-FVE-KeyPackage
ms-FVE-RecoveryInformation
ms-FVE-RecoveryPassword
ms-FVE-VolumeGuid
ms-TPM-OwnerInformation
Voici un exemple de la valeur de l'attribut SearchFlags de ms-PKI-AccoundCredentials
Ceci correspond à la valeur 640 (en décimal)
Pour plus d'information, veuillez voir le lien suivant :
Adding Attributes to the RODC Filtered Attribute Set
http://technet.microsoft.com/en-us/library/cc754794.aspx
Bonjour,
Voici un script très simple qui vous permet de créer des comptes utilisateurs et des groupes avec PowerShell.
. Le scénario est le suivant :
Un fichier contenant les utilisateurs Names.txt
Un fichier contenant les groupes Groups.txt
Le script powershell CreateGroup.ps1 crée des groupes dans OU1
Le script powershell CreateUserFromList.ps1 crée des utilisateur dans OU1
Le script AddMemberInGroup.ps1 permet d'ajouter les users dans des groupes.
Dans names.txt
account1
Julia
John
Roxanna
Kim
Huu-Duc
Dans groups.txt
group1
group2
group3
group4
group5
Script CreateUserFromList.ps1
$InputUsers = Get-Content .\names.txt
$GroupsOU = [ADSI] 'LDAP://localhost:389/OU=OU1,DC=lhorn,DC=com'
Foreach ($Line in $InputUsers)
{
$User = $GroupsOU.create('User','CN=' + $Line)
$User.SetInfo()
$User.Put('DisplayName', $Line)
$User.SetInfo()
}
Script powershell CreateGroup.ps1
$InputGroups = Get-Content .\groups.txt
$GroupsOU = [ADSI] 'LDAP://localhost:389/OU=OU1,DC=lhorn,DC=com'
Foreach ($Line in $InputGroups)
{
$User = $GroupsOU.Create('Group','CN=' + $Line)
$User.SetInfo()
$User.Put('displayname', $Line)
$User.SetInfo()
}
Contenu de AddMemberInGroup.ps1
$InputUser = Get-Content .\names.txt
$objContainer = [ADSI] "LDAP//localhost:389/OU=OU1,DC=lhorn,DC=com"
Foreach ($Line in $InputUser)
{
$group = [ADSI]'LDAP://localhost:389/CN=group1,OU=OU1,DC=lhorn,DC=com'
$group.Member.Add('CN=' + $Line + ',OU=OU1,DC=lhorn,DC=com')
$group.SetInfo()
}
Exécution des scripts
PS C:\temp> .\createUserFromList.ps1

PS C:\temp> .\CreateGroup.ps1

PS C:\temp> .\AddMemberInGroup.ps1
0
1
2
3
4
5
On peut voir que dans Group1, on a des comptes utilisateurs en question.

Il n'est pas conseillé d'installer les RODC sur le même site que les DC normaux. En effet, si le RODC se trouve dans le même site que les RWDC (read write DC), et si le RODC est compromis alors les RWDC du même site risquent d'être compromis parce que le RODC utilise un compte krbtgt (qui est différent de celui d'un RWDC), qui est utilisé pour encrypter ou signer les TGT, si le RWDC se trouve dans le même site que le RODC, alors le krbtgt peut être utilisé pour encrypter de décrypter les TGT permettant d'accéder au RWDC du même site que lui.
Le fait d'avoir des RODC sur des site isolés, ceci fournit une méthode d'isolation de la cryptographie entre les KDC qui tournent sur les RODC des différents sites.
D'où la recommandation de mettre les RODC dans des sites où il n'y a pas de RWDC.
. Que ce passe t-il quand la liaison entre le site avec le RODC et le site contenant les RWDC est rompue ?
Si les credentials des utilisateurs ne sont pas mis en cache sur les RODC, alors les utilisateurs du même site que le RODC ne peuvent pas être authentifiés.
En effet, si les credentials ne sont pas dans le cache du RODC, à chaque requête d'authentification, le RODC transferre la requête au RWDC.
Même problème lors des demandes de changement de mot de passe ou de déverrouillage de compte, le RODC doit contacter le RWDC pour ces opérations.
CLM (Certificate Lifecycle Management) est un module du produit ILM (Identity Lifecycle Management).
CLM a pour objectif de gérer les certificats d'une entreprise. Si vous rencontrez des problèmes d'installation ou de performance en utilisant CLM (exemple : problème de lenteur lors de l'affichage des informations d'un compte dans CLM), veuillez vous référer au lien suivant pour faire des opérations de troubleshooting de CLM :
Troubleshooting CLM 2007
http://technet.microsoft.com/en-us/library/cc720663.aspx
Sur ce lien, vous allez trouver des sections pour chaque type de problème dans CLM :
Introduction to Troubleshooting CLM 2007
A-Z List of Problem Topics for CLM 2007
Things to Check Before Troubleshooting CLM 2007
Quick Fixes for CLM 2007
Troubleshooting CLM 2007 Problems
Troubleshooting CLM 2007 Performance Problems
Troubleshooting CLM 2007 Security Problems
Troubleshooting CLM 2007 Using Advanced Techniques and Tools
Troubleshooting CLM 2007 Language and Localization Issues
Additional Resources
Dans ce lien, le fichier web.config est mentionné, il s'agit di fichier web.conf se trouvant dans le répertoire c:\Program Files\Microsoft Certificate Lifecycle Manager\web

Voici un aperçu du fichier web.config.
