Serv Nombres 2008

93
Lic. Jorge Guerra G. Sistemas Distribuidos Servicio de Nombramiento Año 2008 Lic. Jorge Guerra Guerra

description

PPT de servicios de nombramiento 2008

Transcript of Serv Nombres 2008

Page 1: Serv Nombres 2008

Lic. Jorge Guerra G.

Sistemas Distribuidos

Servicio de Nombramiento

Servicio de Nombramiento

Año 2008 Lic. Jorge Guerra Guerra

Page 2: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos2

Page 3: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos3

Introducción

Page 4: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos4

• Motivación– Muchas aplicaciones basadas en redes se apoyan en sus

directorios (o bases de datos) propios• Información que describe a los usuarios, aplicaciones, ficheros y

otros recursos accesible por la red• Gran parte de la información es común con otras aplicaciones

– Problema de consistencia– A más directorios especializados, mayor dificultad de

mantenimiento

Introducción

Page 5: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos5

Page 6: Serv Nombres 2008

Lic. Jorge Guerra G.

Conceptos Basicos

Sistemas Distribuidos6

Page 7: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos7

Conceptos básicos

• Nombre permite referirse a objetos– Nombre está asociado a id. del objeto (o sea, a nombre interno)– Más general, nombre asociado a conjunto de atributos del objeto

• Resolución de nombres:– Convencional: A partir de nombre, se obtienen atributos– Por atributos: A partir de 1 o más atributos, se obtiene el resto

• Servicio de nombres:– Resolución convencional (Páginas blancas)

• Servicio de directorio– Resolución basada en atributos (Páginas amarillas)

• NOTA: Servicio de directorio de un SFD es un servicio de nombres– Incluye resolución convencional ya que el nombre es un atributo

Page 8: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos8

Servicios de nombres

• Herramienta fundamental en cualquier sistema de computación– Nombres– Bindings– Referencias y direcciones– Contextos– Sistemas de nombres y

espacios de nombresEjemplos:DNS (Domain Name Service)Registro RMIServicio de nombres de CORBA

Page 9: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos9

Servicios de directorio

• Amplían la funcionalidad de los servicios de nombres asignando atributos a los objetos– Atributos– Búsquedas y filtros

Page 10: Serv Nombres 2008

Lic. Jorge Guerra G.

Nombre utilizado para accesar a un recurso usando URL

Sistemas Distribuidos10

file

Web serverSocket

http://www.cdk3.net:8888/WebExamples/earth.html

URL

Resource ID (IP number, port number, pathname)

138.37.88.61 WebExamples/earth.html8888

DNS lookup

(Ethernet) Network address

2:60:8c:2:b0:5a

ARP lookup

Page 11: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos11

Espacios de nombres

• Conjunto de nombres reconocidos por un servicio de nombres

• Alternativas:– Único espacio (servicio) de nombres para todos los tipos de objetos

• No siempre adecuado incluir todos los objetos (p.ej. ficheros)– Combinación de distintos espacios de nombres (p. ej. DCE)

• Ejemplo de la última alternativa:– Servicio de nombres principal para todo excepto ficheros – Espacio de nombre de archivos “enganchado” en un punto del

espacio de nombres principal – Cuando en resolución de nombre, servicio principal alcanza punto

de montaje, delega en SFD el resto de la resolución

Page 12: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos12

Resolución de nombres

• Generalmente el espacio de nombres es jerárquico– Algunos objetos son contenedores (directorios) de otros objetos

• Resolución: proceso iterativo que parte de un contexto inicial– Res. absoluta: contexto inicial corresponde con raíz– Res. relativa: contexto inicial corresponde con nodo intermedio

• Espacio de nombres organizado en dominios– Cada dominio gestionado por un servidor

• Mismas alternativas de navegación que en SFD – Resolución iterativa, transitiva o recursiva

• Uso de cache en la resolución• Replicación de información de un dominio

– Mejor fiabilidad y rendimiento, pero problema de coherencia

Page 13: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos13

Resolucion de nombres

• Resolución (nombres « direcciones y otros atributos), búsqueda, Modificación

• Funcionamiento:– Base de datos distribuida (servidores que cooperan),– por dominios (escala), rápido (sin conexión, cachés, réplicas)– Muchas consultas (casi sólo lectura),– Muy pocas modificaciones (propagación de cambios)

Page 14: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos14

Ejemplos de Serv. de Nombres

• CORBA:– Servicio de nombres y de navegación

• X.500. Servicio de directorio estándar de ISO.• LDAP (Lightweight Directory Access Protocol, RFC 2251)

– Basado en X.500 pero con un protocolo más ligero (sobre TCP/IP) y una interzaz más sencilla

• Active Directory de Microsoft– Forma parte de la arquitectura de Windows 2000– Proporciona una interfaz LDAP

• UDDI Universal Directory Description Interface -- Forman parte de .NET y JWSDP

Page 15: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos15

Conceptos básicos de X.500

• S. de directorio (p. amarillas) + S. de nombres (p. blancas)• Información organizada jerárquicamente

– Directory Information Tree (DIT)• Por ejemplo: <país, organización, departamento, persona>

• Nodo del árbol (directorio) tiene asociado cjto. de atributos• Conjunto de toda la información:

– DIB (Directory Information Base)– Similar a una BD pero escrituras infrecuentes y sencillas

• Usa un modelo de información orientado a objetos

Page 16: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos16

Ejemplo de jerarquía

... France (country) Great Britain (country) Greece (country)...

BT Plc (organization) University of Gormenghast (organization)... ...

Department of Computer Science (organizationalUnit)

Computing Service (organizationalUnit)

Engineering Department (organizationalUnit)

...

...

X.500 Service (root)

Departmental Staff (organizationalUnit)

Research Students (organizationalUnit)

ely (applicationProcess)...

...

Alice Flintstone (person) Pat King (person) James Healey (person) ...... Janet Papworth (person)...

Coulouris, Dollimore and Kindberg

Distributed Systems: Concepts and Design Edn. 3 © Addison-Wesley Publishers 2000

Page 17: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos17

Modelo orientado a objetos

• Objetos agrupados en clases– p.ej. personas, impresoras, organizaciones, ...

• Existe esquema que define clases y herencia entre clases– Para cada clase se define cjto. de atributos:

• Atributo= nombre de atributo + tipo de valor(es) asociado(s)• Puede especificarse como obligatorio u opcional

– Define la jerarquía de herencia de clases• P.ej. Clase Secretario derivada de Empleado

• Entrada de DIB (o sea, nodo de DIT): Cjto. de atributos– Atributo= nombre + uno o más valores (p.e j. Despacho=115)– Atributo obligatorio que define la clase (ObjectClass)– No confundir jerarquía de objetos (DIT) con jerarquía de clases

(Esquema)

Page 18: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos18

Una entrada de DIB

infoAlice Flintstone, Departmental Staff, Department of Computer Science,

University of Gormenghast, GB

commonName Alice.L.Flintstone Alice.Flintstone Alice Flintstone A. Flintstone

surname

Flintstone

telephoneNumber +44 986 33 4604

uid

alf

mail

[email protected]

[email protected]

roomNumber

Z42

userClass

Research Fellow

Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 © Addison-Wesley Publishers 2000

Page 19: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos19

Nombres y operaciones

• Cada entrada tiene un nombre: – Atributo(s) “distinguido(s)” que forma(n) su Relative Distinguished

Name (RDN)– Debe ser único entre los “hermanos” del objeto– P.ej. Nombre=“Juan Martínez Martínez”

• Nombre completo: Distinguished Name (DN)– Concatenación de RDNs desde raíz hasta objeto:

• P.ej. País=ES,Organización=UPM,Nombre=“Juan Martínez Martínez”

• Operaciones típicas:– Añadir/eliminar/modificar entrada de directorio– Leer atributos de un objeto– Buscar en árbol subyacente a objeto qué objetos cumplen criterio

Page 20: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos20

Arquitectura del servicio X.500

• Modelo cliente/servidor• Clientes: Directory User Agents (DUA)• Servidores: Directory Service Agents (DSA)• Normalmente, DIB repartida entre varios DSAs• Admite distintos esquemas de resolución (iterativa, recursiva) • Aspectos de implementación no definidos por estándar

– Por ejemplo, caching y replicación

Page 21: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos21

Page 22: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos22

Arquitectura del servicio X.500

DSA

DSA

DSA

DSA

DSADSADUA

DUA

DUA

Coulouris, Dollimore and Kindberg

Distributed Systems: Concepts and Design Edn. 3 © Addison-Wesley Publishers 2000

Page 23: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos23

Page 24: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos24

Page 25: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos25

Funcionamiento de DNS

• Toda zona (unidad de gestión) tiene al menos dos servidores de nombres– Motivación de la duplicación

• Desempeño• Tolerancia a fallas

– Cada servidor mantiene una tabla de correspondencia nombre de dominio- IP• Colección de registros <Nombre, Valor, Tipo, Clase, Duración de vida>

• Principio de búsqueda– Un servidor contiene la dirección buscada– Contiene la dirección de otro servidor con posibilidad de conocerla

Page 26: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos26

Funcionamiento de DNS

• Contenido de las tablas del servidor de nombres– Tipo: indica cómo el campo valor debe interpretarse

• Tipo = A: el valor es una dirección IP• Tipo = NS: el valor es un nombre de dominio de un servidor de nombres• Tipo = CNAME: el valor es el nombre canónico de un host (el nombre de

referencia en caso de alias)– Clase: IN (Internet), casi siempre (uso de DNS como directorio para otros servicios

de nombres)– Duración de vida (TTL, Time To Live): duración de validez de un registro

• Aplicación de un principio general: toda información debe ser validada períodicamente (cf. Tablas de routeo)

Page 27: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos27

Funcionamiento de DNS

• El servidor raíz contiene – los nombres de los servidores de nombres de los dominios del segundo nivel– Las direcciones IP de esos servidores

• <inrialpes.fr, if.inrialpes.fr, NS, IN, ...>• <if.inrialpes, 194.199.18.65, A, IN,...>

– El servidor raíz está ampliamente duplicado• Más un servidor es “alto” más se necesita que haya copias y menos seguido cambia

(long TTL)– Cada servidor de zona contiene

• Tuplas (nombre, dirección) de hosts que pertenecen a los dominios contenidos en la zona

• Eventualmente tuplas (nombre, dirección) de servidores de nombres de subdominios incluidos

• v.g., if.inrialpes.fr <tuamotu.inrialpes.fr, 194.199.20.81, A, IN, ...>

Page 28: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos28

Funcionamiento de DNS

• Para integrar la resolución– Todo host debe conocer la dirección IP de un servidor de nombres local (en su

zona)• Se recomienda conocer dos o tres direcciones

– Esas direcciones son proveidas a los usuarios del host por el administrador de la zona (o su provedor de acceso a Internet)

– Se inscriben a mano en las tablas de configuración para el acceso a Internet

Page 29: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos29

Page 30: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos30

Page 31: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos31

Page 32: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos32

Page 33: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos33

Page 34: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos34

Page 35: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos35

Page 36: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos36

Page 37: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos37

Funcionamiento

Page 38: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos38

Page 39: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos39

Page 40: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos40

Page 41: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos41

Page 42: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos42

• Lightweight Directory Access Protocol• Método estándar de acceso y actualización de la

información del directorio– Es un protocolo de comunicaciones– No define un interfaz de programación

• Es un estándar industrial abierto• Acceso más “ligero”a X.500

– Usa la pila de protocolos TCP/IP– Simplifica alguans operaciones X.500

LDAP: definición

Page 43: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos43

• Gateway a un servidor X.500

• Stand-Alone

LDAPClient

LDAPServer

X.500Server

Directory

TCP/IP OSI

LDAPClient

LDAPServer

Directory

TCP/IP

Servidor LDAP

Page 44: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos44

• Interacción básica

– Binding : 1, 2– Unbinding : 5

LDAPClient

LDAPServer

1. request2. authenticated

3. read or update or search request

4. response

5. close session

LDAP: interacción

Page 45: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos45

Page 46: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos46

Page 47: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos47

Page 48: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos48

• Ejemplo de DIT

cn=John,ou=LDAP Team,o=IBM,c=UScn=John Smith,o=IBM,c=DE

Directory Root

o=MyOrgc=US c=DE

o=IBM o=transarcmail:[email protected]:512- 838- 5187

o=IBM

ou=LDAP Teamcn=Mike Youngmail:[email protected]

cn:J ohn Smithmail:[email protected]

cn=J ohn(alias)

Modelo de nombres (2)

Page 49: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos49

• Sufijos y Referrals (referencias)– Soporte de los directorios distribuidos

• Sufijos– Los servidores LDAP pueden no almacenar el DIT entero

• Referrals– Forma un directorio distribuido que contiene todo el DIT– Una entrada de objectClass referral– Tiene un atributo, ref, cuyo valor es el LDAP URL de la entrada referida en

otro servidor LDAP– Manejado por el cliente

» Descarga al servidor del trabajo de contactar con otros servidores

Modelo de nombres (3)

Page 50: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos50

• Ejemplo de referrals

Server 2

Server 1

o=IBM,c=USSuffix

ou=ITSO

ou=ITSO,o=IBM,c=US

Suffix

ou=ITSOtestSuffix

cn=J ohn Smith

cn=Paul Miller

cn=Mike Cook

Referral

Modelo de nombres (4)

Page 51: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos51

• Operación de consulta– Parámetros de la búsqueda

Directory Root

c=US c=DE c=SE

Scope of SearchLDAP_SCOPE_SUBTREE

Base Objectdn="o=Transarc,c=US"

o=Transarc

mail:[email protected]:512- 838- 5187

cn=Larry Brown

cn:Mike Cookmail:[email protected]

cn=Charlie Brown

cn:Paul Millermail:[email protected]

Search Filter(cn=Larry Brown)

Information ReturnedAll Attributes

Modelo funcional (1)

Page 52: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos52

• LDAP replicado

WebServer

Web App.Server

MailServer

LDAPclient

NetworkDispatcher

ClientNetwork

MasterDirectoryServer

ReplicaDirectoryServer

Client Requests

Server Replies

Ejemplo de uso (1)

Page 53: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos53

• OpenLDAP– Gratuito y Open Source

• Netscape Directory Server• IBM's Secure Way Directory• Microsoft Active Directory Service

– Parte de Windows 2000

Implementaciones

Page 54: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos54

Page 55: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos55

Arquitectura de JNDI

Page 56: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos56

Proveedor de servicio

• Componente de JNDI para integrar el acceso a algún tipo de servicio de nombres o directorio:– Lightweight Directory Access Protocol(LDAP)– CORBA services(COS) naming service– Java Remote Method Invocation(RMI) Registry– Network Information System(NIS)– File System– Domain Name System (DNS)– Novell NDS

Page 57: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos57

Paquetes JNDI

• Parte del Standard Development Kit 1.3?, jndi.jar• javax.naming

– Acceso a los servicios de nombes• javax.naming.directory

– Acceso a los servicios de directorio• javax.naming.event

– Soporta notificación de eventos en servicios de nomgres y directorios. • javax.naming.ldap

– Características propias de LDAP v3 no cubiertas en el paquete javax.naming.directory• javax.naming.spi

– Interfaz de proveedor de servicio

Page 58: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos58

Page 59: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos59

Contexto inicial (1)

• Punto de inicio para la resolución de nombres1. Especificar el proveedor de servicio

Hashtable env = new Hashtable();env.put(Context.INITIAL_CONTEXT_FACTORY,

"com.sun.jndi.ldap.LdapCtxFactory"); • Otros proveedores:

– Sistema de archivos:• com.sun.jndi.fscontext.RefFSContextFactory

– Registro RMI:• com.sun.jndi.rmi.registry.RegistryContextFactory

Page 60: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos60

Contexto inicial (2)

2. Especificar otra configuración:env.put(Context.PROVIDER_URL, "ldap://ldap.wiz.com:389");env.put(Context.SECURITY_PRINCIPAL, "user");env.put(Context.SECURITY_CREDENTIALS, "password");

3. Creación del contexto inicial:Context ctx = new InitialContext(env); DirContext ctx = new InitialDirContext(env);

Page 61: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos61

Contexto inicial (3)

• Uso del fichero de propiedades jndi.propertiesjava.naming.provider.url="ldap://localhost:389/o=jnditutorial“

java.naming.factory.initial="com.sun.jndi.ldap.LdapCtxFactory" • jndi.properties en:

– algún directorio del classpath– JAVA_HOME/lib/

• Constructor sin parámetrosContext ctx = new InitialContext();

Page 62: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos62

Ejemplo servicio de nombres

try {// Contexto inicialContext ctx = new InitialContext(env);// Buscar un objetoObject obj = ctx.lookup(name); // Casting y usoSystem.out.println(name + " ligado a: " + obj);

} catch (NamingException e) {System.err.println(“Problemas con " + name + ": " + e);

}

Page 63: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos63

Ejemplo servicio de directorio (1)

try {// Contexto indicial de directorioDirContext ctx = new InitialDirContext(env); // Atributos del objeto Attributes attrs = ctx.getAttributes("cn=Eduardo Martinez, ou=DIIC");// Encontrar el nombre de pila ("sn") e imprimirloSystem.out.println("sn: " + attrs.get("sn").get());

} catch (NamingException e) { System.err.println(“Problemas recuperando atributo:" + e);

}

Page 64: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos64

Ejemplo servicio de directorio (2)

DirContext ctx = new InitialDirContext(env); String base = “o=UM, c=ES”;String filter = “(|(cn=Mart*)(cn=Per*))”;SearchControls contraints = new SearchControls();contraints.setSearchScope(

searchControls.SUBTREE_SCOPE);NamingEnumeration results = ctx.search(base,filter,contraints);

Page 65: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos65

Ejemplo servicio de directorio (3)

while (results.hasMore()) {SearchResult sr = (SearchResult)results.next();System.out.println(sr.getName());Attributes attrs = sr.getAttributes();if (attrs != null) { for (NamingEnumeration ne=attrs.getAll(); ne.hasMore();)

{Attribute attr = (Attribute)ne.next();String id = attr.getID();

Page 66: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos66

Ejemplo servicio de directorio (4)

for (Enumeration vals = attr.getAll(); vals.hasMoreElements(); System.out.println(id + “:” +vals.nextElement()));

} // for attrs.getAll()} // if attrs!=null

} // while results.hasMore()

Page 67: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos67

Page 68: Serv Nombres 2008

Lic. Jorge Guerra G.

Servicios de Directorio de Windows 2000 Active Directory

Page 69: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos69

¿ Por qué tener un Directorio Activo ?

• Componente importante de un sistema distribuido• Búsqueda de recursos en la red• Reforzar la seguridad definida por el Administrador• Distribuir un directorio en varios servidores a través de

una red• Replicar un directorio para hacerlo disponible a más

usuarios• Dividir un directorio en varios puntos de almacenamiento

Page 70: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos70

Directorio Activo

• Objetivos del Directorio Activo– Facilitar el uso a los administradores– Hacerlo más útil y potente para los usuarios

• Localizar información• Localizar servicios• Búsqueda

– Facilitar el uso de las aplicaciones, conectar con directorio de aplicaciones

– Interoperar con otros directorios

Page 71: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos71

Directorio ActivoConceptos importantes

• Scope– Incluye cualquier objeto

• NameSpace– Area delimitada de resolución de nombres

• Object– Conjunto de atributos que representan algo en concreto

• Container– Contenedor de objetos

Page 72: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos72

Servicios de DirectorioSchema

• Contiene una definición formal de contenidos y estructura del AD, con atributos, clases y propiedades de cada clase

Extensible (nuevos tipos de objetos)Extensible (nuevos tipos de objetos)

Se almacena en el propio directorioSe almacena en el propio directorio

Page 73: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos73

Directorio ActivoConceptos importantes

• Árbol– Describe una

jerarquía de objetos y contenedores

Page 74: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos74

Directorio ActivoConceptos importantes

• Nombre– Distinguished (DN)

• /O=Internet/DC=COM/DC=Microsoft/CN=Users/CN=Francisco Serrano

– Relative Distinguished Name (RDN)• CN=Francisco Serrano

• Dominio– Area de seguridad dentro de una red

• Árbol de Dominios– Grupo de Dominios que comparten mismo esquema

Page 75: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos75

Árbol de DominiosVer Relaciones de Confianza

DominioDominio AA

DominioDominio CC

DominioDominio BB

ConfianzaConfianza ImplícitaImplícita

ConfianzaConfianza ExplícitaExplícita

Page 76: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos76

Árbol de Dominios Ver NameSpace

root.com

sub.root.com

other.sub.root.com

Page 77: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos77

Servicios de DirectorioGlobal Catalog

• Repositorio central de información sobre objetos en un tree o en un forest

• Un Global Catalog Server es un DC que almacena una copia del Global Catalog

Page 78: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos78

Global Catalog

DC1, Global Catalog

DC2, Domain Controller DC3, Domain Controller

DC4, Global Catalog DC5, Domain Controller

• Mínimo, uno por dominio (checking)• GCs adicionales en DCs

dependiendo del nº de usuarios y del nº de consultas

• GCs requieren memoria adicional

Page 79: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos79

Global Catalog - Logon

• La máquina cliente contacta con el Controlador de Dominio (DC)

• DC busca la dirección IP en la máquina cliente• Si el cliente no está en la subred local, el DC mira en el

Global Catalog para buscar otro DC cercano al cliente• Se notifica al cliente si no se ha conectado al DC más

cercano• Evita el tráfico WAN cuando es posible

Page 80: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos80

P: ¿Qué es un grupo de árboles?

Respuesta: Un bosque

Page 81: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos81

Directorio ActivoConceptos importantes

• Bosque– Unión de árboles de dominio que:

• Usan el mismo esquema• Comparten el mismo Global Catalog• Unidos por relaciones de confianza Kerberos

– Muy útil para grupos de empresas subsidiarias que quieren autonomía en los aspectos administrativos

• Site– Lugar en la red que contiene servidores Active Directory– Subredes TCP/IP ‘bien conectadas’

• Conexión de red altamente fiable y rápida

Page 82: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos82

Servicios de DirectorioServicios de DirectorioEstructuraEstructura

TreesTrees

DomainsDomains

ForestsForests

SitesSites

Domain Domain controlescontroles

Fís

ica

Fís

ica

gic

aL

óg

ica

OUOU Contenedor usado para organizar objetos en un dominio. Puede contener otros Ous Contenedor usado para organizar objetos en un dominio. Puede contener otros Ous

DomainDomain unidad lógica estructural en AD: plasma la organización corporativa (seguridad y admón por dominios). unidad lógica estructural en AD: plasma la organización corporativa (seguridad y admón por dominios). 1Millon+1Millon+

TreeTree agrupación jerárquica de dominios NT 5.0 que permite compartición de recursos globales. Comparten agrupación jerárquica de dominios NT 5.0 que permite compartición de recursos globales. Comparten global global catalog (repositorio central) y schema (definición de los objetos del AD)catalog (repositorio central) y schema (definición de los objetos del AD)

ForestForest grupo de trees que tienen un namespace disjunto, utilizan el mismo esquema de nombres, operan grupo de trees que tienen un namespace disjunto, utilizan el mismo esquema de nombres, operan independientemente pero necesitan comunicarse éntre si (comparten catalogo global) independientemente pero necesitan comunicarse éntre si (comparten catalogo global)

Domain ControlersDomain Controlers PC que almacena una replica de la DBase del dominio local.Todo Server es un DC PC que almacena una replica de la DBase del dominio local.Todo Server es un DC

SitesSites: Colección de subrangos de IP con conectividad LAN: Colección de subrangos de IP con conectividad LAN

Page 83: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos83

Servicios de DirectorioModelos de dominio

NYC

example1.com

TOKLONBIZ1

.

BIZ2

Exam

ple1

.com

Biz 1 Biz3Biz2 Biz4 Biz6Biz5

Dominio Único

Dominios por negocios: Forest Extendido

Modelo Geográfico

Page 84: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos84

Ejemplo: Jerarquía OUs

widgets.org

exec

utive

adm

in

usuar

ioss

usuar

ios

recu

rsos

recu

rsos

impre

sora

s

orden

adore

s

impre

sora

s

orden

adore

s

tem

porale

s

emple

ados

tem

porale

s

emple

ados

Page 85: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos85

widgets.org

.

exec

utive

adm

in

usuar

ios

usuar

ios

recu

rsos

recu

rsos

GP1

GP1 GP1

Grupo Política 1

Asignar Aplicaciones financieras al

menu

Quitar “Run” del menu Inicio

impre

sora

s

orden

adore

s

impre

sora

s

orden

adore

s

tem

porale

s

emple

ados

tem

porale

s

emple

ados

gp2 GP1,2

Grupo Política 2

Page 86: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos86

Sites widgets.org

na.widgets.org euro.widgets.org asia.widgets.org

of.n

a.w

idge

ts.o

rg

Oeste Centro Este España Alemania Francia Japón Australia Nueva Zelanda

oe.n

a.w

idge

ts.o

rg

ce.n

a.w

idge

ts.o

rg

es.n

a.w

idge

ts.o

rg

sp.e

uro.

wid

gets

.org

al.e

uro.

wid

gets

.org

fr.e

uro.

wid

gets

.org

jp.a

sia.

wid

gets

.org

au.a

sia.

wid

gets

.org

nz.a

sia.

wid

gets

.org

Ofic. Centrales

Page 87: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos87

Directorio ActivoSchema

• Contiene una definición formal de contenidos y estructura del AD, con atributos, clases y propiedades de cada clase

Extensible (nuevos tipos de objetos)Extensible (nuevos tipos de objetos)

Se almacena en el propio directorioSe almacena en el propio directorio

Page 88: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos88

Actualización a Active Directory Single Domain

PDCPDC

Windows NT4Windows NT4•Upgrade del PDCUpgrade del PDC

Mixed Mode Mixed Mode

BDCBDC

BDCBDCBDCBDC BDCBDC

Native Mode Native Mode

•Cambiar a modo Cambiar a modo nativonativo

•Upgrade de los BDCsUpgrade de los BDCs

Page 89: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos89

Modo Nativo y Modo Mixto

Active Directory soporta DC en modo mixto Una vez actualizados todos los BDC cambiamos a modo nativo Características disponibles sólo en modo Nativo:

Grupos universales Admin. InterDominios Consultas en los DCs

Page 90: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos90

us.company.comus.company.com

uk.company.comuk.company.com

company.comcompany.com

na.company.comna.company.com eu.company.comeu.company.com

Opciones Integración DNS Windows 2000 controla Raiz

• Pros– No hay dependencia de

DNS existentes– No se necesita testing de

integración AD– Nombres más familiares

• Cons– Requiere esfuerzos para

sustituir DNS existentes

Page 91: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos91

company.comcompany.com

us.company.comus.company.comuk.company.comuk.company.com

cool.company.comcool.company.com

na.cool.company.comna.cool.company.com eu.cool.company.comeu.cool.company.com

Opciones Integración DNS Subdominio delegado

• Pros– No requiere upgrade DNS

existentes– Minimiza impacto del AD

en servidores DNS existentes

• Cons – Nombres son más largos– Contínua dependencia de

DNS

Page 92: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos92

company.comcompany.com

us.company.comus.company.comuk.company.comuk.company.com

cool.company.comcool.company.com

na.cool.company.comna.cool.company.com eu.cool.company.comeu.cool.company.com

Opciones integración DNS No hay Windows 2000 DNS

• Pros– No hay cambios

• Cons– Unico punto de fallo– Upgrade DNS para soporte de SRV

records (RFC 2052)– Pruebas de integración con MS

DHCP server

Page 93: Serv Nombres 2008

Lic. Jorge Guerra G.Sistemas Distribuidos93

Actualización Active DirectoryConsolidación de Directorios

• Active Directory Connector– Replica usuarios de Exchange 5.5– Replica Exchange Distribution Lists y direcciones

personalizadas– Third Parties

• Post Windows 2000– Exchange utilizará Active Directory