Instalación y configuración de un Servidor con OpenLDAP

Correo1SERVIDOR OPENLDAP PARA USUARIOS DE ROUNDCUBE

Se da por entendido que ya se encuentran el servidor instalado con el sistema operativo Debian Jessie, y que poseen una conexión vía Internet Protocol de dirección fija, y que se encuentran configurados los repositorios para Debian, así como cualquier editor en consola de su preferencia, para este presente caso utilizaremos el vim como editor.

El presente manual presenta un conjunto de comando ejecutados desde una terminal del sistema, para los cuales el prompt del sistema será representado con los símbolos “#>”, el cual varia según el caso, pero no se ilustrará en el documento por ser característica peculiar, y por medio de esta nota se indica allector que no debe ser incluido en el comando, que comienza inmediatamente después del mismo.

Desde un terminal de “root”, es decir autenticado como súper usuario, chequeamos la dirección IP asignado al servidor:

#> ifconfig

Editamos el archivo de identificadores de servidores.

#>vim /etc/hosts

Anexar la siguiente linea (en nuestro caso):
172.22.9.49 correosur-ldap.cenditel.gob.ve

Guardar los cambios del archivo y salir.

Instalamos el OpenLdap desde los repositorios

#> apt-get install slapd ldap-utils shelldap

Se realiza la reconfiguración del servicio para agregar los parámetros deseados:

#> dpkg-reconfigure slapd

En los cuadros de dialogo de configuración se debe responder:

Omir OpenLDAP server configuration?

<No>

DNS domain name:
correosur.cenditel

Organization name:
cenditel

Administrator Password:
1234567890

Database:

<MDB>

Do you want the database to be removed when slapd is purged?

<No>

Move old database?

<Yes>

Allow LDAPv2 protocol?

<No>

En este momento el servidor ldap está configurado y funcionando, el archivo de configuración “/etc/ldap/slapd.conf” debe contener los siguientes parámetros:

BASE dc=correosur,dc=cenditel
URI ldap://correosur-ldap.cenditel.gob.ve

Verificamos el listado de la estructura:

#> ldapsearch -x -b dc=correosur,dc=cenditel

Para el cual se obtiene el siguiente resultado:
# extended LDIF
#
# LDAPv3
# base <dc=correosur,dc=cenditel> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#

# correosur.cenditel
dn: dc=correosur,dc=cenditel
objectClass: top
objectClass: dcObject
objectClass: organization
o: cenditel
dc: correosur

# admin, correosur.cenditel
dn: cn=admin,dc=correosur,dc=cenditel
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator

# usuarios, correosur.cenditel
dn: ou=usuarios,dc=correosur,dc=cenditel
ou: usuarios
description: Directorio de Usuarios de correosur.cenditel
objectClass: organizationalUnit

# usuario_uno, usuarios, correosur.cenditel
dn: uid=usuario_uno,ou=usuarios,dc=correosur,dc=cenditel
objectClass: top
objectClass: inetOrgPerson
objectClass: person
objectClass: organizationalPerson
uid: usuario_uno
cn: Usuario Uno
mail: usuario_uno@correosur.cenditel
sn: Uno
givenName: Usuario

# search result
search: 2
result: 0 Success

# numResponses: 5
# numEntries: 4r

Vamos a crear estructura o árbol: Para esta configuración se ha definido una “unidad organizacional” (ou) para ordenar los usuarios dentro de este subdirectorio.

Crear el archivo “ou.ldif” con la siguiente información:

#>vim ou.ldif

dn: ou=usuarios,dc=correosur,dc=cenditel
ou: usuarios
description: Directorio de Usuarios de correo.cenditel
objectClass: organizationalUnit
structuralObjectClass: organizationalUnit

Guardar las modificaciones y salir con el comando de vim :wq

Ejecutar comando para inserción del registro: Se crea el directorio de configuración:

#> ldapadd -f ou.ldif -x -W -D cn=admin,dc=correosur,dc=cenditel

Creación de usuarios: Crear el archivo “usuario.ldif” que será usado para generar un registro en el directorio:

#>vim usuario.ldif

dn: uid=usuario_uno,ou=usuarios,dc=correosur,dc=cenditel
objectClass: top
objectClass: inetOrgPerson
objectClass: person
objectClass: organizationalPerson
uid: usuario_uno
cn: Usuario Uno
mail: usuario_uno@correosur.cenditel
sn: Uno
givenName: Usuario

Guardar y salir del editor

Ejecutar comando para inserción del registro: Cargar los usuarios de la siguiente manera. Se crea el usuario:

#>ldapadd -f usuario.ldif -x -W -D cn=admin,dc=correosur,dc=cenditel

Debe agregarse la contraseña, la mejor manera de hacerlo es la siguiente:

#> ldappasswd -h correosur-ldap.cendiltel.gob.ve -x -W -D cn=admin,dc=correosur,dc=cenditel uid=usuario_uno,ou=usuarios,dc=correosur,dc=cenditel -s 123456

Puede revisarse la configuración de la siguiente manera:

#> ldapsearch -x -b dc=correosur,dc=cenditel
#> slapcat

Se debe agregar al shelldap las siguientes parámetros:

#> vim ~/.shelldap.rc

server: correosur-ldap.cenditel.gob.ve
binddn: cn=admin,dc=correosur,dc=cenditel
bindpass: 1234567890
basedn: dc=correosur,dc=cenditel

Para entrar a Shelldap:
1. Ejecutar el comando:

#> shelldap

2. Listar usuarios, editar, cambiar contraseña o borrar usuario:
~ > ls
cn=admin
ou=usuarios/

~ > cd ou=usuarios
~ > edit uid=usuario_uno
dn: uid=usuario_uno,ou=usuarios,dc=correosur,dc=cenditel
objectClass: top
objectClass: inetOrgPerson
objectClass: person
objectClass: organizationalPerson
cn: Usuario Uno
givenName: Usuario
mail: usuario_uno@pruebas.mayaguaray.cenditel.gob.ve
sn: Uno
uid: usuario_uno
userPassword: {SSHA}8KmVHiV1J4KOBfnwH83+r0a4lyksXxkr

~ > passwd uid=usuario_uno
~ > delete uid=usuario_uno

~ > quit

Ya hemos creado un primer usuario dentro OpenLDAP, y que nos permite utilizar dicha estructura para autenticación en los diversos sistemas de la organización.