Este documento explica cómo instalar y configurar phpLDAPadmin, un gestor web para servidores LDAP. Describe los pasos para instalarlo manualmente o desde los repositorios, indicar los datos de conexión al servidor LDAP, cambiar la autenticación o idioma, ocultar atributos, definir el orden de los campos, y solucionar errores como límites bajos de memoria. phpLDAPadmin permite administrar de forma gráfica usuarios, grupos y otros objetos almacenados en un servidor LDAP.
1. Publicado en introBlog (http://blog.intropedro.com)
Inicio > Instalar phpLDAPadmin
Instalar phpLDAPadmin
Indice
Introducción
Instalación
Manual
Automatica
Indicarle los datos de conexión
Configuración
Cambiar la forma de autentificarse
Automáticamente
Manual
Solo queremos que muestre unos
determinados campos
Cambiar los nombres que se
muestran de cada parametro
Definir el orden en que se listan los
parametros
Parametros de solo lectura
Entrar solo con el nombre de un
parámetro único
Elegir el idioma
Activar el log
Errores
Límite de memoria de php bajo
Solución
Introducción
phpLDAPadmin [1] es un gestor web para un servidor de ldap.
Instalación
2. Manual
sencilla. Hay que bajarselo, descomprimirlo, ponerlo ene l apache y configurar los datos
La instalación es
para que acceda a nuestro servidor de ldap:
>> wgethttp://nfsi.dl.sourceforge.net/sourceforge/phpldapadmin/phpldapadmin-1.1... [2]
>> tar -zxvf phpldapadmin-1.1.0.7.tar.gz
>> sudo cp -R phpldapadmin-1.1.0.7 /var/www/html/phpldapadmin
>> sudo cp /var/www/html/phpldapadmin/config/config.php.example
/var/www/html/phpldapadmin/config/config.php
Automatica
Necesitaremos tener un servidor web con php y un servidor mysql con una base de datos para el
phpldapadmin. Para instalarlo en ubuntu, desde los repositorios:
>> sudo aptitude install phpldapadmin
Indicarle los datos de conexión
Editamos el fichero y nos aseguramos que rellenamos los siguientes campos que son los minimos:
$i=0;
$ldapservers = new LDAPServers;
...
$ldapservers->SetValue($i,'server','name',' NOMBRE_SERVIDOR');
...
$ldapservers->SetValue($i,'server','host',' IP_DEL_SERVIDOR_DONDE_ESTA_EL_LDAP');
...
$ldapservers->SetValue($i,'server','port',' 389');
...
$ldapservers->SetValue($i,'server','base',array(' RAIZ_BASE_DE_NUESTRO_LDAP'));
Ya tendria que funcionar el phpLDAPadmin.
Configuración
Cambiar la forma de autentificarse
Por defecto la forma que usa para autentificarse con el servidor de ldap es manual (tenemos que
introducir un usuario y una contraseña), pero podemos ponerla en automática. Para usar una u otra
tendremos que tener el fichero de configuración como nos indica en cada apartado:
Automáticamente
Para que se conecte automáticamente al servidor de ldap, con un usuario cn=root,dc=example,c=es y
3. contraseña passuser, tendremos que usar las siguientes líneas en el fichero de configuración (
/var/www/html/phpldapadmin/config/config.php):
$ldapservers->SetValue($i,'server','auth_type',' config');
$ldapservers->SetValue($i,'login','dn',' cn=root,dc=example,c=es');
$ldapservers->SetValue($i,'login','pass',' passuser');
$ldapservers->SetValue($i,'server','tls', false);
Manual
Para que nos pida que introduzcamos un usuario y clave del ldap para conectarnos al servidor, usaremos
las siguientes líneas (recalcar que las variablesdn y pass de login, tenemos que dejarlas vacías) en el
fichero de configuración /var/www/html/phpldapadmin/config/config.php):
(
$ldapservers->SetValue($i,'server','auth_type',' cookie');
$ldapservers->SetValue($i,'login','dn','');
$ldapservers->SetValue($i,'login','pass','');
$ldapservers->SetValue($i,'server','tls', false);
$config->custom->session['blowfish'] = "cadena";
La cadena blowfish puede ser cualquier cadena (se usa para encriptar la cookie).
Solo queremos que muestre unos determinados campos
Si lo que queremos es que no muestre todos los atributos tendremos que editar el fichero
/var/www/html/phpldapadmin/config/config.php y buscar el vector hidden_attrs, descomentarlo si está
comentado y poner los campos que no queramos que se muestren. Por ejemplo: Si no queremos que se
muestren los campos uidNumber, gidNumber, homeDirectory y objectClass tendremos que poner la
siguiente línea:
$hidden_attrs = array(
'uidNumber','gidNumber', 'homeDirectory', 'objectClass');
Guardamos el fichero y ya esta.
Cambiar los nombres que se muestran de cada parametro
Alguien que no tiene conocimientos de ldap cuando vea que hay que rellenar el parámetro l (ciudad)
puede que no sepa que significa. Phpldapadmin tiene la posibilidad de definir el nombre que se lista
para cada parámetro. Para ello tendremos que editar el fichero
/var/www/html/phpldapadmin/config/config.php y añadir en el vector friendly_attrs los campos que
queremos renombrar en la salida. Por ejemplo: si queremos que los campos l, st y sn aparezcan como
Ciudad, Localidad y Apellidos tendremos que añadir als siguientes líneas:
$friendly_attrs = array();
$friendly_attrs['l'] = 'Ciudad';
$friendly_attrs['st'] = 'Localidad';
$friendly_attrs['sn'] = 'Apellidos';
4. Solo nos quedará guardar los cambios y cerrar el archivo.
Definir el orden en que se listan los parametros
Hay una opcion (attrs_display_order) para definir el orden en el que se muestran los parámetros. Por
ejemplo: si queremos que primero nos pregunte por el nombre, luego por los apellidos y por último el
nombre completo, tendríamos que añadir la siguiente variable al archivo
/var/www/html/phpldapadmin/config/config.php:
$attrs_display_order = array(
'sn',
'cn',
'displayName'
);
Los parámetros que no pongamos en este vector se mostraran despues de los que hallamos indiado y en
orden alfabético. Guardamos el fichero para mantener los cambios.
Parametros de solo lectura
Si queremosq eu ciertos parametros no se puedan modificar, podemos hacerlo con el parámetro
read_only_attrs. Por ejemplo: si queremos que el campo dni no se pueda modificar, tendremos que
añadir el siguiente vector al archivo /var/www/html/phpldapadmin/config/config.php:
$read_only_attrs = array( 'dni' );
Guardamos y listo.
Entrar solo con el nombre de un parámetro único
Por defecto para autentificarnos en phpLDAPadmin tenemos que escribir el dn de nuestro usuario. El dn
es el que identifica a un objeto y tiene una forma parecida a este ejemplo
uid=manolo,ou=personas,o=tuempresa,c=es. Poner toda esta cadena para autentificarte no es nada
comodo, pero podemos sustituir el nombre que el usuario utiliza para autentificarse por uno que sea
único y más sencillo de recordar, por ejemplo el uid. Para ello tendremos que editar el fichero
/var/www/html/phpldapadmin/config/config.php y descomentar y modificar la siguiente línea:
$ldapservers->SetValue($i,'login','attr','uid');
Guardamos los cambios y ya esta.
Elegir el idioma
Para indicar que lo muestre en español (es) tendremos que editar el fichero
/var/www/html/phpldapadmin/config/config.php y editar la siguiente línea:
$config->custom->appearance['language'] = 'es
';
5. Otros idiomas serian: 'ct', 'de', 'en', 'es', 'fr', 'it', 'nl', y 'ru'.
Activar el log
Para activar el log y que escriba en un fichero /tmp/pla_debug.log tendremos que editar el fichero
/var/www/html/phpldapadmin/config/config.php y añadir o descomentar estas líneas:
$config->custom->debug['level'] = 255;
$config->custom->debug['syslog'] = true;$config->custom->debug['file'] = '
/tmp/pla_debug.log'
;
Errores
Límite de memoria de php bajo
Al instalarlo, cuando accedemos a la url nos aparece el siguiente mensaje de error:
Memory Limit low.
Your php memory limit is low - currently 16M
Solución
Tendremos que editar el fichero /etc/php.ini y buscar la siguiente línea:
memory_limit = 16M
Cambiamos el 16 por 32. Guardamos el fichero y reiniciamos el apache:
>> sudo /etc/init.d/httpd restart
apache[3]howto[4]ubuntu[5]
apache howto ubuntu
URL de Origen: http://blog.intropedro.com/es/content/instalar-phpldapadmin
Enlaces:
[1] http://phpldapadmin.sourceforge.net/
[2] http://nfsi.dl.sourceforge.net/sourceforge/phpldapadmin/phpldapadmin-1.1.0.7.tar.gz
[3] http://blog.intropedro.com/es/category/temas/apache
[4] http://blog.intropedro.com/es/taxonomy/term/38
[5] http://blog.intropedro.com/es/taxonomy/term/37