670 likes | 901 Vues
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
E N D
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 • Particiones • Replicación • FSMO • Catálogo Global
ConceptosDNS (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
ConceptosDNS (II) • Los servicios se buscan realizando consultas de tipo SRV. Ej. Consulta para encontrar servidores de GC C:\Documents and Settings\administrator.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 >
ConceptosDNS (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 >
ConceptosParticiones (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)
ConceptosParticiones (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
ConceptosParticiones (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
ConceptosParticiones (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
ConceptosReplicación (I) • 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)
ConceptosReplicación (II) • 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
ConceptosFSMO (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
ConceptosFSMO (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
ConceptosFSMO (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
ConceptosFSMO (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
ConceptosFSMO (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
ConceptosFSMO (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
ConceptosFSMO (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
ConceptosFSMO (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 ActivoEsquema • 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 ActivoEsquema (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 ActivoNomenclatura 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 ActivoNomenclatura de objetos (II) • Ej. De DN • Cn=alex,ou=usuariosdemo,dc=zaltormovil,dc=local • Common Name = alex • Organizational Unit = usuariosdemo • Domain Component = zaltormovil • Domain Component = local
El interior del Directorio ActivoNomenclatura 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 ActivoCatá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 ActivoCatá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 ActivoCatá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 ActivoRootDSE • 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 ActivoResolució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 ActivoResolució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 ActivoResolució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úsquedasLDP (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úsquedasLDP (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úsquedasLDP (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úsquedasLDP (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úsquedasLDP (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úsquedasLDP (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)(isMemberOfPartialAttributeSet=TRUE)) Scope: Subtree Options - > Attributes: lDAPDisplayName
Manejo de LDAP. BúsquedasLDP (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
ScriptsDemo 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 100Set objLeaf = objContainer.Create("User", "cn=UserNo" & i)objLeaf.Put "sAMAccountName", "UserNo" & iobjLeaf.SetInfoNextWScript.Echo "100 Usuarios creados."
ScriptsTechnet 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 MMCDisplay 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