1. Instalar paquetes:
sudo aptitude update; sudo aptitude install libapache2-mod-php5 php5-mysqlnd php5-ldap
2. Descargar las fuentes:
http://sourceforge.net/projects/phpldapadmin/files/
sudo mkdir /srv/www cd /srv/www sudo wget -c --tries=0 http://sourceforge.net/projects/phpldapadmin/files/phpldapadmin-php5/1.2.3/phpldapadmin-1.2.3.tgz
3. Descomprimir y preparar el directorio:
sudo gzip -d phpldapadmin-1.2.3.tgz sudo tar xvf phpldapadmin-1.2.3.tar sudo ln -s phpldapadmin-1.2.3 phpldapadmin sudo mv phpldapadmin-1.2.3.tar ~ sudo chown -R www-data:www-data phpldapadmin*
4. Editar el archivo de configuracion:
cd /srv/www/phpldapadmin/config sudo cp config.php.example config.php sudo vim config.php
Y anyadir esto al final:
$servers->setValue('server','host','ldap.example.com'); $servers->setValue('server','port',389); $servers->setValue('server','base',array('dc=example,dc=com')); $servers->setValue('login','bind_id','cn=admin,dc=example,dc=com'); $config->custom->debug['file'] = '/var/log/pla_debug.log';
La version 1.2.3 tiene problemas de compatibilidad con PHP 5.5+. Solucion rapida:
1. Renombrar la funcion “password_hash()”
sudo sed -i 's/password_hash/password_hash_custom/g' /srv/www/phpldapadmin-1.2.3/lib/functions.php
2. Editar los siguientes archivos:
/srv/www/phpldapadmin-1.2.3/lib/ds_ldap.php /srv/www/phpldapadmin-1.2.3/lib/functions.php
Y cambiar las lineas donde se llama la funcion “preg_replace()”
# ANYADIDO. Error PHP 5.5+ #$a[$key] = preg_replace('/\\\([0-9A-Fa-f]{2})/e',"''.chr(hexdec('\\1')).''",$rdn); $a[$key] = preg_replace_callback('/\\\([0-9A-Fa-f]{2})/',function ($res) {return chr(hexdec($res));},$rdn);
y:
#return preg_replace('/\\\([0-9A-Fa-f]{2})/e',"''.chr(hexdec('\\1')).''",$dn); return preg_replace_callback('/\\\([0-9A-Fa-f]{2})/',function ($res) {return chr(hexdec($res));},$dn);