Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porJoaquin Villanueva Modificado hace 10 años
1
DISCLAIMER Realizado con OpenOffice.org-1.0.1
Utilicemos Software Libre cada vez que podamos... (lo hay bastante y de excelentes prestaciones)
2
Entendiendo LDAP Lightweight Directory Access Protocol
CAFELUG Briefing Trimestral UTN (Universidad Tecnológica Nacional Regional Bs.As.) Dic. 2002
3
Qué es LDAP? Protocolo Multiplataforma
Open Standard (define Métodos para acceso y actualización de información) Descendiente de X.500 (Directory Access Protocol) Modelo de representación de Datos (optimizado para consultas) Servicio de Directorio
4
Qué es un Directorio? Definición:
Colección jerárquica de Objetos y Atributos de Objetos ordenados de alguna manera particular, que dan detalles sobre cada objeto. Ejemplos: Guía Telefónica Catálogo de Libros En términos de computación: Subdirectorios de un filesystem
5
Ejemplos de Directorios
Guía Telefónica Personas (objetos) Orden Alfabético Atributos – Apellido, Nombre, Nro. TE, etc. Catálogo de libros Libros (objetos) Orden x Autor / Título Atributos – Nro. ISBN, Cantidad páginas, etc.
6
Directorios Base de datos especializada – Repositorio
Permiten a usuarios o aplicaciones encontrar recursos, Ej: Usuarios: Encontrar , TE, Fax, impresora, etc. Aplicaciones: Encontrar los servers a los cuales puede acceder un usuario, clientes que pueden acceder al sistema de facturación, impresora, etc. White page Yellow page
7
Diferencias entre DB y Directorios
Los directorios son DB especializadas. Características: Altos volúmenes de lectura Baja volatilidad - Almacenan información relativamente estática Actualizaciones limitadas a propietarios ó admins No son transaccionales Generalmente no requieren consistencia estricta No soportan SQL
8
Por qué usar LDAP? Repositorio de datos Centralizado
Simplificación de la administración (Passwords, Home directories, etc.) Cifrado de transacciones (SSL, TLS, etc.) Replicación (Aumenta la disponibilidad) Distribución (Reduce la carga de la red) Posibilidad de usar estructuras de árbol (Permite dividir una organización en unidades organizacionales)
9
Modelo de Datos La Unidad básica de información en un directorio se llama Entry. Entry Representa objetos de interés en el mundo real (Personas, Organizaciones, Servers, etc.) Compuestos por: Colección de Atributos que contienen información del objeto Cada Atributo tiene un tipo de dato Cada tipo de dato tiene asociada una sintaxis Uno o más valores Cómo se comportan en una búsqueda o en otras operaciones de directorio Ejemplo de atributo: FacsimilieTelephoneNumber
10
Schema Representa los tipos de objetos que un directorio puede contener. Dispone de una lista de atributos (Requeridos / Opcionales) de cada objeto Schema-checking (Asegura que todos los atributos requeridos existan antes del almacenamiento) Define la herencia y subclases de los objetos En qué lugar del DIT un objeto puede aparecer RFC 2252 Sintaxis de los atributos 2256 Schema
11
Naming Model Define cómo son las entradas: Identificadas, y
Organizadas DIT (Directory Information Tree) Cada entrada al DIT está identificada por un identificador único llamado distinguished name (DN) Cada DN puede estar formado por una secuencia de RDN (relative distinguished names) Cada RDN en un DN corresponde a una rama del DIT Cada RDN es derivado de su atributo (generalmente tiene la forma <Nombre de Atributo> = <Valor>)
12
Aclarando las cosas
13
OpenLDAP OpenLDAP 2.x es un LDAP v3 directory server desarrollado bajo licencia GPL por the OpenLDAP foundation. Soporta: SSL/TLS Replicación Autentificación SASL/GSSAPI, Integración con KerberosV Password Cleartext, crypt, MD5 y SHA LDAP X.500 Gateway LDBM, DB2 Múltiples plataformas: Linux, AIX, BSD, Solaris, NT, etc... APIs para C, C++, PHP, Perl, Python, TCL, SmallTalk, Sun JNDI,..... Novedades de opciones no soportadas en
14
Servers Slapd * Stand alone LDAP server
Slurpd * Directory Replication Server (sólo necesario cuando se trabaja con múltiples servers)
15
Programas Administrativos
Slapadd – Agrega entradas desde un archivo LDIF a un directorio LDAP. Ej., /usr/sbin/slapadd -l ldif-input. slapcat -Extrae las entradas de un directorio LDAP y lo salva en un archivo tipo LDIF. Ej., /usr/sbin/slapcat -l ldif- output creará un archivo LDIF llamado ldif-output slapindex - Re-indexa el directorio. slappasswd - Genera un valor de password encriptada Ej., /usr/sbin/slappasswd Precaución: Antes de correr los comandos slapadd, spapcat, slapindex verifique que el servidor ldap (slapd) no esté corriendo, si no hace esto, podría tener problemas de consistencia.
16
Programas Cliente ldapmodify – Modifica las entradas en un directorio LDAP, acepta input desde un archivo o standard input. ldapadd – Agrega entradas al directorio, acepta input desde un archivo o standard input ldapsearch – Realiza búsquedas en el directorio LDAP usando el shell prompt. ldapdelete – Elimina entradas de un directorio LDAP, acepta input desde un archivo o standard input.
17
Archivos de configuración
Generalmente encontrados en /etc/ldap ó /etc/openldap Archivo de configuración primario slapd.conf, se establecen los defaults para todo el sistema (configuración global) Schema almacenados en archivos de texto separados, usualmente encontrados en /etc/ldap/schema ó /etc/openldap/schema
18
Niveles de Log Niveles de log Disponibles
(en slapd.conf incluir loglevel <integer>) -1 all messages 1 trace function calls 2 debug packet handling 4 heavy trace debugging 8 connection management 16 print out packets sent and received 32 search filter processing 64 configuration file processing 128 access control list processing 256 stats log connections/operations/results 512 stats log entries sent 1024 print communication with shell backends 2048 entry parsing
19
Configurando slapd.conf
Ubicación: /etc/openldap/slapd.conf Incluir Schema que se usarán include /etc/openldap/schema/core.schema include /etc/openldap/schema/misc.schema include /etc/openldap/schema/cosine.schema include /etc/openldap/schema/inetorgperson.schema include /etc/openldap/schema/nis.schema Especificar DB database ldbm suffix “dc=cafelug,dc=org,dc=ar" rootdn "cn=Manager, dc=cafelug,dc=org,dc=ar " rootpw {crypt}mvRCcD3ajNmf2 directory /var/lib/ldap index objectClass,uid,uidNumber,gidNumber,memberUid eq
20
Archivo LDIF Registro 1 dn: dc=cafelug,dc=org,dc=ar objectclass: dcObject objectclass: organization o: Cafelug ONG dc: cafelug Registro 2 dn:ou=People,dc=cafelug,dc=org,dc =ar objectclass: organisationalUnit ou: people Registro 3 dn: uid=daniel,ou=People, dc=cafelug,dc=org,dc=ar objectclass: top objectclass: person objectclass: organizationalPerson objectclass: inetOrgPerson uid: daniel cn: Daniel Farias givenname: Daniel sn: Farias o: Cafelug ONG userPassword:{SSHA}D3DT4BJyKicf+PJ1+eq kG mail: changetype: modify iconv -f iso t utf-8 filename.ldif > filename-utf-8.ldif
21
Agregando entradas Crear un archivo LDIF
# ldaadd -D cn=Manager,dc=metaparadigm,dc=com - W<init.ldif Enter LDAP Password: xxxxx adding new entry "dc=cafelug,dc=org,dc=ar" "ou=People, dc=cafelug,dc=org,dc=ar " adding new entry "uid=daniel,ou=People,dc=cafelug,dc=org,dc=ar "
22
Filtros de búsqueda LDAP usa ‘search filters’ syntax (RFC2254)
Las consultas LDAP retornan todos los atributos de las entradas encontradas (o el atributo especificado) que coincidan con el filtro de búsqueda Las partículas de la consulta son colocados entre () en la forma ( atributo <regla de coincidencia> valor ) Ej. (cn=Daniel Farias) Las reglas pueden incluir (=, =~, >=, <=) * puede ser usado como wildcard dentro de un valor. Se pueden utilizar operadores booleanos: (&, |, !)
23
Ejemplo de Búsqueda # ldapsearch -LLL -v -x -h xxx.xxx.xxx.xxx -b dc=k-maleon,dc=cafelug, dc=org,dc=ar'(&(|(uid=d*)(uid=p*))(objectClass=inetOrgPerson))' cn mail uidNumber Resultado filter: (&(|(uid=d*)(uid=p*))(objectClass=inetOrgPerson)) requesting: cn mail uidNumber dn: uid=pablom,ou=People,dc=k-maleon,dc=cafelug,dc=org,dc=ar uidNumber: 1000 mail: cn: Pablo Medrano dn: uid=danielp,ou=People,dc=k-maleon,dc=cafelug,dc=org,dc=ar uidNumber: 1002 cn: Daniel Perez mail: dn: uid=danielf,ou=People,dc=k-maleon,dc=cafelug,dc=org,dc=ar uidNumber: 1003 cn: Daniel Farias mail:
24
Replicación Se configura en el archivo slapd.conf Master Slaves
# Directivas para replicación replogfile /usr/local/var/openldap/slapd.replog replica host=slave1.cafelug.org.ar:389 binddn="cn=Replicator,dc=cafelug,dc=org,dc=ar bindmethod=simple credentials=secret replica host=slave2. cafelug.org.ar:636 binddn=" cn=Replicator,dc=cafelug,dc=org,dc=ar Slaves Crear la entrada updatedn cn=Replicator,dc=cafelug,dc=org,dc=ar en cada uno de los Slaves
25
Seguridad ACLs Se configura en el archivo slapd.conf
access to attr=userPassword by self write by anonymous auth by * none Acceso SSL (Debe disponer de un certificado) TLSCertificateFile /etc/openldap/ldap.cafelug.org.ar.cer TLSCertificateKeyFile /etc/openldap/ldap.cafelug.org.ar.key Modificar el init /usr/libexec/slapd -h 'ldap://ldap.cafelug.org.ar/ ldaps://ldap.cafelug.org.ar/' \ -l LOCAL4 -u ldap -g ldap
26
Migracion Mail Aliases (/etc/aliases) File System Table (/etc/fstab)
Group Information (/etc/group) Hosts (/etc/hosts) Network Table (/etc/networks) User Information (/etc/passwd) Protocols (/etc/protocols) RPC Information (/etc/rpc) Services Information (/etc/services)
27
Aplicaciones
28
Browsers/Editores GQ
29
Browsers/Editores - Java
30
Browsers/Editores - Java
31
Agendas de contactos Evolution Oulook 9x,2K.. Netscape ...?
Presentaciones similares
© 2024 SlidePlayer.es Inc.
All rights reserved.