====== phpldapadmin ====== ===== Instalacion ===== 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'; ===== Errores ===== 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);