Скачать презентацию Integración de servicios con LDAP Universidad de Navarra Скачать презентацию Integración de servicios con LDAP Universidad de Navarra

11c57998aefaa854d4dc0433f13e778a.ppt

  • Количество слайдов: 24

Integración de servicios con LDAP Universidad de Navarra Centro de Tecnología Informática Ignacio Coupeau Integración de servicios con LDAP Universidad de Navarra Centro de Tecnología Informática Ignacio Coupeau Borrás 011023. 01

Integración de servicios con LDAP · · · · Evolución histórica de nuestra instalación Integración de servicios con LDAP · · · · Evolución histórica de nuestra instalación Objetivos finales Servicios integrados con el LDAP en la actualidad Descripción del sistema Estructura y configuración El cambio a Open. Ldap v 2. x Seguridad en LDAP Experiencias CTI

Objetivos finales · Centralización/coordinación - Repositorio de perfiles de usuario para el acceso a Objetivos finales · Centralización/coordinación - Repositorio de perfiles de usuario para el acceso a distintos servicios/sistemas - Autentificación/autorización para el acceso a recursos CTI

Servicios integrados con el LDAP · · · Inicio de sesión NT (perfiles, policies, Servicios integrados con el LDAP · · · Inicio de sesión NT (perfiles, policies, etc. ). Samba 2. 2. 2 Acceso a recursos compartidos SMB (Samba): - impresoras: sistema de cuotas; faxserver - discos (shares) Autentificación y accounting de usuarios de correo (POP, IMAP y SMTP) y servicios (TELNET, WEB, FTP, SSH, etc. ) en máquinas unix: pam y nsswitch · · · Libro de direcciones (y routing/addressing del correo smtp [RFC 822]) Validación para Acceso Remoto (Radius) Acceso a espacios Web restringidos mod_auth_ldap Validación para acceso a Internet en los proxies (Squid-ldap_aut) Almacenamiento de certificados digitales para firma electrónica (X 509 v 3) [RFC 2377] Calendario: Netscape vs Steltor. CTI

Servicios integrados con el LDAP CTI Servicios integrados con el LDAP CTI

El cambio a Open. Ldap v 2. x · · · · Open Source El cambio a Open. Ldap v 2. x · · · · Open Source code (Netscape, i. Planet, . . . ) con muy buen soporte en listas y en proyectos relacionados; cambio de protocolo; de LDAPv 2 a LDAPv 3 [] esquema de directorio distribuido; soporte de referrals [RFC 3088] definición de clases y atributos con sintáxis según Attribute Syntax Definitions según [RFC 2252] ldap seguro: protección de datos (TLS y SSL) [RFC 2830] soporte de backends DBBerkeley 3. x y gdbm, y threads POSIX. posibilidad de cambios menos traumáticos en la estructura, organización y distribución de las bases de datos. diacríticos CTI

Descripción del sistema · 4 servidores linux RH 6. 2, kernel 2. 4. x; Descripción del sistema · 4 servidores linux RH 6. 2, kernel 2. 4. x; Intel 2 x 450; 1 sparc · software - Open. Ldap 2. x - Open. SSL 0. 9 x - ldbm backend: Berkeley DB 3. x y gdbm · o=, dc=unav, dc=es : 20. 815 usuarios, 2 LDAP · samba: 2 LDAP, 10 PDC linux; 450 NT 4. 0 -SP 3+; raid de discos; 26. 844 usuarios; cuota de impresión y discos, acceso a las aulas/equipos públicos. · gestión centralizada vía web CTI

Estructura CTI Estructura CTI

Configuración: Schemas, password, TLS # include include /usr/local/etc 2/openldap_2/etc/openldap/schema/core. schema /usr/local/etc 2/openldap_2/etc/openldap/schema/cosine. schema /usr/local/etc Configuración: Schemas, password, TLS # include include /usr/local/etc 2/openldap_2/etc/openldap/schema/core. schema /usr/local/etc 2/openldap_2/etc/openldap/schema/cosine. schema /usr/local/etc 2/openldap_2/etc/openldap/schema/nis. schema /usr/local/etc 2/openldap_2/etc/openldap/schema/unav. schema /usr/local/etc 2/openldap_2/etc/openldap/schema/samba. schema # Define global ACLs to disable default read access # before ldbm’s ACL # Do not enable referrals until AFTER you have a working directory # service AND an understanding of referrals. #referral ldap: //arcos. cti. unav. es pidfile argsfile /usr/local/etc 2/openldap_2/var/slapd. pid /usr/local/etc 2/openldap_2/var/slapd. args #The to use for user. Password generation. One #of {SSHA}, {SMD 5}, {CRYPT}, #KERBEROS}, {SASL}, and {UNIX}. The default is {SSHA}. password-hash {CRYPT} #Certificados TLSCertificate. File TLSCertificate. Key. File TLSCACertificate. File /usr/local/etc 2/openldap_2/etc/openldap/ssl/arcos-cert. pem /usr/local/etc 2/openldap_2/etc/openldap/ssl/arcos-key. pem /usr/local/etc 2/openldap_2/etc/openldap/ssl/CAcerts # ldbm database definitions comes after. . . CTI

Configuración: TLS CAcerts (Chain: CA concatenados) -----BEGIN CERTIFICATE----MIIDmj. CCAw. Og. Aw. IBAg. IBADANBgkqhki. G Configuración: TLS CAcerts (Chain: CA concatenados) -----BEGIN CERTIFICATE----MIIDmj. CCAw. Og. Aw. IBAg. IBADANBgkqhki. G 9 w 0 BAQQFADCBj. . . OAx+35 dm. Vo 9 gu/els. Cqu. Zc. To. V 7 g+Oz. Tbut. AE+ GXlz. B 8 l. E/y. Kz. Ok 9 l 3 Bk= -----END CERTIFICATE-----BEGIN CERTIFICATE----MIIDqz. CCAx. Sg. Aw. IBAg. IBAj. ANBgkqhki. G 9 w 0 BAQQFADCBj EDAOBg. NVBAg. TB 05 hdm. Fycm. Ex. ETAPBg. NVBAc. TCFBhb. XBsb bml 2 ZXJza. WRh. ZCBk. ZSBOYXZhcn. Jh. MQww. Cg. YDVQQLEw. NDV. . . Iikjn. IYc. Pa. Um. FGZTyb. HJ 09 zg. O 5 zx. Wrn. LDl. MS 1 u. AVqaz. NA f. Y 3+g. Yo 6 vv. QE 1 pr. JNFm 4 Zqo. FHAv 2 s 61 AA+5 RVa+84 A== -----END CERTIFICATE----- arcos-key. pem -----BEGIN RSA PRIVATE KEY----MIICXAIBAAKBg. Qjejejje. L 9 H 9 Ey 9 v. Tcj m. HEo. ANQj. VAESc 1 v+7 c 1 H 2 s. Gw. UURHVdqc. . . x. F/r. VGPVcnflmatarile. Yg 0 CQFu+/i. IA b 4 u. TRv 4 dh. Gh. Hw 4 GKg 431 M 2 Hj 27 tn. CGHi= -----END RSA PRIVATE KEY----- arcos-cert. pem -----BEGIN CERTIFICATE----MIIEKDCCA 5 Gg. Aw. IBAg. ICAngw. DQYJKo. ZIhvc. NAQEEBQAwg. Z. . Ma+5+Da. A 3 l 9 Gi 2 lw. HVNUMb. AHb. W+RGHHRRNJHJHKJKJ 9908 t 5 axwx 531 Ii. E 2 ec. B 1 f 0 Cgh. U 673 a 81 t. RFSTYSGSt. IKJ 0 Ml 5 c. S 6 de 24 t. Q/1 kg. WEk -----END CERTIFICATE----- CTI

Configuración: ACL (no ACIs) # UNAV SMB #################################### # database ldbm suffix Configuración: ACL (no ACIs) # UNAV SMB #################################### # database ldbm suffix "o=smb, dc=unav, dc=es" rootdn "cn=diradmin, dc=unav, dc=es" rootpw directory /usr/local/etc 2/openldap_2/unav-smb replogfile /usr/tmp/slurpd. replog replica host=saruman. cti. unav. es binddn="cn=replicador, dc=unav, dc=es" bindmethod=simple credentials= # index ntuid, grouprid, rid eq index cn, sn, uid, mail sub, eq index samba. Member eq, sub index object. Class eq index default sub # access to dn=". *, o=smb, dc=unav, dc=es" by dn="cn=replicator, dc=unav, dc=es" write by self write by * read access to dn="o=smb, dc=unav, dc=es" by dn="cn=replicator, dc=unav, dc=es" write by self write by * read CTI

Configuración: slapd. conf (parcial) #################################### # UNAV PEOPLE-ORGANIZATION #################################### database ldbm suffix Configuración: slapd. conf (parcial) #################################### # UNAV PEOPLE-ORGANIZATION #################################### database ldbm suffix "o=Universidad de Navarra, c=ES" rootdn "cn=dirman, o=Universidad de Navarra, c=ES" rootpw {crypt}mejor_crypted directory /usr/local/etc 2/openldap_2/unav-old # # referral index. . . # #################################### # UNAV PEOPLE #################################### # database ldbm suffix "dc=unav, dc=es" rootdn "cn=dirman, dc=unav, dc=es" rootpw {crypt}que_plain_text directory /usr/local/etc 2/openldap_2/unav-person # replogfile /usr/tmp/slurpd. replog replica host=arcos. cti. unav. es: 8011 binddn="cn=replicator, dc=unav, dc=es" bindmethod=simple credentials={crypt}mejor_crypted # CTI

Configuración: ldif tree unav-ldif. tree dn: dc=unav, dc=es dc: unav object. Class: dc. Object Configuración: ldif tree unav-ldif. tree dn: dc=unav, dc=es dc: unav object. Class: dc. Object object. Class: organization o: Universidad de Navarra dn: o=people, dc=unav, dc=es o: people object. Class: organization unav-ldif-organization dn: o=Universidad de Navarra, c=ES o: Universidad de Navarra objectclass: organization object. Class: referral object. Class: extensible. Object ref: ldap: //arcos. cti. unav. es: 8001/o=people, dc=unav, dc=es dn: o=smb, dc=unav, dc=es object. Class: referral object. Class: extensible. Object o: smb ref: ldap: //arcos. cti. unav. es: 8002/o=smb, dc=unav, dc=es CTI

Configuración: 1 ldif y n object. Class objectclass ( 1. 3. 6. 1. 4. Configuración: 1 ldif y n object. Class objectclass ( 1. 3. 6. 1. 4. 1. 9183. 2. 2. 1 dn: uid=099147, o=smb, dc=unav, dc=es NAME 'samba. Account' object. Class: samba. Account DESC 'Provisional samba. Account' object. Class: posix. Account SUP top uid: 037148 STRUCTURAL ntuid: 037148 MUST ( Object. Class $ uid. Number $ rid: 3 ec ntuid $ rid ) uid. Number: 17603 MAY ( gid. Number $ grouprid $ ou $ cn $ gecos: Ignacio Coupeau description $ cn: Ignacio Coupeau lm. Password $ nt. Password $ home. Directory: /usr/local/etc 3/disco 2/037148 pwd. Last. Set $ pwd. Can. Change $ login. Shell: /bin/bash pwd. Must. Change $ lm. Password: 58 AE 48 B 2 A 256 C 127 A 17527 F 32 FFC 1 D 17 logon. Time $ logoff. Time $ nt. Password: 27 F 32 FFC 1 E 250389860 B 1658 AE 48 B 2 A 2 kickoff. Time $ pwd. Last. Set: 3 BCC 0486 smb. Home $ home. Drive $ script $ acct. Flags: [U ] profile $ acct. Flags ) ) profile: \%Lprofilesprn 1 home. Drive: U: smb. Home: \saco 5disco 2 pwd. Can. Change: 0000 objectclass ( 1. 3. 6. 1. 1. 1. 2. 0 NAME 'posix. Account' pwd. Must. Change: FFFF SUP top AUXILIARY gid. Number: 203 DESC 'Account with POSIX attributes' grouprid: 207 MUST ( cn $ uid. Number $ gid. Number $ home. Directory ) MAY ( user. Password $ login. Shell $ gecos $ description ) ) CTI

Evolución: 1997/1998 · · septiembre 1997 Inicio de nuestra experiencia con ldapv 2 con Evolución: 1997/1998 · · septiembre 1997 Inicio de nuestra experiencia con ldapv 2 con el servidor ldap de la Univ. de Michigan. La idea inicial era la recogida en Slapd Administration Guide: un servicio de directorio y una pasarela para X 500: 100% puro directorio electrónico. Se habló por primera vez del LDAP en las JT de 1997, en Zaragoza (cfr. Javier Masa) CTI

Evolución: 1998/1999 · · · De Umich a Open. Ldap; ldap+samba; certificados x 509 Evolución: 1998/1999 · · · De Umich a Open. Ldap; ldap+samba; certificados x 509 y Netscape calendar server diciembre de 1999: Sendmail+ldap CTI

Evolución: 1999/2000 · · · samba+aprint (sistema de impresión con cuotas) autentificación proxy-cache - Evolución: 1999/2000 · · · samba+aprint (sistema de impresión con cuotas) autentificación proxy-cache - directa - indirecta vía samba (pam-squid samba|ldap) autentificación espacios web CTI

Evolución: 2000/2001 · · · desarrollo de los servicios de accounting basados en pam Evolución: 2000/2001 · · · desarrollo de los servicios de accounting basados en pam y nsswitch; febrero de 2001: primeros contactos con el Open. Ldap v 2. 0 a gateway oracle-ldap; radius de telefónica radiusddll agosto/septiembre de 2001 migramos a LDAPv 3 y cambiamos el esquema y distribución de las bases CTI

Evolución: 2001/2002 · · Integración con DNS [RFC 1034] Conexiones seguras ldaps y slurpds Evolución: 2001/2002 · · Integración con DNS [RFC 1034] Conexiones seguras ldaps y slurpds de forma "nativa" sin wrappers (stunnel, etc). Los acentos Posibilidad de utilización de diversos métodos de autentificación en LDAP para centralizar/coordinar diversos mecanismos/api de (pam, MIT Kerberos, SASL/GSSAPI, etc. ). CTI

Seguridad en LDAP · Seguridad: Autentificación, integridad, confidencialidad y autorización. El protocolo no contempla Seguridad en LDAP · Seguridad: Autentificación, integridad, confidencialidad y autorización. El protocolo no contempla el nivel de autorización que debe desarrollarse con ACL y similares. · El LDAP v 2 define tres tipos de autentificacion: anonymous, simple (clear-text password), y Kerberos V 4. · The LDAP v 3 soporta autentificacion: anonymous, simple y SASL. - - mecanismos sasl [RFC 2222] : - GSSAPI (MIT Kerberos 5 or Heimdal Kerberos 5) - EXTERNAL (requiere TLS: X 509 [ietf-draft]) - DIGEST-MD 5 [RFC 2831] - ANONYMOUS [RFC 2245] LDAPv 3 -HOWTO IBM Red. Books pp. 42 -49 CTI

Autentificación. . . autorización en LDAP The Simple Authentication and Security Layer (SASL) is Autentificación. . . autorización en LDAP The Simple Authentication and Security Layer (SASL) is a method for adding authentication support to connection-based protocols. To use this specification, a protocol includes a command for identifying and authenticating a user to a server and for optionally negotiating a security layer for subsequent protocol interactions. CTI

Experiencias (1) · · El GB: lo mejor Log y debug slapd -f slapd-4. Experiencias (1) · · El GB: lo mejor Log y debug slapd -f slapd-4. conf -H "ldap: //arcos/ ldaps: //arcos. cti. unav. es/" -l LOCAL 4 syslog. conf /var/log/messages · · Usuarios administrativos De la Redundancia: si pero. . . ¿ 24 x 7? slapd-1. conf -d 16 -o -r /tmp/slurpd. replog · Saltos entre jerarquías: referrals (subordinate, superior) y ciclos: -M[M] -C · Enable manage DSA IT control Automatically chase referrals. ACL: dónde y como CTI

Experiencias (2) · · exportar/importar/reindexar slapcat slapadd vs ldapadd slapindex si todo va mal: Experiencias (2) · · exportar/importar/reindexar slapcat slapadd vs ldapadd slapindex si todo va mal: C Utilidades para mantenimiento y desarrollo: perl+módulos Net. LDAPapi y C+libldap vs wrappers No olvide sus aplicaciones: bases, sintáxis de comandos: -x, –LL, -H, ldif, der. . . (user. Certificate; binary: < file: ///) Del ldappasswdy del bind. . /bin/ldappasswd -D "cn=Ejemplo, o=people, dc=unav, dc=es" -w pepe -H "ldap: //ldap/" -s pepe 01 CTI

Experiencias (3) · Indices: qué, cómo, cuándo Oct 23 14: 46 trancos slapd[2031]: conn=25926 Experiencias (3) · Indices: qué, cómo, cuándo Oct 23 14: 46 trancos slapd[2031]: conn=25926 op=1 SRCH base="o=smb, dc=unav, dc=es" scope=1 filter="(&(uid=D 8$)(object. Class=samba. Account))" Oct 23 14: 50: 39 boromir slapd[7877]: conn=9426 op=1 SRCH base="o=people, dc=unav, dc=es" scope=2 filter="(cn=*estibaliz*)" · Base 64 perl <<\/a>") //-->