====== OpenLDAP < 2.3 ====== ===== Descripción ===== Servidor de Directorio, autenticacion, o Single Sign On %%**%% todo lo aqui consignado sirve para openldap < 2.3 ..  para posteriores cambia radicalmente la estructura de archivos ===== Prerequistos ===== * Servidor LDAP con un cliente colgado. * WWW: Servidor Web Apache (para el administrador con phpldapadmin) Valores Agregados * phpldapadmin y gq: Para administracion  ===== Procedimiento ===== ===== A. Instalación básica  ===== Instalacion de los rpms de ldap y las aplicaciones para la autenticación de usuarios, básicamente son (creo que tambien hay unas librerias, peroahi se verán si hay dependencias que faltan): > \tnss_ldap-\\ > openldap-servers-\\ > openldap-clients-\\ > openldap-migration-\\ > openldap-\\ > pam_ldap-\\ En redhat no existe el pam_ldap, asi que toca copiarlo de otro paquete como el de Mandrake (en /usr/share/openldap/).\\ \\ En Debian estan los paquetes muy parecidos, con excepcion de slapd.\\ \\ Recuerde activar el servicio para cada vez que suba el equipo.  ===== B. Configuración ===== ==== 1. Configuración del Servidor Slapd ==== Editar el archivo de configuracion de OpenLDAP /etc/openldap/slapd.conf **a) Variables Globales** Se especifica la jerarquia inicial (raiz) del directorio, y se define cual es el superusuario y la base de datos a utilizar, en este caso "Manager".\\ La utilización de nombres de dominio como skina.com.co es una convención, no es necesario que sea un dominio calificado (FQ0DN). Definición de la raiz del arbol > \tsuffix\t\t"dc=skinatech,dc=com"\\ Linea opcional (no se usa) > \tsuffix\t\t"o=SkinaTech Ltda,c=CO"\\ Definición del super usuario > \trootdn\t\t"cn=Manager,dc=skinatech,dc=com"\\ **b) Definicion del password del administrador.** Se utiliza el comando slappasswd para generar el password encriptado, en este caso se utilizó de la siguiente manera: > \t "slappasswd -s "\\ La respuesta por defecto utiliza el algoritmo SHA y debe ser copiada exacta (incluyendo {SSHA} frente a la directiva rootpw. > \trootpw\t\t{SSHA}zAss5kTtaeoRpEVeMXIAPZ9lArkMBQ9g\\ **c) Definición de listas de control de acceso (ACLs)**\\ \\ Se deben definir como mí­nimo las siguientes Reglas con el fin de proteger los passwords de los usuarios y crear un usuario que no sea el manager pero que pueda hacer cosas sobre el arbol > \taccess to attrs=userPassword\\ > by self write\\ > by anonymous auth\\ > by dn="cn=admin,dc=skinatech,dc=com" write\\ > by 10_consejos_para_la_resolucion_de_problemas.html acta_de_constitucion_interna_del_proyecto.html active_directory.html administrar_servidores_con_ipmi.html admin_rpms_con_yum.html albasoftware_libre_de_gestion_educativa.html alta_disponibilidad_de_conexion_a_internet.html ansible_administracion_centralizada_de_servidores.html anti_virusanti_spam_y_hardening_de_correo2024.html anti_virusanti_spam_y_hardening_de_correo.html apache2_mod_security.html apacheservidor_de_www.html aplicativos_usando_ldap.html autoconf.html aws_amazon_ec2.html aws_amazon_lambda.html bacula_backup2024.html bacula_backup.html bandwidthd.html bind_dns.html bonding.html cacti.html cambio_contrasena_ldap_ad_por_web.html cambios_recientes.html caracteres_octal_hexa_unicode_html.html centos_sobre_hyperv.html cfengine.html chumne_administrador_de_licencias.html ciclo_de_pruebas_orfeo.html cluster_con_haproxy.html cluster_ldap.html colaborador_del_mes.html comision_de_proyectos_obsoleto.html como_desplegar_remoto_con_un_tunel_ssh.html como_hacer_manual_de_funciones.html como_instalar_spoon.html como_limpiar_cache_dns.html como_publicar_docs.html como_reportar_spam.html como_se_implementa_orfeo_sgd.html compensatorios_obsoleto.html condiciones_generales_de_contrato_de_soporte_v14.html configuracion_de_tomcat_como_modulo_de_apache.html configuracion_de_x_lite_cliente_sip.html configuracion_pidgin.html configuracion_planta_telefonica_voip.html configurar_redes.html consola_serial.html consul_open_participation_ruby.html controlador_de_dominio_secundario_samba4.html convertir_pdf_a_a_pdf_plano.html copiar_disco_por_la_red.html cpanel.html crack_de_wep_con_aircrack_ng.html creacion_servidor_codema.html creacion_usuario_postgres_solo_para_consultas.html crear_instalador_de_windows_facil_con_nsis.html crear_instancias_de_orfeong.html crear_paquetes_deb_y_rpm.html crear_repositorios_de_paquetes_deb_y_rpm.html cuestionario_de_severidad.html cups.html cygwn.html dd_wrt.html declaracion_de_trabajo_sow.html deploy_instancia_de_orfeo_express_5x_en_amazon.html deploy_instancia_de_orfeo_express_6x_en_amazon.html descargar_pagina_web_recursivo.html deshabilite_ipv6.html dhcp_multiples_vlans.html dhcp_server.html dhcp_y_dns_dinamico.html directrices_de_manejo_de_tiquetes_en_mesa_de_ayuda_glpi.html docker.html documentacion_de_codigo.html documentos_de_implementacion_de_orfeo_5x.html documentos_estandar_control_proyectos_desarrollo.html dotproject.html drbd.html drp_plan_de_recuperacion_de_desastres.html dsl_personalizacion.html egroupware_ex_phpgw.html ejabberd.html elastix.html enigmail.html enlightenment.html entidad_de_certificacion_a_mano.html entidad_de_certificacion.html entidad_de_certificacion_openca.html envio_y_recepcion_de_fax_en_asterisk.html errores_modelos.html esquema_backup_ikatta.html estandar_bitacora.html estandar_comunicaciones_por_correo_electronico.html estandar_de_archivos_y_directorios.html estandar_de_interfaz_para_proyectos_de_desarrollo.html estandar_de_manejo_de_cronograma.html estandar_de_revision_de_documentos.html estandar_de_soporte_y_mantenimiento_de_skinatech.html estandares_de_comunicacion_de_soporte.html estandar_estacion_de_trabajo_gnu_linux.html estandar_estacion_de_trabajo_ms_windows.html estandar_firma_skina.html estandar_para_interfaz_de_proyectos_de_desarrollo.html estandar_para_la_creacion_de_bases_de_dato.html example_howto.html exim_mta.html extraccion_de_texto_de_documentos.html fail2ban.html falla_laboral.html fax_server.html fink.html firewalld.html firewall_skina_howto.html flujo_de_trabajo_de_proyecto.html flujo_de_trabajo_de_proyecto_trello.html formatos_de_documentos_estandares_de_skinatech.html freenas.html freenx.html freetds.html ftpproxy.html generar_diccionarios_de_datos_en_workbench.html getfacl_y_setfacl.html getmenu2.html gforge.html git_flow.html git.html gitlab.html glassfish.html glpi10.html glpi95.html gnokii.html gnupg_gpg.html google_cloud_platform.html graylog_consolidador_de_bitacoras.html grub.html hacer_modelo_y_o_backup.html hardening_de_linux.html hearbeat_cluster.html hipergate.html hispaniola_firewall_ikatta.html horario_de_trabajo.html how_to_enviar_html_imagenes_con_php5.html howto.html howto_mon.html howto_php_nuke.html huawei_e220.html ibm_aix_snmp_setup_for_nagios.html ibm_db2.html ids_logchecklogwatchtripwireaideetc.html ilo2_e_ilo3.html implementacion_de_oauth2_google_en_orfeo_ng.html implementacion_de_oauth2_microsoft_en_orfeo_ng.html implementacion_glpi.html indicadores_de_gestion.html informes_semanales.html informix_apache_php.html infraestructura_de_operacion.html instalacion_asterisk_en_centos_53.html instalacion_asterisk_en_.html instalacion_de_modelo_de_servidor_con_minilinux.html instalacion_de_modelo_de_servidor.html instalacion_de_pqrs_en_orfeo_sgd.html instalacion_ldap_smb_34_en_debian_lenny.html instalacion_minima_appliance.html instalacion_mi­nima.html instalacion_r_server_&_r_shiny.html instalacion_r_server_&_r_shiny_server.html instalacion_splunk.html instalacion_y_configuracion_apachephp_con_db2_y_soporte_con_odbc.html instalacion_y_configuracion_de_sphinx_para_orfeo.html instalacion_y_configuracion_gatekeeper_h323.html instalacion_y_configuracion_lotus_domino.html instalacion_zimbra.html instalar_cancelador_de_eco_hpec_en_asterisk.html instructivo_de_demos_de_skinatech.html instructivo_formato_de_diagnostico.html ipcop_firewall.html ipsec.html ipsec_zeroshell.html iptables.html iscsi.html ispconfig_v1.html ispconfig_v3.html iwatch_inotifywatch_notificar_eventos_en_carpetas.html jmeter.html joomla_cms.html kernel_compilar.html kuine_administracion_de_licencias.html kuine_generacion_de_licencias.html libchart.html licencia_por_calamidad_domestica.html linux_livecd.html lista_de_mejoras.html locale.html lvm.html lvs_linux_virtual_server.html mailman.html mailscanner.html manejo_de_certificados_integracion_pki.html manejo_de_firma_digital_en_php.html manejo_de_la_cuenta_de_correo_de_soporte.html manejo_de_mi_cuenta_de_correo_electronico.html manejo_de_recursos_egroupware_18.html mantis_bug_tracker.html manual_de_funciones_de_agente_de_soporte.html manual_de_funciones_de_consultor_de_tecnologia.html manual_de_telefonos.html manual_de_uso_asterisk.html manual_de_uso_fastrix.html manuales_de_funciones_area_administrativa.html manuales_de_funciones_area_tecnica.html maya_render_farm.html mdadm.html mejorar_rendimiento_libre_office.html metodologia_estandar_de_control_de_proyectos.html metodologia_estandar_de_control_de_proyectos_orfeo.html metodologia_para_desarrollo_de_software.html migracion_bacula_de_5_a_7.html migracion_orfeo_5_a_6.html migrando_samba3_a_samba4.html modelo_appliance.html modelo_de_procedimientos.html modelo_para_howtos.html modelo_para_propuesta.html monit.html montar_bucket_s3_amazon_y_oracle.html montar_orfeo_en_iis.html moodle.html ms_windows_en_linux_wine.html multi_factor_authentication_mfa.html multipath_conexion_con_san.html multiple_versiones_de_php.html multi_router_trafic_grapher_mrtg.html munin_alto_trafico.html munin.html mutliwan_openwrt.html mwan3_en_openwrt.html mysql_cluster_41.html mysql_ha.html mysql_mariadb.html mysql_proxy.html n2n_vpn.html nagios_30.html nagios_40.html nagios_bacula.html nagios_nrpe.html nagios_snmp.html netdata_monitor_tiempo_real.html network_load_balancing.html network_manager.html nextcloud.html nfs.html niveles_de_soporte.html no_conformidades.html novell_netware.html ntp_network_time_protocol.html nube_vs_servidores_locales.html oauth2.html objetivo_de_un_diagnostico_assestment.html ocr_en_linux.html ocs_inventory.html odbc.html office_365.html ofuscacion_de_codigo_yarchivo_de_autovalidacion_de_orfeo_50.html openfire.html openldap23.html openldap.html open_relay.html none\\ > \\ > access to 10_consejos_para_la_resolucion_de_problemas.html acta_de_constitucion_interna_del_proyecto.html active_directory.html administrar_servidores_con_ipmi.html admin_rpms_con_yum.html albasoftware_libre_de_gestion_educativa.html alta_disponibilidad_de_conexion_a_internet.html ansible_administracion_centralizada_de_servidores.html anti_virusanti_spam_y_hardening_de_correo2024.html anti_virusanti_spam_y_hardening_de_correo.html apache2_mod_security.html apacheservidor_de_www.html aplicativos_usando_ldap.html autoconf.html aws_amazon_ec2.html aws_amazon_lambda.html bacula_backup2024.html bacula_backup.html bandwidthd.html bind_dns.html bonding.html cacti.html cambio_contrasena_ldap_ad_por_web.html cambios_recientes.html caracteres_octal_hexa_unicode_html.html centos_sobre_hyperv.html cfengine.html chumne_administrador_de_licencias.html ciclo_de_pruebas_orfeo.html cluster_con_haproxy.html cluster_ldap.html colaborador_del_mes.html comision_de_proyectos_obsoleto.html como_desplegar_remoto_con_un_tunel_ssh.html como_hacer_manual_de_funciones.html como_instalar_spoon.html como_limpiar_cache_dns.html como_publicar_docs.html como_reportar_spam.html como_se_implementa_orfeo_sgd.html compensatorios_obsoleto.html condiciones_generales_de_contrato_de_soporte_v14.html configuracion_de_tomcat_como_modulo_de_apache.html configuracion_de_x_lite_cliente_sip.html configuracion_pidgin.html configuracion_planta_telefonica_voip.html configurar_redes.html consola_serial.html consul_open_participation_ruby.html controlador_de_dominio_secundario_samba4.html convertir_pdf_a_a_pdf_plano.html copiar_disco_por_la_red.html cpanel.html crack_de_wep_con_aircrack_ng.html creacion_servidor_codema.html creacion_usuario_postgres_solo_para_consultas.html crear_instalador_de_windows_facil_con_nsis.html crear_instancias_de_orfeong.html crear_paquetes_deb_y_rpm.html crear_repositorios_de_paquetes_deb_y_rpm.html cuestionario_de_severidad.html cups.html cygwn.html dd_wrt.html declaracion_de_trabajo_sow.html deploy_instancia_de_orfeo_express_5x_en_amazon.html deploy_instancia_de_orfeo_express_6x_en_amazon.html descargar_pagina_web_recursivo.html deshabilite_ipv6.html dhcp_multiples_vlans.html dhcp_server.html dhcp_y_dns_dinamico.html directrices_de_manejo_de_tiquetes_en_mesa_de_ayuda_glpi.html docker.html documentacion_de_codigo.html documentos_de_implementacion_de_orfeo_5x.html documentos_estandar_control_proyectos_desarrollo.html dotproject.html drbd.html drp_plan_de_recuperacion_de_desastres.html dsl_personalizacion.html egroupware_ex_phpgw.html ejabberd.html elastix.html enigmail.html enlightenment.html entidad_de_certificacion_a_mano.html entidad_de_certificacion.html entidad_de_certificacion_openca.html envio_y_recepcion_de_fax_en_asterisk.html errores_modelos.html esquema_backup_ikatta.html estandar_bitacora.html estandar_comunicaciones_por_correo_electronico.html estandar_de_archivos_y_directorios.html estandar_de_interfaz_para_proyectos_de_desarrollo.html estandar_de_manejo_de_cronograma.html estandar_de_revision_de_documentos.html estandar_de_soporte_y_mantenimiento_de_skinatech.html estandares_de_comunicacion_de_soporte.html estandar_estacion_de_trabajo_gnu_linux.html estandar_estacion_de_trabajo_ms_windows.html estandar_firma_skina.html estandar_para_interfaz_de_proyectos_de_desarrollo.html estandar_para_la_creacion_de_bases_de_dato.html example_howto.html exim_mta.html extraccion_de_texto_de_documentos.html fail2ban.html falla_laboral.html fax_server.html fink.html firewalld.html firewall_skina_howto.html flujo_de_trabajo_de_proyecto.html flujo_de_trabajo_de_proyecto_trello.html formatos_de_documentos_estandares_de_skinatech.html freenas.html freenx.html freetds.html ftpproxy.html generar_diccionarios_de_datos_en_workbench.html getfacl_y_setfacl.html getmenu2.html gforge.html git_flow.html git.html gitlab.html glassfish.html glpi10.html glpi95.html gnokii.html gnupg_gpg.html google_cloud_platform.html graylog_consolidador_de_bitacoras.html grub.html hacer_modelo_y_o_backup.html hardening_de_linux.html hearbeat_cluster.html hipergate.html hispaniola_firewall_ikatta.html horario_de_trabajo.html how_to_enviar_html_imagenes_con_php5.html howto.html howto_mon.html howto_php_nuke.html huawei_e220.html ibm_aix_snmp_setup_for_nagios.html ibm_db2.html ids_logchecklogwatchtripwireaideetc.html ilo2_e_ilo3.html implementacion_de_oauth2_google_en_orfeo_ng.html implementacion_de_oauth2_microsoft_en_orfeo_ng.html implementacion_glpi.html indicadores_de_gestion.html informes_semanales.html informix_apache_php.html infraestructura_de_operacion.html instalacion_asterisk_en_centos_53.html instalacion_asterisk_en_.html instalacion_de_modelo_de_servidor_con_minilinux.html instalacion_de_modelo_de_servidor.html instalacion_de_pqrs_en_orfeo_sgd.html instalacion_ldap_smb_34_en_debian_lenny.html instalacion_minima_appliance.html instalacion_mi­nima.html instalacion_r_server_&_r_shiny.html instalacion_r_server_&_r_shiny_server.html instalacion_splunk.html instalacion_y_configuracion_apachephp_con_db2_y_soporte_con_odbc.html instalacion_y_configuracion_de_sphinx_para_orfeo.html instalacion_y_configuracion_gatekeeper_h323.html instalacion_y_configuracion_lotus_domino.html instalacion_zimbra.html instalar_cancelador_de_eco_hpec_en_asterisk.html instructivo_de_demos_de_skinatech.html instructivo_formato_de_diagnostico.html ipcop_firewall.html ipsec.html ipsec_zeroshell.html iptables.html iscsi.html ispconfig_v1.html ispconfig_v3.html iwatch_inotifywatch_notificar_eventos_en_carpetas.html jmeter.html joomla_cms.html kernel_compilar.html kuine_administracion_de_licencias.html kuine_generacion_de_licencias.html libchart.html licencia_por_calamidad_domestica.html linux_livecd.html lista_de_mejoras.html locale.html lvm.html lvs_linux_virtual_server.html mailman.html mailscanner.html manejo_de_certificados_integracion_pki.html manejo_de_firma_digital_en_php.html manejo_de_la_cuenta_de_correo_de_soporte.html manejo_de_mi_cuenta_de_correo_electronico.html manejo_de_recursos_egroupware_18.html mantis_bug_tracker.html manual_de_funciones_de_agente_de_soporte.html manual_de_funciones_de_consultor_de_tecnologia.html manual_de_telefonos.html manual_de_uso_asterisk.html manual_de_uso_fastrix.html manuales_de_funciones_area_administrativa.html manuales_de_funciones_area_tecnica.html maya_render_farm.html mdadm.html mejorar_rendimiento_libre_office.html metodologia_estandar_de_control_de_proyectos.html metodologia_estandar_de_control_de_proyectos_orfeo.html metodologia_para_desarrollo_de_software.html migracion_bacula_de_5_a_7.html migracion_orfeo_5_a_6.html migrando_samba3_a_samba4.html modelo_appliance.html modelo_de_procedimientos.html modelo_para_howtos.html modelo_para_propuesta.html monit.html montar_bucket_s3_amazon_y_oracle.html montar_orfeo_en_iis.html moodle.html ms_windows_en_linux_wine.html multi_factor_authentication_mfa.html multipath_conexion_con_san.html multiple_versiones_de_php.html multi_router_trafic_grapher_mrtg.html munin_alto_trafico.html munin.html mutliwan_openwrt.html mwan3_en_openwrt.html mysql_cluster_41.html mysql_ha.html mysql_mariadb.html mysql_proxy.html n2n_vpn.html nagios_30.html nagios_40.html nagios_bacula.html nagios_nrpe.html nagios_snmp.html netdata_monitor_tiempo_real.html network_load_balancing.html network_manager.html nextcloud.html nfs.html niveles_de_soporte.html no_conformidades.html novell_netware.html ntp_network_time_protocol.html nube_vs_servidores_locales.html oauth2.html objetivo_de_un_diagnostico_assestment.html ocr_en_linux.html ocs_inventory.html odbc.html office_365.html ofuscacion_de_codigo_yarchivo_de_autovalidacion_de_orfeo_50.html openfire.html openldap23.html openldap.html open_relay.html\\ > by dn="cn=admin,dc=skinatech,dc=com" write\\ > by 10_consejos_para_la_resolucion_de_problemas.html acta_de_constitucion_interna_del_proyecto.html active_directory.html administrar_servidores_con_ipmi.html admin_rpms_con_yum.html albasoftware_libre_de_gestion_educativa.html alta_disponibilidad_de_conexion_a_internet.html ansible_administracion_centralizada_de_servidores.html anti_virusanti_spam_y_hardening_de_correo2024.html anti_virusanti_spam_y_hardening_de_correo.html apache2_mod_security.html apacheservidor_de_www.html aplicativos_usando_ldap.html autoconf.html aws_amazon_ec2.html aws_amazon_lambda.html bacula_backup2024.html bacula_backup.html bandwidthd.html bind_dns.html bonding.html cacti.html cambio_contrasena_ldap_ad_por_web.html cambios_recientes.html caracteres_octal_hexa_unicode_html.html centos_sobre_hyperv.html cfengine.html chumne_administrador_de_licencias.html ciclo_de_pruebas_orfeo.html cluster_con_haproxy.html cluster_ldap.html colaborador_del_mes.html comision_de_proyectos_obsoleto.html como_desplegar_remoto_con_un_tunel_ssh.html como_hacer_manual_de_funciones.html como_instalar_spoon.html como_limpiar_cache_dns.html como_publicar_docs.html como_reportar_spam.html como_se_implementa_orfeo_sgd.html compensatorios_obsoleto.html condiciones_generales_de_contrato_de_soporte_v14.html configuracion_de_tomcat_como_modulo_de_apache.html configuracion_de_x_lite_cliente_sip.html configuracion_pidgin.html configuracion_planta_telefonica_voip.html configurar_redes.html consola_serial.html consul_open_participation_ruby.html controlador_de_dominio_secundario_samba4.html convertir_pdf_a_a_pdf_plano.html copiar_disco_por_la_red.html cpanel.html crack_de_wep_con_aircrack_ng.html creacion_servidor_codema.html creacion_usuario_postgres_solo_para_consultas.html crear_instalador_de_windows_facil_con_nsis.html crear_instancias_de_orfeong.html crear_paquetes_deb_y_rpm.html crear_repositorios_de_paquetes_deb_y_rpm.html cuestionario_de_severidad.html cups.html cygwn.html dd_wrt.html declaracion_de_trabajo_sow.html deploy_instancia_de_orfeo_express_5x_en_amazon.html deploy_instancia_de_orfeo_express_6x_en_amazon.html descargar_pagina_web_recursivo.html deshabilite_ipv6.html dhcp_multiples_vlans.html dhcp_server.html dhcp_y_dns_dinamico.html directrices_de_manejo_de_tiquetes_en_mesa_de_ayuda_glpi.html docker.html documentacion_de_codigo.html documentos_de_implementacion_de_orfeo_5x.html documentos_estandar_control_proyectos_desarrollo.html dotproject.html drbd.html drp_plan_de_recuperacion_de_desastres.html dsl_personalizacion.html egroupware_ex_phpgw.html ejabberd.html elastix.html enigmail.html enlightenment.html entidad_de_certificacion_a_mano.html entidad_de_certificacion.html entidad_de_certificacion_openca.html envio_y_recepcion_de_fax_en_asterisk.html errores_modelos.html esquema_backup_ikatta.html estandar_bitacora.html estandar_comunicaciones_por_correo_electronico.html estandar_de_archivos_y_directorios.html estandar_de_interfaz_para_proyectos_de_desarrollo.html estandar_de_manejo_de_cronograma.html estandar_de_revision_de_documentos.html estandar_de_soporte_y_mantenimiento_de_skinatech.html estandares_de_comunicacion_de_soporte.html estandar_estacion_de_trabajo_gnu_linux.html estandar_estacion_de_trabajo_ms_windows.html estandar_firma_skina.html estandar_para_interfaz_de_proyectos_de_desarrollo.html estandar_para_la_creacion_de_bases_de_dato.html example_howto.html exim_mta.html extraccion_de_texto_de_documentos.html fail2ban.html falla_laboral.html fax_server.html fink.html firewalld.html firewall_skina_howto.html flujo_de_trabajo_de_proyecto.html flujo_de_trabajo_de_proyecto_trello.html formatos_de_documentos_estandares_de_skinatech.html freenas.html freenx.html freetds.html ftpproxy.html generar_diccionarios_de_datos_en_workbench.html getfacl_y_setfacl.html getmenu2.html gforge.html git_flow.html git.html gitlab.html glassfish.html glpi10.html glpi95.html gnokii.html gnupg_gpg.html google_cloud_platform.html graylog_consolidador_de_bitacoras.html grub.html hacer_modelo_y_o_backup.html hardening_de_linux.html hearbeat_cluster.html hipergate.html hispaniola_firewall_ikatta.html horario_de_trabajo.html how_to_enviar_html_imagenes_con_php5.html howto.html howto_mon.html howto_php_nuke.html huawei_e220.html ibm_aix_snmp_setup_for_nagios.html ibm_db2.html ids_logchecklogwatchtripwireaideetc.html ilo2_e_ilo3.html implementacion_de_oauth2_google_en_orfeo_ng.html implementacion_de_oauth2_microsoft_en_orfeo_ng.html implementacion_glpi.html indicadores_de_gestion.html informes_semanales.html informix_apache_php.html infraestructura_de_operacion.html instalacion_asterisk_en_centos_53.html instalacion_asterisk_en_.html instalacion_de_modelo_de_servidor_con_minilinux.html instalacion_de_modelo_de_servidor.html instalacion_de_pqrs_en_orfeo_sgd.html instalacion_ldap_smb_34_en_debian_lenny.html instalacion_minima_appliance.html instalacion_mi­nima.html instalacion_r_server_&_r_shiny.html instalacion_r_server_&_r_shiny_server.html instalacion_splunk.html instalacion_y_configuracion_apachephp_con_db2_y_soporte_con_odbc.html instalacion_y_configuracion_de_sphinx_para_orfeo.html instalacion_y_configuracion_gatekeeper_h323.html instalacion_y_configuracion_lotus_domino.html instalacion_zimbra.html instalar_cancelador_de_eco_hpec_en_asterisk.html instructivo_de_demos_de_skinatech.html instructivo_formato_de_diagnostico.html ipcop_firewall.html ipsec.html ipsec_zeroshell.html iptables.html iscsi.html ispconfig_v1.html ispconfig_v3.html iwatch_inotifywatch_notificar_eventos_en_carpetas.html jmeter.html joomla_cms.html kernel_compilar.html kuine_administracion_de_licencias.html kuine_generacion_de_licencias.html libchart.html licencia_por_calamidad_domestica.html linux_livecd.html lista_de_mejoras.html locale.html lvm.html lvs_linux_virtual_server.html mailman.html mailscanner.html manejo_de_certificados_integracion_pki.html manejo_de_firma_digital_en_php.html manejo_de_la_cuenta_de_correo_de_soporte.html manejo_de_mi_cuenta_de_correo_electronico.html manejo_de_recursos_egroupware_18.html mantis_bug_tracker.html manual_de_funciones_de_agente_de_soporte.html manual_de_funciones_de_consultor_de_tecnologia.html manual_de_telefonos.html manual_de_uso_asterisk.html manual_de_uso_fastrix.html manuales_de_funciones_area_administrativa.html manuales_de_funciones_area_tecnica.html maya_render_farm.html mdadm.html mejorar_rendimiento_libre_office.html metodologia_estandar_de_control_de_proyectos.html metodologia_estandar_de_control_de_proyectos_orfeo.html metodologia_para_desarrollo_de_software.html migracion_bacula_de_5_a_7.html migracion_orfeo_5_a_6.html migrando_samba3_a_samba4.html modelo_appliance.html modelo_de_procedimientos.html modelo_para_howtos.html modelo_para_propuesta.html monit.html montar_bucket_s3_amazon_y_oracle.html montar_orfeo_en_iis.html moodle.html ms_windows_en_linux_wine.html multi_factor_authentication_mfa.html multipath_conexion_con_san.html multiple_versiones_de_php.html multi_router_trafic_grapher_mrtg.html munin_alto_trafico.html munin.html mutliwan_openwrt.html mwan3_en_openwrt.html mysql_cluster_41.html mysql_ha.html mysql_mariadb.html mysql_proxy.html n2n_vpn.html nagios_30.html nagios_40.html nagios_bacula.html nagios_nrpe.html nagios_snmp.html netdata_monitor_tiempo_real.html network_load_balancing.html network_manager.html nextcloud.html nfs.html niveles_de_soporte.html no_conformidades.html novell_netware.html ntp_network_time_protocol.html nube_vs_servidores_locales.html oauth2.html objetivo_de_un_diagnostico_assestment.html ocr_en_linux.html ocs_inventory.html odbc.html office_365.html ofuscacion_de_codigo_yarchivo_de_autovalidacion_de_orfeo_50.html openfire.html openldap23.html openldap.html open_relay.html read **d) Antes de arrancarlo por primera vez**\\ \\ Antes de todo borre el contenido directorio /var/lib/ldap con excepcion de DB_CONFIG. Si no existe es prudente copiar uno que se encuentran en /etc/openldap ===== C. Prueba Funcionamiento ===== ==== 1. Basico linea de comandos ==== a) Ahora se debe ejecura el servicio de ldap para probar que la cosa quedo funcionando. > #>  /etc/init.d/ldap restart       ( o su equivalente segun distribucion) b). Probar la inserción de información Cree un archivo llamado test.ldif  (Anexo 1).  OJO  ldap es MUY exigente con la sintaxis, por eso no sedeben dejar espacios blanco al final de las lineas, ni lineas en blanco al comienzo del archivo. Ahora adicionar esta información al directorio con el siguiente comando: > ldapadd -x -D "cn=Manager,dc=skinatech,dc=com" -W -f test.ldif c) Ahora probar si la información se insertó, ejecutar: > \t ldapsearch -x -b 'dc=skinatech,dc=com' '(objectclass=*)' (Con las nuevas versiones friega esta prueba) ==== 2. Configuración del SO como cliente ldap ==== Si quiere que su sistema operativo use LDAP ya sea por pam o directamente. 2.1. Familia RedHat (Centos, Fedora, RedHat, etc) Lo mejor de mundo es system-config-authentication .. si es en consola le toca primero setup y luego escoger la configuracion de Autenticaion * En la primera pantanlla escoja Informacion de Usuario --> Utilizar LDAP, y Authenticcion --> Usar autenticacion LDAP * En la segunda defina como se conecta: TLS no es necesario si es local y configure servidor y basedn .. y Listo .. 2.2. Familia Debian (Debian, Ubuntu, etc) * http:%%//%%wiki.debian.org/LDAP/NSS * http:%%//%%www.jukie.net/~bart/ldap/ldap-authentication-on-debian/ -- * https:%%//%%distroid.net/configure-ldap-server-client-linux-mint/ *   ==== 3. El momento de la verdad ==== Primero debe encomendar su alma al santo de su preferencia. Luego hacerle una promesa o ponerle una veladora.\\ \\ Una vez superada la etapa mí­stica, es aconsejable monitorear el movimiento del log de ldap en el archivo /var/log/ldap/ldap.log. Se puede usar tail -f /var/log/ldap/ldap.log para verificar si funciona basta ejecutar > #> su -\\ en el log de ldap debe verificarse que no haya ningun error del estilo "entry not found" (o algo similar)\\ \\ O sea corra una prueba de identificación #> id paginas\\ #> uid=1001(paginas) gid=100(users) grupos=1001(skina),100(users) context=user_u:system_r:unconfined_t:s0 Con esto ya debe funcionar.\\ \\ *Es posible que para algunas aplicaciones como ssh deba modificar el archivo correspondiente en /etc/pam.d/   ===== D. Addons ===== ==== 1. PhpLdapAdmin ==== a) La mejor herramienta de manejo de LDAP.\\ \\ b) Descomprima el tar.gz en /var/www/html (o en el lugar adecuado). Existen rpms aunque toca buscar bien para conseguirlos actualizados y se instalan usualmente en /usr/share/phpldapadmin.\\ \\ c) Dentro del directorio phpldapadmin edite el archivo config/config.php > $config->custom->session['blowfish'] = "a424ac9e342c61b43b2d04f8cb0b9dec";\\ > $ldapservers->SetValue($i,'login','timeout',300); Este ultimo fue necesario en algunos casos con las ultimas versiones\\ \\ d) Recomendado usar https con el rewrite. O sea mire la redireccion en el documento de Apache2.\\ \\ e) Es posible que si aun asi no le funciona .. sea problema del tcpwrapers y entonces toque colocar en /etc/hosts.allow > ldapd slpad : ALL : ALLOW\\ \\ f) OJO cuando cree cuentas .. Esta herramienta no hace todo, tiene varias cosas por hacer: * Tener un numero de UID valido * Crear el directorio * Agregar el atributo objectClass - Account para que la reconozca el correo (o PosixAccount) **Problema** E_STRICT: Declaration of AJAXTree::draw_dn() should be compatible with that of PLMTree::draw_dn()"  .. se resuelve en https:%%//%%bugs.launchpad.net/ubuntu/+source/phpldapadmin/+bug/446669   ==== 2. Servidor Replicante - Cluster LDAP - HA --> ====   ==== 3. Migración de usuarios (linux) a la base de datos. ==== a). Se ofrece un paquete para este proceso (sin garantias). MDK tiene un openldap-migration y redhat lo incluye y pone las herramientes en  /usr/share/openldap/migration. En caso de no tenerlas, se deben bajar las herramientas de migración de: http:%%//%%www.padl.com/ son scripts de shell y perl.\\ \\ Es necesario cambiar parametros en el archivo migrate_common.ph por  el dominio correcto. > # Default DNS domain\\ > $DEFAULT_MAIL_DOMAIN = "skina.com.co";\\ > \\ > # Default base\\ > $DEFAULT_BASE = "dc=skina,dc=com,dc=co";\\ b) Hay dos formas de migrar la información, una manual y una automática  y a mi no me funciono la automática (como cosa rara).\\ Primero se debe preparar el directorio para la nueva información, para esto ejecutar: > \t./migrate_base.pl > base.ldif\\ \\ lo que genera los servicios y clases base del sistema. Se suelen limpiar todo excepto lo básico: quite el primer registro. Solo se deja el encabezado del grupo, People, Grupo y quiza Alias.\\ \\ Se adicionan con el comando sldapadd ya conocido.\\ \\ NOTA:!! Edite el test.ldif y borre el primer grupo que asigna dc=com,dc=co  que normalmente no funciona.\\ \\ c) Luego se debe sacar la información del passwd y shadow y adicionalmente de  los grupos, para esto se deben crear los correspondientes archivos ldif,\\ para esto usar: > \t./migrate_passwd.pl /etc/passwd passwd.ldif\\ > ./migrate_group.pl /etc/group group.ldif\\ \\ Una vez creados estos archivos, es bueno limpiarlos del grupos y usuarios del sistema y dejar solo usuarios y grupos reales y a partir de ahi, solo resta adicionarlos a las base de datos, ejecutar: > \tldapadd -x -D "cn=Manager,dc=skina,dc=com,dc=co" -W -f passwd.ldif\\ > ldapadd -x -D "cn=Manager,dc=skina,dc=com,dc=co" -W -f group.ldif\\ \\ d) Para verificar que la información se incertó correctamente, ejecutar: > \tldapsearch -x -b 'ou=People,dc=skina,dc=com,dc=co' '(uid=*)'\\ \\ esto debe desplegar los usuarios. ==== 4. Usar MySQL - MariaDB como backend en vez de BDB ==== a) Primero instale el soporte  openldap-server-sql b) Prepare la base de datos de MySQL - MariaDB - Creela con usuario y contraseña - El acceso se hace com ODBC asi que toca meterle mano a /etc/odbc.ini y a /etc/odbcinst para acceso a ella - La estructura de la base de datos y algunos datos de ejemplos estan en el la documentacion (/usr/share/doc....) b) Configure el server para usar el backend\\     modulepath    /usr/lib/openldapmoduleload    back_sql.labackend      sqldatabase     sqldbname       ldapdbuser       myldapdbpasswd     passwdrootsubtree_cond    "upper(ldap_entries.dn) LIKE CONCAT('%',?)"insentry_query  "INSERT INTO ldap_entries (dn,oc_map_id,parent,keval) VALUES (?,?,?,?)" has_ldapinfo_dn_ru      no c) Configure la base de datos He aqui el problema mas grande de esto, ..  cada schema requeire un mapeo (metadata) para que LDAP lo entienda. El ejemplo proveido sirve para un directorio con solo inetorgperson ..pero cualquier salida a otro ObjectClass .. se jode. d) Referencias * El readme es bueno como instructivo para ponerlo a andar  /usr/share/doc/openldap-servers-sql-2.3.43/rdbms_depend/README * http:%%//%%www.openldap.org/faq/data/cache/978.html -- * http:%%//%%www.flatmtn.com/article/setting-ldap-back-sql -- * http:%%//%%www.docunext.com/archives/noofs/ ---   ===== Colgar Aplicaciones --> =====   ===== Problemas y Trucos ===== ==== 0. Como configuro el SO para que lo use.  A MANO !! ==== a) Editar el archivo /etc/ldap.conf (si al hacer los cambios las cosas no funcionan, crear un link simbolico a ese archivo en /etc/openldap/ o viceversa).\\ el host donde está el servidor ldap (es preferible poner una dir IP)
host 127.0.0.1
El nombre de la base para las búsquedas. > \tbase dc=skina,dc=com,dc=co\\ Las directivas para que PAM y NSS funcionen (hay MUCHAS más pero con estas es suficiente para que funcione) (OJO: funcione != seguro): > \tpam_filter objectclass=account\\ > pam_login_attribute uid\\ > pam_password crypt\\ > nss_base_passwd ou=People,dc=skina,dc=com,dc=co?one\\ > nss_base_shadow ou=People,dc=skina,dc=com,dc=co?one\\ > nss_base_group ou=Group,dc=skina,dc=com,dc=co?one Se hace necesario usar un usuario y contraseña si no permite acceso anonimo
binddn cn=proxyuser,dc=example,dc=com bindpw secret
- En familia RH pueden hacerse los cambios con system-config-authtentication - Un buen documento para ubuntu para estos cambios  Configuración de Autenticacion PAM a) Es prudente (necesario) tener instalado el paquete pam_ldap. c) Se deben modificar los archivos correspondientes a los servicios que utilizará ldap para su autenticación, se encuentran en el directorio /etc/pam.d/, el paquete pam_ldap trae ya preconfigurados algunos y los deja en /usr/share/doc/pam_ldap/pam.d/... . Por ejemplo el archivo de login queda de la siguiente manera: #%PAM-1.0\\ auth       required     /lib/security/pam_securetty.so\\ auth       required     /lib/security/pam_nologin.so\\ auth       sufficient   /lib/security/pam_ldap.so\\ auth       required     /lib/security/pam_unix_auth.so try_first_pass\\ account    sufficient   /lib/security/pam_ldap.so\\ account    required     /lib/security/pam_unix_acct.so\\ password   required     /lib/security/pam_cracklib.so\\ password   required     /lib/security/pam_ldap.so\\ password   required     /lib/security/pam_pwdb.so use_first_pass\\ session    required     /lib/security/pam_unimx_session.so\\ #session    optional     /lib/security/pam_console.so En general se pueden copiar todos... ojo con "su" porque algunos servicios como postgresql no arrancaranEs prudente que saque backup de los archivitos que reemplaza .. por ejemplo en un directorio old en el mismo sitio donde estan los pam's de ldap.                        c) Configuración del Name Server Switch (NSS) Modificar el archivo /etc/nsswitch.conf . Como solo se va a manejar autenticación de usuarios hay que modificar las lineas correspondientes a passwd, shadow y group. deben quedar asi: > passwd: files ldap\\ > shadow: files ldap\\ > group: files ldap Antiguamente dejabamos primero ldap que files, pero se ponia lento y ademas nunca bajaba la maquina correctamente.  \\ //NOTA: EN RH y su familia hay un system-config-auth que genera estos pam y nsswitch// ====   ==== ==== 1. Logging (tipo Red Hat) ==== A. Por defecto, en RedHat, ldap viene sin hacer bitacoras, entonces se copia mucho de Mandrake que si las trae.\\ \\ B. El archivo general de configuracion en /etc/sysconfig/ldap > \t# nice level for slapd\\ > SLAPDNICE="+2"\\ > \\ > # debug level for slapd\\ > SLAPDSYSLOGLEVEL="2"\\ > SLAPDSYSLOGLOCALUSER="LOCAL0"\\ > \\ > # SLAPD URL list\\ > SLAPDURLLIST="ldap:%%//%%/ ldaps:%%//%%/"\\ > \\ > # nice level for slurp\\ > SLURPNICE="+2"\\ C. La linea anexa a syslog.conf > \t# added by openldap-2.0.27 rpm mar ago 19 15:50:47 GMT 2003\\ > local0.* -/var/log/ldap/ldap.log\\ en Debian ponga local4\\ \\ recuerde crear el directorio y ponerle permisos de openldap .. sino no funciona  \\ \\ D. En logrotate.d copie el ldap > \t/var/log/ldap/ldap.log {\\ > missingok\\ > notifempty\\ > compress\\ > postrotate\\ > # only restart if slapd is really running\\ > if test -n "`ps acx|grep slapd`"; then\\ > /sbin/service ldap restart\\ > fi\\ > endscript\\ > }\\ \\ E. Cambios al script de inicializacion de /etc.rc.d/inid.d/ldap, dentro\\ del start pongo un adicion al los parametros > if [ -n "$SLAPDSYSLOGLOCALUSER" ] ; then\\ >   OPTIONS="$OPTIONS -l $SLAPDSYSLOGLOCALUSER"\\ >   if [ -n "$SLAPDSYSLOGLEVEL" ] ; then\\ >     OPTIONS="$OPTIONS -s $SLAPDSYSLOGLEVEL"\\ >   fi\\ > fi F. Si desea borrar un usuario por linea de comandos > ldapdelete -x -D "cn=Manager,dc=skina,dc=com,dc=co" -W  "uid=usuario,dc=skina,dc=com,dc=co" ==== 2. Cuando el arbol es muy profundo ==== No se van a encontrar las hojas (usuarios) entonces en el ldap.conf debe ser algo como > nss_base_passwd ou=People,dc=skina,dc=com,dc=co?sub\\ > nss_base_shadow ou=People,dc=skina,dc=com,dc=co?sub\\ > nss_base_group ou=Group,dc=skina,dc=com,dc=co?sub   ==== 3. Como me cuelgo a un AD ==== MSFU (Microsoft Services for UNIX) ==== 4. Migrar el dominio ( Skina a Fiberglass por ejemplo) ==== La facil - Saque un dump (ldif) de LDAP .. ya sea con un search o desde phpldapadmin - Baje LDAP y borre la base de datos en /var/lib/ldap - Configure /etc/openldap/slapd.conf y /etc/ldap.con con el nuevo dominio ademas del archivo dump en donde debe cambiar el dominio tambien - Levante LDAP y cargue con ldapadd el archivo nuevo ldif y ya Listo  ==== 5. Se fue la luz y No sube LDAP ==== Cuando se va la luz o se apaga a lo marrano .. no sube LDAP. Eso suele ser que la\\ base de datos que se daño. Eso se arregla con > cd /var/lib/ldap\\ > db_recover\\ > \\ > o\\ > slapd_db_recover\\ >   Si el comando no lo encuentra tiene que instalar el paquete db4-utils o db_tools  ==== 5. Ldapsearch no bota mas de 500 ==== Hay un parametro llamado SIZELIMIT que se pone en /etc/openldap/slapd.conf y que si se pone en cero supuestamente quita el limite, pero algunos clientes como squid se despelota .. es mejor ponerlo en 1000 o algo asi. - ==== 6.  Interfaz grafica de creacion de usuarios ====   ==== 7.  Clientes Linux y Windows ==== A. LINUX: instale un paquete que se llama "gq"  B. WINDOWS: existe un programa de nombre "ldap browser" (www.ldapbrowser.com)   ==== 8.  Ldap consume demasiado procesador ==== 1. Verifique que tenga instalado y activo el servidicio de nscd.\\ \\ 2. En el archivo de configuracion de ldap (/etc/openldap/slapd.conf  o /etc/ldap/slapd.conf ) adicione la siguientes lineas:   cachesize 1000000 dbcachesize 100000000  ==== 9.  Ldapsearch limitado a 80 columnas  ==== Hace un wrap despues de la columna 80. El perl de a continuacion lo limpia ldapsearch ....  | perl -p -0040 -e 's/\ %%//%%' ==== 10. Optimizar Berkeley DB ==== aaaaaa\\   ==== 11. Autenticacion con SAMBA4 y ldaps:%%//%% ==== Toca poner en le /etc/ldap/ldap.conf\\ \\ TLS_REQCERT never\\ \\   ==== 12. Migracion de un lado a otro ==== \\ https:%%//%%www.golinuxcloud.com/openldap-migration-examples/\\   ===== Referencias ===== * [[http://www.linuxjournal.com/content/openldap-everywhere-reloaded-part-i?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+linuxjournalcom+%28Linux+Journal+-+The+Original+Magazine+of+the+Linux+Community%29&utm_content=Google+Feedfetcher|OpenLDAP reload en Linux Journal]] * LDAP Linux HOWTO -- * LDAP Implementation HOWTO -- * http:%%//%%www.linux-mag.com/depts/guru.html (ediciones de febrero, marzo y abril de 2002) -- * http:%%//%%www.linuxparatodos.net/geeklog/staticpages/index.php?page=como-ldap-auth -- * http:%%//%%www.goa.es * https:%%//%%help.ubuntu.com/7.04/server/C/openldap-server.html -- * Como activar TLS en RedHat http:%%//%%kbase.redhat.com/faq/docs/DOC-8655  * Activar TLS generico en OpenLDAP  http:%%//%%www.openldap.org/pub/ksoper/OpenLDAP_TLS.html#5.0 Como pegarlo con Active Directory * http:%%//%%www.oo-services.com/en/articles/sso.html -- * http:%%//%%linuxmafia.com/faq/Security/active-directory.html -- * http:%%//%%enterprise.linux.com/enterprise/04/12/09/2318244.shtml?tid=102&tid=101&tid=100 -- * http:%%//%%www.securityfocus.com/infocus/1563 -- Como hacer un arbol * http:%%//%%ldapman.org/articles/tree_design.htm -- * http:%%//%%www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch31_:_Centralized_Logins_Using_LDAP_and_RADIUS --   FIN ==============================================================\\ ANEXO 1   El archivo de prueba     test.ldif\\ ============================================================== # extended LDIF## LDAPv3# base with scope subtree# filter: (Objectclass=*)# requesting: ALL## skinatech.comdn: dc=skinatech,dc=comobjectClass: topobjectClass: dcObjectobjectClass: organizationo: Ikatta Directorydc: skinatech# admin, skinatech.comdn: cn=admin,dc=skinatech,dc=comobjectClass: simpleSecurityObjectobjectClass: organizationalRolecn: admindescription: LDAP administratoruserPassword:: e1NTSEF9VnpwY0VBOVpDVis2T210QTZPemVxLytoZnNnTEp0UVI=# Groups, skinatech.comdn: ou=Groups,dc=skinatech,dc=comobjectClass: organizationalUnitou: Groups# People, skinatech.comdn: ou=People,dc=skinatech,dc=comou: PeopleobjectClass: topobjectClass: organizationalUnit# Manager, skinatech.comdn: cn=Manager,dc=skinatech,dc=comobjectClass: organizationalRolecn: Manager# Aliases, skinatech.comdn: ou=Aliases,dc=skinatech,dc=comou: AliasesobjectClass: topobjectClass: organizationalUnit  ==============================================================                                                   \\ ANEXO 2 Script para crear ldiff                                                   \\ ============================================================== ** Por aqui hay un script aun mas completo cree_usuario_ldap.sh   ==============================================================\\ \\   =============================================================\\ 15-Marzo-2006 J.E.Gomez v1.0 Primera version wikiíltima modificación: V 1.2 08/08/2008 kurtdavis10\\ íltima modificación: V 1.2 29/05/2008 kurtdavis10\\ íltima modificación: V 1.2 16/12/2005 kasandra Incluye Replica\\ íltima modificación: V 1.1 11/08/2005 kasandra\\ íltima modificación: V 1.0 17/08/2004 kasandra\\ íltima modificación: V 0.9 24/04/2004 kasandra\\ \\ íltima modificación: V 0.7 19/08/2003 kasandra\\ \\ íltima modificación: V 0.5 10/04/2003 Daniel Torres Autor: Daniel Torres (daniel@paradoja.com) ---- __**Advertencia**__ Este documento es privado y es de uso exclusivo de sus autores y de SKINA TECH. Cualquier uso sin una autorización escrita es contra la ley de derechos de autor y de propiedad intelectual, y será motivo de una acción legal. ----