LDAP-Samba (Parte 1): Instalación


LDAP son las siglas de Lightweight Directory Access Protocol (en español Protocolo Ligero/Simplificado de Acceso a Directorios) que hacen referencia a un protocolo a nivel de aplicación que permite el acceso a un servicio de directorio ordenado y distribuido para buscar diversa información en un entorno de red. LDAP también se considera una base de datos (aunque su sistema de almacenamiento puede ser diferente) a la que pueden realizarse consultas. (Wikipedia, 2010)

Samba es una implementación libre del protocolo de archivos compartidos de Microsoft Windows (antiguamente llamado SMB, renombrado recientemente a CIFS) para sistemas de tipo UNIX. De esta forma, es posible que computadoras con GNU/Linux, Mac OS X o Unix en general se vean como servidores o actúen como clientes en redes de Windows. Samba también permite validar usuarios haciendo de Controlador Principal de Dominio (PDC), como miembro de dominio e incluso como un dominio Active Directory para redes basadas en Windows; aparte de ser capaz de servir colas de impresión, directorios compartidos y autentificar con su propio archivo de usuarios. (Wikipedia, 2010)

Para instalar un servidor de LDAP con soporte de Samba, debemos seguir los siguientes pasos:

TERMINAL
  1. aptitude install slapd ldap-utils

OPCIONES DE CONFIGURACIÓN DE aptitude install slapd ldap-utils

Cualquiera, será reconfigurado.

Continuando

TERMINAL
  1. dpkg-reconfigure slapd

OPCIONES DE CONFIGURACIÓN DE dpkg-reconfigure slapd

Omitir la configuración de OpenLDAP: no

Nombre de dominio: cs.inet

Nombre de organización: cms

Contraseña del admin: XXXXX

Confirme la contraseña del admin: XXXXX

Motor de base de datos a utilizar: BDB

Borrar la base de datos al purgar slapd: no

Mover la base de datos antigua: si

Permitir LDAP v2: si

Continuando

TERMINAL
  1. /etc/init.d/slapd restart

Para probar ejecutar en el terminal

TERMINAL
  1. ldapsearch -x -b "dc=cs,dc=inet"

Continuando

TERMINAL
  1. aptitude install apache2

Para probar consultar en el navegador la URL: http://ip_servidor_pdc

TERMINAL
  1. aptitude install smbldap-tools
  2. aptitude install phpldapadmin php5-ldap

Para probar consultar en el navegador la URL: http://ip_servidor_pdc/phpldapadmin

TERMINAL
  1. aptitude install build-essential
  2. cd /usr/src/
  3. wget http://sourceforge.net/projects/ldaputils/files/Contrib/mkntpwd/mkntpwd.tar.gz
  4. tar -xzvf mkntpwd.tar.gz
  5. make
  6. cp mkntpwd /usr/local/bin

Para probar ejecutar en el terminal

TERMINAL
  1. mkntpwd

Continuando

TERMINAL
  1. aptitude install samba samba-doc

OPCIONES DE CONFIGURACIÓN DE aptitude install samba samba-doc

Nombre del dominio: cs.inet

Usar passwords encriptados: si

Modificar smb.conf para que use la configuración WINS proveniente de DHCP: no

Continuando

TERMINAL
  1. cd /usr/share/doc/samba-doc/examples/LDAP
  2. gunzip samba.schema.gz
  3. cp samba.schema /etc/ldap/schema

Modificar /etc/ldap/slapd.conf según LDAP-Samba (Parte 2): Archivos de configuración

TERMINAL
  1. /etc/init.d/slapd restart

Aplicar Crear unidades organizacionales según LDAP-Samba (Parte 3): Operaciones phpldapadmin

TERMINAL
  1. mkdir -p /home/samba/netlogon
  2. mkdir -p /home/samba/profiles
  3. chmod 777 -R /home/samba/profiles

Modificar /etc/samba/smb.conf según LDAP-Samba (Parte 2): Archivos de configuración

Para probar ejecutar en el terminal y verificar que la configuración no tenga errores

TERMINAL
  1. testparm

Continuando

TERMINAL
  1. smbpasswd -w XXXXX
  2. /etc/init.d/samba restart

Para probar consultar en el navegador la URL: http://ip_servidor_pdc/phpldapadmin y verificar la entrada en el arbol sambaDomainName=CS.INET

Aplicar Mapear los 4 grupos principales según LDAP-Samba (Parte 3): Operaciones phpldapadmin

TERMINAL
  1. aptitude install libnss-ldap

OPCIONES DE CONFIGURACIÓN DE aptitude install libnss-ldap

Cualquiera, será reconfigurado.

Continuando

TERMINAL
  1. dpkg-reconfigure libnss-ldap

OPCIONES DE CONFIGURACIÓN DE dpkg-reconfigure libnss-ldap

Servidor de LDAP: ldap:///127.0.0.1

Nombre distintivo (DN): dc=cs,dc=inet

Versión de LDAP: 3

Se requiere usuario para la base de datos LDAP: no

Privilegios especiales de LDAP para root: si

Configuración leíble y escribible sólo para el propietario: si

Cuenta LDAP para root: cn=admin,dc=cs,dc=inet

Contraseña para la cuenta LDAP de root: XXXXX

Modificar /etc/nsswitch.conf según LDAP-Samba (Parte 2): Archivos de configuración

Para probar ejecutar en el terminal

TERMINAL
  1. getent group

Continuando

TERMINAL
  1. aptitude install libpam-ldap
  2. dpkg-reconfigure libpam-ldap

OPCIONES DE CONFIGURACIÓN DE dpkg-reconfigure libpam-ldap

Servidor de LDAP: ldap:///127.0.0.1

Nombre distintivo (DN): dc=cs,dc=inet

Versión de LDAP: 3

Make local root Database admin: si

Se requiere usuario para la base de datos LDAP: no

LDAP account for root: cn=admin,dc=cs,dc=inet

Contraseña para la cuenta LDAP de root: XXXXX

Local crypt to use when changing passwords: md5

Modificar /etc/pam.d/common-account, /etc/pam.d/common-auth y /etc/pam.d/common-password según LDAP-Samba (Parte 2): Archivos de configuración

TERMINAL
  1. aptitude install nscd
  2. /etc/init.d/samba restart

Aplicar Agregando usuarios según LDAP-Samba (Parte 3): Operaciones phpldapadmin

Para probar ejecutar en el terminal

TERMINAL
  1. getent passwd

Continuando

TERMINAL
  1. cd /usr/share/doc/smbldap-tools/examples
  2. cp smbldap.conf.gz smbldap_bind.conf /etc/smbldap-tools
  3. cd /etc/smbldap-tools
  4. gunzip smbldap.conf.gz
  5. chown root:root *
  6. chmod 600 *

Modificar /etc/smbldap-tools/smbldap_bind.conf y /etc/smbldap_tools/smbldap.conf según LDAP-Samba (Parte 2): Archivos de configuración

Aplicar Uniendo máquinas al dominio según LDAP-Samba (Parte 3): Operaciones phpldapadmin


REFERENCIA

Wikipedia. (18 de agosoto de 2010). Protocolo Ligero de Acceso a Directorios. Recuperado de: https://es.wikipedia.org/wiki/Protocolo_Ligero_de_Acceso_a_Directorios

Wikipedia. (18 de agosoto de 2010). Samba (programa). Recuperado de: https://es.wikipedia.org/wiki/Samba_(programa)