2.2. Esquema para el directorio LDAP
Anterior | Capítulo 2. Configuración del soporte LDAP en Postfix | Siguiente

## 2.2. Esquema para el directorio LDAP

El esquema que se utilizará para el directorio LDAP será un árbol cuya la raíz será: dc=gsr,dc=pt, de la cual colgarán tres organizationalUnit que almacenarán toda la información necesaria:

- Rama “people”: la cual contendrá información sobre las cuentas de usuario. Aquí se almacenarán todos los datos obligatorios de las cuentas: direcciones de correo electrónico, directorio Maildir, etc.

- Rama “groups”: almacenará la información relativa a grupos de usuarios.

- Rama “postfix”: que contendrá la información necesaria para Postfix. En esta rama se creará una rama hija para el almacén de los alias de correo, de manera que se puedan tener varias direcciones que apunten a una misma cuenta o a otra cuenta externa.

| Nota
En la siguiente sección se mostrará el proceso a seguir para añadir una organizationalUnit desde phpLDAPadmin, las unidades organizacionales que falten deberá añadirlas de la misma forma.

### 2.2.1. Añadiendo las ramas “postfix” y “alias”

A continuación se muestra la forma de añadir la rama postfix y la rama hija de esta, alias, al directorio LDAP:

Figura 2.1. Acceso a phpLDAPadmin

Teclee en su navegador favorito la URL donde se encuentre instalado phpLDAPadmin y pulse sobre el enlace “Autenticación...”, si así lo requiere la herramienta (dependerá de la configuración de phpLDAPadmin).

Figura 2.2. Autentificación

Teclee el DN del administrador de su directorio LDAP y la clave. Luego pulse sobre “Authenticate”.

Figura 2.3. Autentificación correcta

Si todo ha ido bien, se habrá autentificado correctamente en el directorio LDAP. Pulse ahora sobre el signo + que aparece al lado de dc=gsr,dc=pt para ver la estructura del directorio.

Figura 2.4. Estructura del directorio

Esta pantalla muestra la estructura actual del directorio LDAP sobre el que se va a trabajar. Las únicas ramas que van a interesar, de momento, para esta documentación son la rama people y la rama groups.

Pulse ahora sobre “Crear Nuevo Objeto”, para crear la rama postfix.

Figura 2.5. Creando la unidad organizacional postfix

Seleccione la opción “Organizational Unit” y pulse sobre el botón Proceed >> para continuar.

Figura 2.6. Creando la unidad organizacional postfix, selección del nombre

Teclee el nombre que va a tener la nueva unidad organizacional, en este caso se va a denominar: postfix. Pulse sobre el botón Proceed >> para continuar.

Figura 2.7. Creando la unidad organizacional postfix, creación de la unidad

Finalmente pulse sobre el botón “Create OU” para finalizar con el proceso de creación de la unidad organizacional postfix.

Figura 2.8. Creando la unidad organizacional postfix, información sobre la unidad

Una vez creada la unidad organizacional, se mostrará la información sobre la misma.

Ahora se va a asignar una clave a la unidad organizacional postfix, para ello pulse sobre el enlace “Agregar nuevo atributo”.

Figura 2.9. Creando la unidad organizacional postfix, estableciendo una clave I

Seleccione el atributo userPassword

Figura 2.10. Creando la unidad organizacional postfix, estableciendo una clave II

Teclee la clave que quiera asignar al usuario y pulse sobre el botón Agregar.

| Nota
phpLDAPadmin la encriptará con el algoritmo de hash definido en su archivo de configuración (`/etc/phpldapadmin/config.php`); siendo en este caso el algoritmo crypt.

Figura 2.11. Creando la unidad organizacional postfix, estableciendo una clave III

Como se puede observar en la imagen, la unidad organizacional postfix posee un nuevo atributo (userPassword).

Para continuar, pulse sobre el enlace Crear objeto como hijo.

Figura 2.12. Creando la unidad organizacional alias

Seleccione la opción “Organizational Unit” y pulse sobre el botón Proceed >> para continuar.

Figura 2.13. Creando la unidad organizacional alias, selección del nombre

Teclee el nombre que va a tener la nueva unidad organizacional, en este caso se va a denominar: alias. Pulse sobre el botón Proceed >> para continuar.

| Importante
Tenga en cuenta que la unidad organizacional alias ha se ser hija de la unidad postfix, por lo que asegúrese de que la ruta seleccionada en el recuadro “Container DN:” es: ou=postfix,dc=gsr,dc=pt.

Figura 2.14. Creando la unidad organizacional alias, creación

Finalmente pulse sobre el botón “Create OU” para finalizar con el proceso de creación de la unidad organizacional alias.

Figura 2.15. Creando la unidad organizacional alias, información final

Como puede verse en la imagen, la unidad organizacional alias aparece bajo la unidad postfix, que era el objetivo final.

### 2.2.2. Plantilla LDIF para las unidades organizacionales

Otra forma de añadir información en un directorio LDAP, es hacer uso de plantillas LDIF. A continuación se mostrará una plantilla que podría haberse empleado para la generación de las unidades organizacionales descritas anteriormente:

Ejemplo 2.1. Plantilla LDIF para la creación de las unidades organizacionales: postfix, alias, people y groups

    # Entry 1: ou=people,dc=gsr,dc=pt
    dn:ou=people,dc=gsr,dc=pt
    objectClass: organizationalunit
    ou: people

    # Entry 2: ou=groups,dc=gsr,dc=pt
    dn:ou=groups,dc=gsr,dc=pt
    objectClass: organizationalunit
    ou: groups

    # Entry 3: ou=postfix,dc=gsr,dc=pt
    dn:ou=postfix,dc=gsr,dc=pt
    ou: postfix
    objectClass: top
    objectClass: organizationalUnit
    userPassword: {CRYPT}****************

    # Entry 4: ou=alias,ou=postfix,dc=gsr,dc=pt
    dn:ou=alias,ou=postfix,dc=gsr,dc=pt
    ou: alias
    objectClass: top
    objectClass: organizationalUnit

Para añadir la plantilla al directorio LDAP, puede utilizar phpLDAPadmin. Simplemente guarde la plantilla en un archivo y haga uso del enlace “importar” de la herramienta.

También se puede emplear el comando ldapadd, como se muestra a continuación:

Ejemplo 2.2. Añadiendo una plantilla LDIF con ldapadd

    $ /usr/bin/ldapadd -x -D "cn=admin,dc=gsr,dc=pt" -W -h gsr.pt \
                       -f organizationalunits.ldif
    Enter LDAP Password: [clave]
    adding new entry "ou=people,dc=gsr,dc=pt"

    adding new entry "ou=groups,dc=gsr,dc=pt"

    adding new entry "ou=postfix,dc=gsr,dc=pt"

    adding new entry "ou=alias,ou=postfix,dc=gsr,dc=pt"

Anterior | Subir | Siguiente
2.1. Introducción | Inicio | 2.3. Directorio para el almacén de correos