miércoles, abril 02, 2008

Active directory

Active Directory (AD) es el nombre utilizado por Microsoft para referirse a su implementación de servicio de directorio en una red distribuida de computadores. Utiliza distintos protocolos (principalmente LDAP, DNS, DHCP, kerberos...).

Su estructura jerárquica permite mantener una serie de objetos relacionados con componentes de una red, como usuarios, grupos de usuarios, permisos y asignación de recursos y políticas de acceso.

Estructura

Active Directory esta basado en una serie de estándares llamados (X.500), aquí se encuentra una definición logica a modo jerárquico.



Estos dominios y subdominios se identifican utilizando la misma notación de las zonas DNS, razón por la cual Active Directory requiere uno o más servidores DNS que permitan el direccionamiento de los elementos pertenecientes a la red, como por ejemplo el listado de equipos conectados; y los componentes lógicos de la red, como el listado de usuarios.

Un ejemplo de la estructura descendente (o herencia), es que si un usuario pertenece a un dominio, será reconocido en todo el árbol generado a partir de ese dominio, sin necesidad de pertenecer a cada uno de los subdominios.

A su vez, los árboles pueden integrarse en un espacio común denominado bosque. Para realizar un bosque es necesario crear dos o más árboles (que por lo tanto no comparten el mismo nombre de zona DNS entre ellos) y establecer una relación de "trust" o confianza entre ellos. De este modo los usuarios y recursos de los distintos árboles serán visibles entre ellos, manteniendo cada estructura de árbol el propio Active Directory.

Funcionamiento

Su funcionamiento es similar a otras estructuras de LDAP (Lightweight Directory Access Protocol), ya que este protocolo viene implementado de forma similar a una base de datos, la cual almacena en forma centralizada toda la información relativa a un dominio de autenticación. La ventaja que presenta esto es la sincronización presente entre los distintos servidores de autenticación de todo el dominio.

Debido a esta centralización, se pueden crear varios objetos que afectarán los recursos y los usuarios que acceden a la red.

A su vez, cada uno de estos objetos tendrá atributos que permiten identificarlos en modo unívoco (por ejemplo, los usuarios tendrán campo "nombre", campo "email", etc..., las impresoras de red tendrán campo "nombre", campo "fabricante", campo "modelo", campo "usuarios que pueden acceder", etc). Toda esta información queda almacenada en Active Directory replicándose de forma automática entre todos los servidores que controlan el acceso al dominio.

De esta forma, es posible crear recursos (como carpetas compartidas, impresoras de red, etc) y conceder acceso a estos recursos a usuarios, con la ventaja que estando todos estos objetos memorizados en Active Directory, y siendo esta lista de objetos replicada a todo el dominio de administración, los eventuales cambios serán visibles en todo el ámbito. Para decirlo en otras palabras, Active Directory es un repositorio centralizado que facilita el control, la administración y la consulta de todos los elementos lógicos de una red (como pueden ser usuarios, equipos y recursos).

Intercambio entre dominios

Para permitir que los usuarios de un dominio accedan a recursos de otro dominio, Active Directory usa un trust (en español, enlace de confianza). El trust es creado automáticamente cuando se crean nuevos dominios. Los límites del trust no son marcados por dominio, sino por el bosque al cual pertenece. Existen trust transitivos, donde los trust de Active Directory pueden ser un acceso directo (une dos dominios en árboles diferentes, transitivo, una o dos vías), bosque (transitivo, una o dos vías), reino (transitivo o no transitivo, una o dos vías), o externo (no transitivo, una o dos vías), para conectarse a otros bosques o dominios que no son de Active Directory. Active Directory usa el protocolo V5 de Kerberos, aunque también soporta NTLM y usuarios webs mediante autenticación SSL / TLS

Confianza transitiva

Las Confianzas transitivas son confianzas automáticas de dos vías que existen entre dominios en Active Directory. Se definen como confianzas que fluyen a través de la red, utilizando servidores de paso para utilizar los recursos de dos árboles no conectados directamente. Esto maximiza las relaciones entre dominios de Windows porque evita poseer exceso de confianza para conectarse con todas las máquinas de la red. ---

Confianza explícita

Las Confianzas explícitas son aquellas que establecen las relaciones de forma manual para entregar una ruta de acceso para la autenticación. Este tipo de relación puede ser de una o dos vías, dependiendo de la aplicación.

Las Confianzas explícitas se utilizan con frecuencia para acceder a dominios compuestos por ordenadores con Windows NT 4.0.

Confianza de Acceso Directo

La Confianza de acceso directo es, esencialmente, una confianza explícita que crea accesos directos entre dos dominios en la estructura de dominios. Este tipo de relaciones permite incrementar la conectividad entre dos dominios, reduciendo las consultas y los tiempos de espera para la autenticación.

Confianza entre bosques

La Confianza entre bosques permite la interconexión entre bosques de dominios, creando relaciones transitivas de doble vía. En Windows 2000, las confianzas entre bosques son de tipo explícito, al contrario de Windows Server 2003.

Direccionamientos a recursos

Los direccionamientos a recursos de Active Directory son estándares con la Convención Universal de Nombrado (UNC), Localizador Uniforme de Recursos (URL) y nombrado de LDAP.

Cada objeto de la red posee un nombre de distinción (en inglés, Distinguished name (DN)), así una impresora llamada Imprime en una Unidad Organizativa (en inglés, Organizational Units, OU) llamada Ventas y un dominio foo.org, puede escribirse de las siguientes formas para ser direccionado:

  • en DN sería CN=Imprime,OU=Ventas,DC=foo,DC=org, donde
    • CN es el nombre común (en inglés, Common Name)
    • DC es clase de objeto de dominio (en inglés, Domain object Class).
  • En forma canónica sería foo.org/Ventas/Imprime

Los otros métodos de direccionamiento constituyen una forma local de localizar un recurso

  • Distinción de Nombre Relativo (en inglés, Relative Distinguised Name (RDN)), que busca un recuso sólo con el Nombre Común (CN).
  • Globally Unique Identifier (GUID), que genera una cadena de 128 bits que es usado por Active Directory para buscar y replicar información

Ciertos tipos de objetos poseen un Nombre de Usuario Principal (en inglés, User Principal Name (UPN)) que permite el ingreso abreviado a un recurso o un directorio de la red. Su forma es objetodered@dominio

Diferencias entre Windows NT y Active Directory

A diferencia del anterior sistema de administración de dominios de Windows NT Server, que preveía únicamente el dominio de administración, Active Directory permite también crear estructuras jerárquicas de dominios y subdominios, facilitando la estructuración de los recursos según su localización o función dentro de la organización a la que sirven. Otra diferencia importante es el uso de estandares como X.500 y LDAP para el acceso a la información.

Interfaces de programación

Las interfaces de servicio de Active Directory (ADSI) entregan al programador una interfaz orientada a objetos, facilitando la creación de programas de directorios mediante algunas herramientas compatibles con lenguajes de alto nivel, como Visual Basic, sin tener que lidiar con los distintos espacios de nombres.

Mediante las ADSI se permite crear programas que realizan un único acceso a varios recursos del entorno de red, sin importar si están basados en LDAP u otro protocolo. Además, permite generar secuencias de comandos para los administradores.

También se puede desarrollar la Interfaz de mensajería (MAPI), que permite generar programas MAPI.

Requisitos de instalación

Para crear un dominio hay que cumplir, por lo menos, con los siguientes requisitos recomendados:

  • Tener cualquier versión Server de Windows 2000 o 2003 (Server, Advanced Server o Datacenter Server),
  • Protocolo TCP/IP instalado y configurado manualmente, es decir, sin contar con una dirección asignada por DHCP,
  • Tener un servidor de nombre de DNS, para resolver la dirección de los distintos recursos físicos presentes en la red, y
  • Poseer más de 250 Mb en una unidad de disco formateada en NTFS

Alternativas

Samba es un programa de código libre, que tiene disponible un controlador de dominios compatible con Windows NT 4.

El programa de código libre Mandriva Directory Server ofrece una interfaz web para manejar el controlador de dominios de Samba y el servicio de directorios de LDAP.

Otra alternativa es Novell eDirectory, que es Multiplataforma: se puede correr sobre cualquier sistema operativo: Linux, AIX, Solaris, Novell Netware, UNIX e integra LDAP v.3 Nativo. Es el precursor en materia de estructuras de Directorio, ya que fue introducido en 1990 con la versión de Novell Netware 4.0 Aunque AD de Microsoft alcanzó mayor popularidad, todavía no puede igualar la fiabilidad y calidad de eDirectory y su capacidad Multiplataforma.

Sun Java ES Directory Server[1] y OpenDS [2] son otras alternativas basadas en java. El primero es un producto de Sun Microsystems y el segundo una alternativa de código abierto.


No hay comentarios: