Issuu on Google+

Instalación  y  configuración  de  un  servidor  Open  LDAP     Como  hemos  dicho  en  clase,  el  servicio  de  directorio  Open  LDAP  por  sí  mismo  tan   solo  tiene  la  funcionalidad  de  autenticación  de  usuarios,  por  lo  que  si  realmente  lo   que  se  quiere  es  compartir  recursos  tras  la  autenticación  ,  se  debería  conjunto  con   un  paquete  de  distribución  de  datos  tipo  NFS  o  SAMBA   El  primer  paso  que  hay  que  realizar  para  la  instalación  del  paquete  Open  Ldap  es   introducir  el  comando   Apt-­get  install  slapd  ldap-­utils   Una  vez  instalado  tendremos  que  iniciar  el  servicio   Service  slapd  start  |  stop  |  restart   Una  vez  instalado  se  deberá  configurar  la  parte  Backend  del  servicio.  Para  ello,  lo   primero  que  hay  que  hacer  es  cargar  los  ficheros  necesarios  dentro  de  la  carpeta   que  se  ha  creado  tras  la  instalación,  introduciendo  el  código   ~$  sudo  ldapadd  -­Y  EXTERNAL  -­H  ldapi:///  -­f  /etc/ldap/schema/cosine.ldif   ~$  sudo  ldapadd  -­Y  EXTERNAL  -­H  ldapi:///  -­f  /etc/ldap/schema/nis.ldif   ~$  sudo  ldapadd  -­Y  EXTERNAL  -­H  ldapi:///  -­f  /etc/ldap/schema/inetorgperson.ldif   Una  vez  adjuntados  los  ficheros  .ldif  al  directorio,  lo  que  hay  que  hacer  es  crear  el   .ldif  de  configuración  para  la  carga  dinámica  de  los  módulos  en  el  backend  y  la  base   de  datos  para  el  directorio.  Se  puede  obtener  una  copia  de  este  fichero  para  más   tarde  modificarla  introduciendo  el  comando:   Wget  dirección_url   El  archivo  descargado  tendrá  que  ubicarse  en  la  carpeta  donde  antes  hemos   cargado  los  ficheros  y  deberá  ser  modificado  con  los  datos  del  dominio  que   queramos.  El  aspecto  que  tendrá  sería  este:   #  Load  dynamic  backend  modules   dn:  cn=module,cn=config   objectClass:  olcModuleList   cn:  module   olcModulepath:  /usr/lib/ldap   olcModuleload:  back_hdb     #  Database  settings   dn:  olcDatabase=hdb,cn=config   objectClass:  olcDatabaseConfig   objectClass:  olcHdbConfig   olcDatabase:  {1}hdb   olcSuffix:  dc=ejemplo,dc=local   olcDbDirectory:  /var/lib/ldap   olcRootDN:  cn=administrador,dc=ejemplo,dc=local   olcRootPW:  mypassword   olcDbConfig:  set_cachesize  0  2097152  0  


olcDbConfig:  set_lk_max_objects  1500   olcDbConfig:  set_lk_max_locks  1500   olcDbConfig:  set_lk_max_lockers  1500   olcDbIndex:  objectClass  eq   olcLastMod:  TRUE   olcDbCheckpoint:  512  30   olcAccess:  to  attrs=userPassword  by  dn="cn=administrador,dc=ejemplo,dc=local"  write  by  anonymous  auth  by   self  write  by  *  none   olcAccess:  to  attrs=shadowLastChange  by  self  write  by  *  read   olcAccess:  to  dn.base=""  by  *  read   olcAccess:  to  *  by  dn="cn=administrador,dc=ejemplo,dc=local"  write  by  *  read    

Una  vez  creado,  habrá  que  cargarlo  en  el  directorio  del  mismo  modo  que  se  hizo   antes:     ~$  sudo  ldapadd  -­Y  EXTERNAL  -­H  ldapi:///  -­f  /etc/ldap/schema/ej_backend.ldif   Una   vez   configurado   quedaría   introducir   los   datos   de   los   usuarios   y   las   organizaciones  que  formarán  parte  de  nuestro  dominio,  cargando  el  archivo  de  la   misma  manera  que  anteriormente  con  el  nombre  ej_frontend   #creamos  el  objeto  del  nive  superior  del  dominio   dn:  dc=ejemplo  dc=com   objetcClass:  top   objetcClass:  dcObject   objetcClass:  organization   o:  Ejemplo  de  organización   dc:  ejemplo   description  LDAP  Ejemplo     #Usuario  administrador   dn:  cn=administrador  dc=ejemplo  dc=com   objetcClass:  simpleSecurityObject   objetcClass:  dcObject   objetcClass:  organizacionalRole   cn:  Admin   description:  LDAP  Admin   userPassword:  bypass     #Unidad  Organizacional  Usuarios   dn:  uo:  Usuarios,  dc=ejemplo  dc=com   objetcClass:  organizacionalUnit   ou:  Usuarios     #Usuario  Profesor  Prueba   dn:  uid:  Profesor,  ou:  Usuarios,  dc=ejemplo  dc=com   objetcClass:  inetOrgPerson   objetcClass:  posixAccount   objetcClass:  shadowAccount   uid:  Profesor   sn:  Prueba   give  name:  Profesor   cn:  Profesor  Prueba   displayName:  Profesor  Prueba   uidNumber:10   guidNumer:100   userPassword:  Prueba   gecos:  Pruefesor  Prueba   loginShell:  /bin/shell   homeDirectory:  /home/Profesor   shadowExpire:  -­1   shadowFlag:  0   shadowWarning:  7   shadowMin:  8   shadowMax:  999999   shadowLastChange:  10877   mail:  Profesor@prueba.es   postalCode:  00000   l:  Madrid  


o:  Ejemplo   Mobile:  111111   homeTelephone:  111111   title:  Usuario  del  sistema   postalAddress:   initials:  XX  

   

Cuando   ya   tenemos   todo   configurado,   hay   que   incluir   los   clientes   que   se   van   a   conectar   a   nuestro   Open   Ldap   en   el   archivo   de   hosts   situado   en   /etc/ldap/ldap.conf   donde   habrá   que   definir   su   nombre,   IP,   raíz,   acceso   común,   acceso  con  privilegios  y  autenticación.  Un  ejemplo  sería  el  siguiente:   host  127.0.0.1   base  dc=ejemplo,dc=com   binddn  cn=user,dc=ejemplo,dc=com  bindpw  claveacceso   ootbinddn  cn=root,dc=ejemplo,dc=com   Port  636  

#  conexiones  SSL    

ssl  yes  TLS_CACERT  /etc/tls/CA.cert.pem     Para   la   administración   y   mantenimiento   del   servidor,   además   de   la   inclusión   directa   de   elementos   el   los   archivos   de   configuración   .ldif   comentados   anteriormente,   también   tenemos   los   comandos   ldapmodify,   ldapadd,   ldapsearch   para  modificar  con  contenido  de  la  base  de  nuestro  directorio.   Como   herramientas   gráficas   (siempre   que   hayamos   montado   un   entorno   gráfico   con   Xorg   p.e)   encontramos   numerosos   paquetes   para   la   gestión   del   servidor   como   por  ejemplo:   • • • • • •      

LAT   LUMA   phpLDAPadmin   LDAP-­‐account-­‐manager   Gosa   Webmin  


ghgyh