Openldap
De Wikillano
Instalación de paquetes:
apt-get install slapd apt-get install phpldapadmin
crear password encriptado:
root@larisa:/etc/ldap# slappasswd
New password:
Re-enter new password:
{SSHA}ayzX95tIKLWmsioiHkSB/9Im8rDSGcii
Editar el fichero de conf de ldap
root@larisa:/etc/ldap# vim slapd.conf
debemos poner (debajo de SUFFIX) el usuario root del ldap junto con el passwd encritado que hemos creado.
dc=cambra,dc=es es el dominio base que yo me he inventado, tb podría ser dc=ballano,dc=net
#Administrador OpenLdap
rootdn "cn=admin,dc=cambra,dc=es"
rootpw {SSHA}ayzX95tIKLWmsioiHkSB/9Im8rDSGcii
si no lo hacemos debajo de suffix obtendremos el siguiente error: ERROR:
/etc/ldap/slapd.conf: line 62: rootpw can only be set when rootdn is under suffix slapd shutdown: freeing system resources.
Cambiamos la ubicacion de la bbdd "crear directorio" y copiar la carpeta al nuevo destino.
# Where the database file are physically stored for database #1 directory "/data/var/lib/ldap"
debemos modificar todos los nodomain por el nuestro, por ej
"dc=ballano,dc=es"
modificar el fichero :
vim /etc/phpldapadmin/config.php
en esta linea el apartado en negrita:
$ldapservers->SetValue($i,'server','base',array('dc=cambra,dc=es'));
este es el fichero de conf de phpldapadmin.
reiniciamos: el ldap
/etc/init.d/slapd stop /etc/init.d/slapd start
crear el fichero base.ldiff:
(mediante este ldiff crearemos la base desde donde colgará todo)
vim base.ldif dn: dc=cambra,dc=es dc: cambra objectClass: top objectClass: domain
ejecutar el fichero en el ldap mediante:
root@larisa:/etc/ldap# slapadd -b 'dc=cambra,dc=es' -l base.ldif
Reiniciamos slapd
En este momento ya podemos entrar en phpldapadmin para administrar nuestro ldap. desde la web http://localhost/phpldapadmin
usuario: cn=admin,dc=cambra,dc=es pass: el que encritamos anteriormente
Phpldapadmin se instala por defecto en /usr/share/phpldapadmin , crea un
link en el dir conf.d de apache2 que linca a un apache.conf propio.
lo que podemos hacer es copiar el directorio /usr/share/phpldapadmin a
el documenroot de apache.
IMPORTANTE BORRAR:
el link que phpldapmyadmin a creado en conf.d en el directorio de apache2 (en mi caso)
de esta manera podemos acceder a ldapadmin desde el dominio http://default/phpldapadmin
Esto es una copia del apache.conf a onde apunta el link de phpldapadmin, lo dejo aquí por si me es de utilidd más tarde.
##########este apartado no hace falta
######################################
y en el virtualhost default añadir el alias al phpldapadmin y las
opciones de directorio:
<IfModule mod_alias.c>
Alias /phpldapadmin /var/www/phpldapadmin
</IfModule>
# You can also use phpLDAPadmin as a VirtualHost
# <VirtualHost *:*>
# ServerName ldap.example.com
# ServerAdmin root@example.com
# DocumentRoot /usr/share/phpldapadmin
# ErrorLog logs/ldap.example.com-error.log
# CustomLog logs/ldap.example.com-access.log common
# </VirtualHost>
<Directory /var/www/phpldapadmin/>
DirectoryIndex index.php
Options +FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
# <IfModule mod_mime.c>
#
# <IfModule mod_php4.c>
# AddType application/x-httpd-php .php
#
# php_flag magic_quotes_gpc Off
# php_flag track_vars On
# php_flag register_globals On
# php_value include_path .
# </IfModule>
<IfModule !mod_php4.c>
<IfModule mod_actions.c>
<IfModule mod_cgi.c>
AddType application/x-httpd-php .php
Action application/x-httpd-php /cgi-bin/php4
</IfModule>
</IfModule>
</IfModule>
</IfModule>
</Directory>
#################este apartado no hace falta
######################################
