Trucos, técnicas y
conceptos avanzados
de Directorio Activo
Alejandro Mezcua
Responsable técnico
Zaltor Soluciones Informáticas
Microsoft MVP .NET
amezcua@zaltor.com
Agenda
Conceptos
El interior del Directorio Activo
Manejo de LDAP. Búsquedas
Scripts
Extensión de la consola de administración
MMC
Nuevas Utilidades Windows 2003
Herramientas de diagnóstico y
monitorización
Agenda
Conceptos
El interior del Directorio Activo
Manejo de LDAP. Búsquedas
Scripts
Extensión de la consola de administración
MMC
Nuevas Utilidades Windows 2003
Herramientas de diagnóstico y
monitorización
Conceptos
DNS (I)
Base de toda la infraestructura del Directorio
Activo
Se puede utilizar cualquier servidor de DNS
para mantener la información
Con servidores Windows se dispone de
actualizaciones automáticas
Con servidores Windows se puede
almacenar la información de zonas en el
propio Directorio Activo y aprovechar la
replicación para propagar los cambios
Conceptos
DNS (II)
Los servicios se buscan realizando consultas de tipo SRV. Ej.
Consulta para encontrar servidores de GC
C:Documents and Settingsadministrator.ZALTORMOVIL>nslookup
Default Server: gandalf.zaltormovil.local
Address: 192.168.1.254
> set type=SRV
> _gc._tcp.zaltormovil.local
Server: gandalf.zaltormovil.local
Address: 192.168.1.254
_gc._tcp.zaltormovil.local SRV service location:
priority = 0
weight = 100
port = 3268
svr hostname = gandalf.zaltormovil.local
_gc._tcp.zaltormovil.local SRV service location:
priority = 0
weight = 100
port = 3268
svr hostname = hades.zaltormovil.local
gandalf.zaltormovil.local internet address = 192.168.1.254
hades.zaltormovil.local internet address = 192.168.1.253
>
Conceptos
DNS (III)
Ej. Consulta para localizar los controladores de dominio
> _ldap._tcp.dc._msdcs.zaltormovil.local.
Server: gandalf.zaltormovil.local
Address: 192.168.1.254
_ldap._tcp.dc._msdcs.zaltormovil.local SRV service location:
priority = 0
weight = 100
port = 389
svr hostname = hades.zaltormovil.local
_ldap._tcp.dc._msdcs.zaltormovil.local SRV service location:
priority = 0
weight = 100
port = 389
svr hostname = gandalf.zaltormovil.local
hades.zaltormovil.local internet address = 192.168.1.253
gandalf.zaltormovil.local internet address = 192.168.1.254
>
Conceptos
Particiones (I)
Particiones = AD Naming Contexts
Un ‘contexto’ es equivalente a una partición
Permiten disponer de ‘secciones’ del Directorio Activo
independientes que se pueden replicar de manera individual
Por omisión se cuenta con:
Schema Naming Context
Configuration Naming Context
Domain Naming Context
Se pueden generar nuevos contextos de nombres
Denominados Application Naming Contexts o Application
Directory Partitions
Permitirán la replicación bajo reglas propias definidas (p.e.
replicados sólo a ciertos DCs)
Conceptos
Particiones (II)
Schema Naming Context
Contiene la definición de todas las definiciones
de clases de todos los objetos y atributos del
directorio activo.
Active Directory Schema MMC
Conceptos
Particiones (III)
Configuration Naming Context
Mantiene información acerca de la configuración
de todo el Forest, incluyendo información acerca
de los dominios, controladores de dominio,
replicación, subredes, etc.
Visible mediante ADSIEdit
Conceptos
Particiones (IV)
Domain Naming Context
Contiene toda la información de los objetos
definidos en el dominio. Estos objetos se
replican exclusivamente a aquellos
controladores (DCs) que forman parte del
dominio.
Visible mediante ADSIEdit
Copia de los objetos entre DCs del directorio
activo
AD Desde el punto de vista de la replicación
Dominios
Engloba, bajo un mismo contexto de nombres y de
seguridad, N equipos (clientes servidores)
Sites
Reflejan la estructura física de la red.
Subredes
Una vez definidas, los servidores, según su dirección IP,
se unirán automáticamente a los sites adecuados (en el
momento de la instalación)
Conceptos
Replicación (I)
Entre DCs de un site la replicación es
‘automática’
Entre DCs de distintos sites hay que
configurar conectores
Los conectores llevan asociados ‘costes’
dependiendo de las posibles conexiones
físicas
Conceptos
Replicación (II)
Conceptos
FSMO (I)
Flexible Single Master of Operations
La mayoría de las tareas funcionan en modo Multiple
Master (cualquier servidor)
Ciertas tareas del directorio activo se dejan en manos de
un solo servidor
Se puede seleccionar a qué servidor asignar cada rol.
Cinco roles FSMO
Emulador de PDC
RID Master
Infrastructure Master
Domain Naming Master
Schema Master
Conceptos
FSMO (II)
Emulador de PDC
Uno por dominio
Da servicio de PDC a equipos no Windows 2k+,
p.e. BDCs NT4.0
Sincroniza tiempos y sincroniza la creación de
políticas de grupo
Domain Master Browser
Se determina el servidor en:
Active Directory Users and Computers (botón derecho
dominio)
Menú Operations Masters
Tab PDC
Conceptos
FSMO (III)
RID Master (Relative ID Master)
Uno por dominio
Encargado de la asignación de identificadores
únicos (p.e. GUIDs)
Se determina el servidor en:
Active Directory Users and Computers (botón derecho
dominio)
Menú Operations Masters
Tab RID
Conceptos
FSMO (IV)
Infrastructure Master
Uno por dominio
Responsable de la comprobación de pertenencia
a grupos universales en entornos multidominio
Responsable de la actualización de referencias
de objetos de su dominio a otros dominios
Se determina el servidor en:
Active Directory Users and Computers (botón derecho
dominio)
Menú Operations Masters
Tab Infrastructure
Conceptos
FSMO (V)
Domain Naming Master
Uno por forest
Responsable de que los nombres de dominio
sean únicos
Controla el que se puedan añadir nuevos
dominios
Se determina el servidor en:
Active Directory Domains and Trusts (botón derecho en
raíz de la consola)
Menú Operations Master
Conceptos
FSMO (VI)
Schema Master
Uno por forest
Controla cambios y actualizaciones del esquema
Se determina el servidor en:
Registrar MMC de Active Directory Schema
C:>regsvr32 schmmgmt.dll
Active Directory Schema (botón derecho en raíz de la
consola)
Menú Operations Master
Conceptos
FSMO (VII)
Los cambios de rol se pueden realizar
también con Ntdsutil.exe
Permite realizar múltiples operaciones
Opción Roles permite realizar cambios de rol de
FSMO
Conceptos
FSMO (VIII)
¿Qué hacer en caso de fallo completo de un
equipo que gestionaba un FSMO?
A través de ntdsutil.exe
Opción Roles -> Seice : Rol
Permite pasar el rol a otro DC
El DC original no se debe volver a poner en la red
Agenda
Conceptos
El interior del Directorio Activo
Manejo de LDAP. Búsquedas
Scripts
Extensión de la consola de administración
MMC
Nuevas Utilidades Windows 2003
Herramientas de diagnóstico y
monitorización
El interior del Directorio Activo
Esquema
Definición formal de todos los objetos
Directorio Activo y sus atributos
Cada tipo de objeto (clase) deriva de una
clase principal Top
Las clases heredan de otras clases su definición
y comportamiento
Cada objeto dispone de atributos
obligatorios y atributos opcionales
Símil con una tabla de BBDD Relacional
Clase => Definición en una fila de un objeto
Atributos => Columnas que definen una clase
El interior del Directorio Activo
Esquema (II)
Cada atributo a su vez puede verse como
una colección de posibles valores
El Esquema se puede ver en la consola de
Active Directory Schema
Se pueden ver/añadir/modificar clases y atributos
por separado
El interior del Directorio Activo
Nomenclatura de objetos (I)
Cada objeto se designa por su DN
(Distinguished Name)
Este recorre la estructura del DA en forma de
árbol
Cada objeto dispone de un RDN (Relative
Distiguished Name) dentro de su ámbito
local (p.e. dentro de una OU)
El DN de un objeto se compone de todos los
RDN de él mismo y de todos sus
contenedores
El interior del Directorio Activo
Nomenclatura de objetos (II)
Ej. De DN
Cn=alex,ou=usuariosdemo,dc=zaltormovil,dc=local
1. Common Name = alex
2. Organizational Unit = usuariosdemo
3. Domain Component = zaltormovil
4. Domain Component = local
El interior del Directorio Activo
Nomenclatura de objetos (III)
Cada objeto lleva asignado un GUID único
(asignado por RID)
Objetos de tipo Security Principals (usuarios, grupos,
equipos; objetos con acceso a recursos) además disponen
de SID
El nombre de un usuario o de un PC puede cambiar,
pero su GUID no.
EL GUID se puede ver con ADSI Edit
Atributo: objectGUID
El interior del Directorio Activo
Catálogo Global (I)
Dentro de un dominio, cada DC dispone de
una copia completa de la base de datos
En un entorno multi-dominio se pueden
designar servidores que mantengan copias
parciales de los datos de todo el forest
Servidores de Catálogo Global
Para disminuir tamaño sólo se almacenan
los valores de ciertos atributos
El interior del Directorio Activo
Catálogo Global (II)
Cualquier DC puede tomar el rol de Catálogo
Global
El servidor de GC se usa para facilitar
consultas en entornos multidominio
Es recomendable, en entornos multidominio,
disponer de un servidor de GC en cada site
El interior del Directorio Activo
Catálogo Global (III)
En la consola (MMC) del esquema se puede
indicar qué atributos se replican en el
Catálogo Global
El interior del Directorio Activo
RootDSE
RootDSE es parte del estándar de LDAPv3.0
Definido en RFC 2251
Define la raíz de búsqueda en un servidor
LDAP
Muestra, entre otras cosas, las particiones
básicas a las que se puede conectar un
cliente
El interior del Directorio Activo
Resolución Ambigua de Nombres (I)
Permite la búsqueda de un determinado
valor en múltiples atributos simultáneamente
Se pone a disposición de los usuarios un
interface de búsqueda de gente
Se puede hacer una búsqueda en la casilla
Nombre y se devolverán N resultados con
diferentes coincidencias
El interior del Directorio Activo
Resolución Ambigua de Nombres (II)
Por defecto las búsquedas se hacen sobre
sn (surname)
givenName
physicalDeliveryOfficeName
sAMAccountName (cuenta NT)
En el esquema se puede definir qué atributos
están incluidos en ANR
A través de la consola (MMC)
Han de estar indexados
El interior del Directorio Activo
Resolución Ambigua de Nombres (III)
Ejemplo:
Si se quiere que la gente pueda realizar una
búsqueda por teléfono móvil del usuario, se
indexa el atributo ‘mobile’ y se incluye en el ANR
Uso de la consola de Schema de Directorio
Activo
Agenda
Conceptos
El interior del Directorio Activo
Manejo de LDAP. Búsquedas
Scripts
Extensión de la consola de administración
MMC
Nuevas Utilidades Windows 2003
Herramientas de diagnóstico y
monitorización
Manejo de LDAP. Búsquedas
LDP (I)
Herramienta de soporte para realizar
búsquedas LDAP
Vale para cualquier tipo de servidor LDAP, no
sólo para AD
Manejo de LDAP. Búsquedas
LDP (II)
Pasos:
Conexión con un servidor LDAP
Por defecto devuelve RootDSE
Antes de consultar hay que validar
Opción bind con usuario y contraseña
Buscar
Definir el ámbito de la búsqueda (Base DN)
Uso de filtros con sintaxis LDAP (Sintaxis LDAP)
Profundidad de la búsqueda (En el ámbito dado)
Resultados a devolver (Qué atributos extraer)
Manejo de LDAP. Búsquedas
LDP (III)
Demo búsqueda sencilla
Lista de usuarios en una OU dada
Obtener su GUID, SID y displayName
Base DN: OU=usuariosdemo,DC=zaltormovil,DC=local
Filter: (objectClass=user)
Options - > Attributes: objectGUID;objectSid;displayName
Manejo de LDAP. Búsquedas
LDP (IV)
Ejemplo de búsqueda por SID
Obtener los datos del usuario a través de su SID
Base DN: <SID=S-1-5-21-1065510560-3428359812-2318783122-1623>
Filter: (objectClass=user)
Options - > Attributes: objectGUID;objectSid;displayName
Manejo de LDAP. Búsquedas
LDP (V)
Ejemplo de búsqueda por GUID
Obtener los datos del usuario a través de su
GUID
Base DN: <GUID=5d2ba257-6c50-4a8d-80f1-6fd4ff49407d>
Filter: (objectClass=user)
Options - > Attributes: objectGUID;objectSid;displayName
Manejo de LDAP. Búsquedas
LDP (VI)
Ejemplo de búsqueda compleja.
Lista de todos los atributos que se replican al
catálogo global
Base DN: cn=schema,cn=configuration,dc=zaltormovil,dc=local
Filter:
(&(objectCategory=attributeSchema)(isMemberOfPartialAttributeS
et=TRUE))
Scope: Subtree
Options - > Attributes: lDAPDisplayName
Manejo de LDAP. Búsquedas
LDP (VII)
Ejemplo de búsqueda de usuarios
eliminados.
Ventana de seguridad muestra usuario en forma
de:
Account Unknown(S-1-5-21-4091595955-2324484845-4052817843-1112)
Base DN: <SID=S-1-5-21-4091595955-2324484845-
4052817843-1112>
Filter: objectClass=*
Scope: Base
Options -> Attributes: objectGUID;objectSid
Options -> Search type -> Extended
Options -> TimeOut -> 120
Options -> Controls -> Return Deleted Objects
Agenda
Conceptos
El interior del Directorio Activo
Manejo de LDAP. Búsquedas
Scripts
Extensión de la consola de administración
MMC
Nuevas Utilidades Windows 2003
Herramientas de diagnóstico y
monitorización
Scripts
Windows pone a disposición del sistema una
librería que permite, entre otras cosas,
acceder al Directorio Activo mediante código
ADSI (Active Directory Services Interface)
La programación se realiza en lenguajes de
Script
VBScript
JScript
Scripts
Demo Script
Ej de uso de scripts para administración de
AD. Creación de 100 usuarios (VBScript)
Set objRootDSE = GetObject("LDAP://rootDSE")
Set objContainer = GetObject("LDAP://ou=milusuarios," & _
objRootDSE.Get("defaultNamingContext"))
For i = 1 To 100
Set objLeaf = objContainer.Create("User", "cn=UserNo" & i)
objLeaf.Put "sAMAccountName", "UserNo" & i
objLeaf.SetInfo
Next
WScript.Echo "100 Usuarios creados."
Scripts
Technet Script Center
Colección de scripts que sirven como base
para realizar tareas de administración muy
elaboradas
Cientos de ejemplos agrupados por áreas en
TechNet Script Center
http://www.microsoft.com/technet/scriptcenter
Agenda
Conceptos
El interior del Directorio Activo
Manejo de LDAP. Búsquedas
Scripts
Extensión de la consola de administración
MMC
Nuevas Utilidades Windows 2003
Herramientas de diagnóstico y
monitorización
Extensión de la consola MMC
El entorno de administración MMC es
extensible
Permite añadir nuevas funcionalidades
Por ejemplo MS Exchange añade nuevas
páginas de propiedades a las propiedades
de un usuario
Extensión de la consola MMC
Display Specifiers
En el esquema de DA existen objetos de tipo
displaySpecifiers
En el apartado de configuración
Determinan la ‘localización’ o los idiomas en
los que se mostrarán ciertos elementos de la
consola de administración
409 - inglés
Extensión de la consola MMC
Specifier: user-Display (I)
Permite extender las propiedades de un
usuario
Dependiendo de los valores de sus atributos
mostrará unas cosas u otras
Atributo adminContextMenu
Permite añadir una nueva opción de menú al
menú contextual de un usuario
Extensión de la consola MMC
Specifier: user-Display (II)
Ej. Nuevo menú
Menú sencillo de ejemplo. Simplemente obtiene
la información del objeto (path) y extrae su RDN
De esta forma se puede llamar a cualquier
ejecutable que acepte parámetros por la
línea de comandos
Más información en:
http://msdn.microsoft.com/library/en-
us/netdir/ad/extending_the_user_interface_for_di
rectory_objects.asp?frame=true
Extensión de la consola MMC
Specifier: user-Display (III)
Ej. Nuevo menú
Menú que obtiene el listado de grupos a
los que pertenece un determinado usuario
de manera recursiva.
Se modifica la propiedad adminMenu
Obtiene grupos dentro de grupos
Script: getUserGroups.hta
Extensión de la consola MMC
Specifier: computer-Display
Ej. Nuevo menú
Menú que obtiene la lista de software
instalado en el equipo vía WMI
Se modifica la propiedad adminMenu
Script: getSoftInstalado.hta
Agenda
Conceptos
El interior del Directorio Activo
Manejo de LDAP. Búsquedas
Scripts
Extensión de la consola de administración
MMC
Nuevas Utilidades Windows 2003
Herramientas de diagnóstico y
monitorización
Nuevas Utilidades Windows 2003
Group Policy Management SnapIn
MMC que permite gestionar las políticas de
manera mucho más sencilla
Interface muy intuitivo válido para todo el
forest
Dispone de informes de aplicación de GPO
Permite aplicar GPOs por filtros de WMI (no
sólo por usuarios o grupos)
Nuevas Utilidades Windows 2003
ADAM
ADAM: Active Directory Application Mode
Versión de Directorio Activo independiente
de la infraestructura de la red
Permite disponer de un Directorio Activo
aislado y controlado útil para aplicaciones
independientes
No interfiere con AD de la red
Sincronizable con AD de la red mediante
Microsoft Identity Integration Server
Nuevas Utilidades Windows 2003
Descarga de las utilidades
Estas utilidades y más se pueden descargar
en:
http://www.microsoft.com/windowsserver
2003/downloads/default.mspx
Agenda
Conceptos
El interior del Directorio Activo
Manejo de LDAP. Búsquedas
Scripts
Extensión de la consola de administración
MMC
Nuevas Utilidades Windows 2003
Herramientas de diagnóstico y
monitorización
Herramientas de diagnóstico y
monitorización
Netdiag.exe
Realiza diversas comprobaciones de
la red. Útil para trazar problemas de
conectividad, DNS, LDAP, etc.
Herramientas de diagnóstico y
monitorización
Dcdiag.exe
Realiza diversas comprobaciones de
diagnóstico del servidor como
Controlador de Dominio
Herramientas de diagnóstico y
monitorización
Dsastat.exe
Permite determinar si la estructura de
DA de N servidores es igual (para
verificar que se ha realizado la
replicación correctamente)
Herramientas de diagnóstico y
monitorización
ReplMon.exe
Replication Monitor. Mustra
gráficamente el estado de la
replicación entre servidores
Herramientas de diagnóstico y
monitorización
Repadmin.exe
Utilidad muy extensa que permite
trabajar con cómo está establecida la
configuración de replicación
Referencias
Web de Technet en España
www.microsoft.com/spain/TechNet/
Zaltor Soluciones Informáticas
www.zaltor.com