instalación y configuración de ldap server

26
Instalación y Configuración de LDAP Server

Upload: diego-montiel

Post on 17-Jan-2017

204 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Instalación y configuración de ldap server

Instalación y Configuración de LDAP Server

Usuario
Texto tecleado
Elaborado Por: Diego Montiel
Page 2: Instalación y configuración de ldap server

A Nivel de Servidor:

Instalar gpm: apt-get install gpm

Paso1: Instalar Paquete de LDAP

# apt-get install slapd ldap-utils phpldapadmin

Pedirá una contraseña para el LDAP Admin, usaremos master

Page 3: Instalación y configuración de ldap server

Paso2:

Probamos el correcto funcionamiento:

# ldapsearch –LLL –Y EXTERNAL –H ldapi:/// -b cn=config dn

RESPUESTA ESPERADA

SASL/EXTERNAL authentication started

SASL username:

gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth

SASL SSF: 0

dn: cn=config

dn: cn=module{0},cn=config

dn: cn=schema,cn=config

dn: cn={0}core,cn=schema,cn=config

dn: cn={1}cosine,cn=schema,cn=config

dn: cn={2}nis,cn=schema,cn=config

dn: cn={3}inetorgperson,cn=schema,cn=config

dn: olcBackend={0}hdb,cn=config

dn: olcDatabase={-1}frontend,cn=config

dn: olcDatabase={0}config,cn=config

dn: olcDatabase={1}mdb,cn=config

-Se Procederá a reconfigurar el SLAPD: modificar el motor de la base

de datos que viene en mdb por hdb.

#dpkg-reconfigure slapd

Page 4: Instalación y configuración de ldap server

Las configuraciones se dejarán a como se muestran en las imágenes:

Secuencia de Imágenes:

1-Desea Omitir (No)

2- Nombre de Dominio que se agrega al LDAP:

Page 5: Instalación y configuración de ldap server

3-Nombre de la Organización.

4-Ingreso de la Contraseña de Administrador: se ingresará la

contraseña del paso 1 ( master ) , pedirá confirmación, se agregará la

misma.

Page 6: Instalación y configuración de ldap server

5-Configurar el motor de la base de datos:

6-Sí

Page 7: Instalación y configuración de ldap server

7-Sí

8-No

Page 8: Instalación y configuración de ldap server

Paso3: Hay que generar la clave y el hash para el usuario que

administrará la DB, el hash hay que guardarlo ya que es único

#slappasswd

Contraseña: gt01ldap

Confirmar contraseña:

{SSHA}------------------------------------

Paso4: Ejecutar:

# ldapmodify –Y EXTERNAL –H ldapi:///

Agregamos la contraseña a la DB, para poder empezar a configurar el

servicio de directorio.

Se quedará “pegado”, en realidad está esperando la siguiente

sentencia: el hash.

dn: olcDatabase={0}config,cn=config

add: olcRootPW

olcRootPW: {SSHA}--------------------------

** PRESIONAMOS Enter y luego ´Ctrl + D´

En este paso se recomienda usar ya sea el putty o instalar el paquete de gpm

con: apt-get install gpm , con este paquete se permitirá la navegación con el

mouse , esto para copiar el SSHA de una forma mas eficiente.

Page 9: Instalación y configuración de ldap server

Paso5: Creamos nuestro servicio de directorio (DB), esto mediante

una estructura de fichero *.ldif, los cuales son los encargados de la

administración y configuración de nuestro LDAP.

Para este fichero de configuración el “- “indica el final de una sección.

dc=diemonle , se cambiara según su dominio.

En este paso se recomienda usar la herramienta putty.

# nano /root/config.ldif

dn: olcDatabase={1}hdb,cn=config changetype: modify replace: olcSuffix olcSuffix: dc=diemonle,dc=com - replace: olcRootDN olcRootDN: cn=admin,dc=diemonle,dc=com - replace: olcAccess olcAccess: to attrs=userPassword by dn="cn=admin,dc=diemonle,dc=com" 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=admin,dc=diemonle,dc=com" write by * read

Page 10: Instalación y configuración de ldap server

Paso6: Editamos nuestra DB a partir de nuestro fichero config.ldif

# ldapmodify -Y EXTERNAL -H ldapi:/// -f /root/config.ldif

RESPUESTA ESPERADA

Paso7: Revisar nuevamente el funcionamiento:

#ldapsearch -xLLL -b cn=config -D cn=admin,cn=config -W

olcDatabase={1}hdb

Enter LDAP Password: gt01ldap

Respuesta Esperada:

Page 11: Instalación y configuración de ldap server

Paso8: Crear el fichero para el nuevo directorio

# nano /root/base.ldif

#dn: dc=diemonle,dc=com

#objectClass: top

#objectClass: dcObject

#objectclass: organization

#o: DIEMONLE

#dc: DIEMONLE

#description: Servidor LDAP de DIEMONLE.com

dn: ou=people,dc=diemonle,dc=com

objectClass: organizationalUnit

ou: people

dn: ou=groups,dc=diemonle,dc=com

objectClass: organizationalUnit

ou: groups

dc= se agrega el nombre de su dominio.

Page 12: Instalación y configuración de ldap server

Paso9: Comprobación, Ejecutar:

# ldapadd -x -D cn=admin,dc=diemonle,dc=com -W -f /root/base.ldif

Enter LDAP Password: master

Agregamos el nuevo directorio a partir del fichero base.ldif

RESPUESTA ESPERADA

adding new entry "ou=people,dc=diemonle,dc=com"

adding new entry "ou=groups,dc=diemonle,dc=com"

Page 13: Instalación y configuración de ldap server

Paso10: Crear un fichero automatizado para obtener el fichero ldapuser.ldif

con la información de los usuarios del servidor que tengan un UID de 4 dígitos.

#nano ldapuser.sh

SUFFIX='dc=diemonle,dc=com' LDIF='ldapuser.ldif' echo -n > $LDIF for line in `grep "x:[1-9][0-9][0-9][0-9]:" /etc/passwd | sed -e "s/ /%/g"` do UID1=`echo $line | cut -d: -f1` NAME=`echo $line | cut -d: -f5 | cut -d, -f1` if [ ! "$NAME" ] then NAME=$UID1 else NAME=`echo $NAME | sed -e "s/%/ /g"` fi SN=`echo $NAME | awk '{print $2}'` if [ ! "$SN" ] then SN=$NAME fi GIVEN=`echo $NAME | awk '{print $1}'` UID2=`echo $line | cut -d: -f3` GID=`echo $line | cut -d: -f4` PASS=`grep $UID1: /etc/shadow | cut -d: -f2` SHELL=`echo $line | cut -d: -f7`

HOME=`echo $line | cut -d: -f6` EXPIRE=`passwd -S $UID1 | awk '{print $7}'` FLAG=`grep $UID1: /etc/shadow | cut -d: -f9` if [ ! "$FLAG" ] then FLAG="0" fi WARN=`passwd -S $UID1 | awk '{print $6}'` MIN=`passwd -S $UID1 | awk '{print $4}'` MAX=`passwd -S $UID1 | awk '{print $5}'` LAST=`grep $UID1: /etc/shadow | cut -d: -f3` echo "dn: uid=$UID1,ou=people,$SUFFIX" >> $LDIF echo "objectClass: inetOrgPerson" >> $LDIF echo "objectClass: posixAccount" >> $LDIF echo "objectClass: shadowAccount" >> $LDIF echo "uid: $UID1" >> $LDIF echo "sn: $SN" >> $LDIF echo "givenName: $GIVEN" >> $LDIF echo "cn: $NAME" >> $LDIF echo "displayName: $NAME" >> $LDIF echo "uidNumber: $UID2" >> $LDIF echo "gidNumber: $GID" >> $LDIF echo "userPassword: {crypt}$PASS" >> $LDIF echo "gecos: $NAME" >> $LDIF echo "loginShell: $SHELL" >> $LDIF echo "homeDirectory: $HOME" >> $LDIF echo "shadowExpire: $EXPIRE" >> $LDIF echo "shadowFlag: $FLAG" >> $LDIF echo "shadowWarning: $WARN" >> $LDIF echo "shadowMin: $MIN" >> $LDIF echo "shadowMax: $MAX" >> $LDIF echo "shadowLastChange: $LAST" >> $LDIF echo >> $LDIF done

Page 14: Instalación y configuración de ldap server

Paso11: Ejecutar el Script del paso 10:

Agregamos los usuarios a nuestra DB del servicio de directorio.

#sh ldapuser.sh

Este script creará el fichero ldapuser.ldif

Luego Comprobar con:

#ldapadd -x -D cn=admin,dc=diemonle,dc=com -W -f /root/ldapuser.ldif

Enter LDAP Password: master

Respuesta Esperada: usuarios agregados

Page 15: Instalación y configuración de ldap server

Paso12: Crear un fichero automatizado para obtener el fichero ldapgroup.ldif

con la información de los grupos del servidor que tengan un GID de 4 dígitos.

#nano ldapgroup.sh

#!/bin/bash

SUFFIX='dc=diemonle,dc=com'

LDIF='ldapgroup.ldif'

echo -n > $LDIF

for line in `grep "x:[1-9][0-9][0-9][0-9]:" /etc/group`

do

CN=`echo $line | cut -d: -f1`

GID=`echo $line | cut -d: -f3`

echo "dn: cn=$CN,ou=groups,$SUFFIX" >> $LDIF

echo "objectClass: posixGroup" >> $LDIF

echo "cn: $CN" >> $LDIF

echo "gidNumber: $GID" >> $LDIF

users=`echo $line | cut -d: -f4 | sed "s/,/ /g"`

for user in ${users} ; do

echo "memberUid: ${user}" >> $LDIF

done

echo >> $LDIF done

Page 16: Instalación y configuración de ldap server

Paso13: Ejecutar el Script del paso 12:

Agregamos los usuarios a nuestra DB del servicio de directorio.

#sh ldapgroup.sh

Este script creará el fichero ldapgroup.ldif

Luego Comprobar con:

#ldapadd -x -D cn=admin,dc=diemonle,dc=com -W -f /root/ldapgroup.ldif

Enter password: master

Respuesta Esperada:

Page 17: Instalación y configuración de ldap server

A nivel de Cliente:

Paso1: Instalar los paquetes:

# apt-get –y install libnss-ldap libpam-ldap ldap-utils

Las configuraciones se dejarán a como se muestran en

las imágenes:

--Secuencia de Imágenes:

1-Dirección del Servidor LDAP:

Page 18: Instalación y configuración de ldap server

2-Dominio:

3-Versión de LDAP:

Page 19: Instalación y configuración de ldap server

4-Cuenta LDAP para root:

6-Contraseña para la cuenta LDAP de root: master

Page 20: Instalación y configuración de ldap server

7-Aceptar

8-No

Page 21: Instalación y configuración de ldap server

9-No

Page 22: Instalación y configuración de ldap server

Paso2: Al igual que con el NIS le debemos indicar a nuestro

nsswitch.conf cual será nuestro orden de búsqueda para

autenticación de usuarios.

#nano /etc/nsswitch.conf

-Modificado:

*Se agregara dns en caso de que se trabaje con servidor de dominios

Page 23: Instalación y configuración de ldap server

Paso3: Removemos los tokens de autenticación ya que no

implementamos LDAP/SSL

#nano /etc/pam.d/common-password

QUITAMOS “use_authtok” Y LA LINEA QUEDARA ASI

password [success=1 user_unknown=ignore default=die] pam_ldap.so try_first_pass

Paso5: NO reiniciar el cliente llámese el O.S

Paso 6: Ejecutar

#ldapsearch -x -W -D 'cn=admin,dc=diemonle,dc=com' 'objectClass=*'

Enter LDAP Password: master

En caso de algún error , como no se puede contactar con el servidor,

etc, hacerlo con este otro commando:

#ldapsearch -x -W –h IP_SERVIDOR ó HOSTNAME –p 389 -D

'cn=admin,dc=diemonle,dc=com' 'objectClass=*'

Enter LDAP Password: master

Page 24: Instalación y configuración de ldap server

Respuesta Esperada:

Page 25: Instalación y configuración de ldap server

Paso 7: Editar el fichero ldap.conf porque el wizard de instalación no

escribió en él

#nano /etc/ldap/ldap.conf

AGREGAMOS O MODIFICAMOS

• BASE dc=diemonle,dc=com

• URI ldap://ip_servidor

-Modificado: Descomentar ,agregar dominio y dirección del Servidor

LDAP.

-Paso 8: reboot

Ahora si podemos reiniciar y autenticarnos con un usuario de

LDAP, si tratamos de cambiar la contraseña se nos hace presente la

DB del LDAP para recibir la nueva contraseña.

Page 26: Instalación y configuración de ldap server

-Paso 9: Logueare con Un Usuario del Servidor en el cliente:

Por ultimo para abandonar la sesión con logout se saldrá.