Instalando openldap con soporte SSL en debian I (instalando el servidor)
July 24, 2006 on 1:03 pm | In GNU/Linux |Aprovechando que tenemos servidor nuevo en el GUL, me he propuesto instalar openldap con soporte ssl desde cero y documentarlo, ya que las guías que he encontrado por ahí no son muy buenas, algunas cosas no quedan claras.
El objetivo primero es instalar openldap en la máquina y que los usuarios locales autentiquen a través de ldap.
Lo primero que hemos de hacer es instalar openldap y algunas utilidades que nos harán falta más tarde:
#apt-get install slapd ldap-utils
Ahora debemos modificar el fichero /etc/ldap/slapd.conf de la siguiente manera:
# The base of your directory in database #1
suffix “dc=gul,dc=uc3m,dc=es”
# The userPassword by default can be changed
# by the entry owning it if they are authenticated.
# Others should not be able to see it, except the
# admin entry below
# These access lines apply to database #1 only
access to attrs=userPassword
by dn=”cn=admin,dc=gul,dc=uc3m,dc=es” write
by anonymous auth
by self write
by * none
# The admin dn has full write access, everyone else
# can read everything.
access to *
by dn=”cn=admin,dc=gul,dc=uc3m,dc=es” write
by * read
Con esto hemos configurado el servidor ldap para el dominio del GUL-UC3M.
Ahora procederemos al tema de los certificados para el soporte ssl. Hay varias formas de generar las claves del servidor, pero me decantaré por la de generar una autoridad de certificación propia (CA), la cual firmará los certificados tanto del servidor como de los clientes.
Instalamos openssl:
#apt-get install openssl
Generamos una CA propia:
#cd /usr/lib/ssl/misc/
#./CA.sh -newca
Es necesario introducir todos los datos correctamente así como una passphrase para la CA.
#mv demoCA /etc/gulCA
Con esto tenemos nuestra autoridad de certificación en /etc/gulCA
Ahora modificamos el fichero /usr/lib/ssl/openssl.cnf de manera que todo se haga con nuestra CA:
####################################################################
[ CA_default ]
dir = /etc/gulCA # Where everything is kept
Ahora creamos la clave del servidor y la petición de firmado para la CA:
#cd /etc/gulCA
#openssl req -newkey rsa:1024 -nodes -keyout newreq.pem -out newreq.pem
Hacemos la petición de firmado:
# /usr/lib/ssl/misc/CA.sh -sign
Nos pedirá la passphrase de la CA introducida anteriormente.
Con esto las claves ya estarán firmadas, ahora debemos crear un directorio donde se guardarán para su posterior uso por slapd:
#mkdir /etc/ldap/slapd-certs
#cp cacert.pem /etc/ldap/slapd-certs/
#mv newcert.pem /etc/ldap/slapd-certs/servercrt.pem
#mv newreq.pem /etc/ldap/slapd-certs/serverkey.pem
#chmod 400 /etc/ldap/slapd-certs/serverkey.pem
A continuación debemos editar el fichero /etc/ldap/slapd.conf para que contenga las siguientes líneas:
TLSCipherSuite HIGH:MEDIUM:+SSLv2:RSA
TLSCACertificateFile /etc/ldap/slapd-certs/cacert.pem
TLSCertificateFile /etc/ldap/slapd-certs/servercrt.pem
TLSCertificateKeyFile /etc/ldap/slapd-certs/serverkey.pem
Para que el servidor arranque tanto en modo no seguro como en modo seguro, hay que modificar el fichero /etc/default/slapd de la siguiente manera:
SLAPD_SERVICES=”ldap:/// ldaps:///”
Si todo ha ido bien, al arrancar el servidor ldap, no debería dar ningún error:
#/etc/init.d/slapd start
Starting OpenLDAP: slapd.
Para comprobar que el servidor está corriendo podemos ejecutar:
# netstat -alnp | grep slapd
tcp 0 0 0.0.0.0:389 0.0.0.0:* LISTEN 7716/slapd
tcp 0 0 0.0.0.0:636 0.0.0.0:* LISTEN 7716/slapd
tcp 0 0 127.0.0.1:389 127.0.0.1:49456 ESTABLISHED7716/slapd
tcp6 0 0 :::389 :::* LISTEN 7716/slapd
tcp6 0 0 :::636 :::* LISTEN 7716/slapd
Podemos ver cómo el servidor está corriendo en los puertos 389 (no seguro) y 636(seguro).
Más adelante más
Cualquier sugerencia, corrección de errores, etc, etc es bienvenida
1 Comment »
RSS feed for comments on this post. TrackBack URI
Leave a comment
Powered by WordPress with Pool theme design by Borja Fernandez.
Entries and comments feeds.
Valid XHTML and CSS. ^Top^





ayuda por favor!
me sale este error y no tengo ni la menor idea de que puede ser…
slapd -h ‘ldap:/// ldaps:///’ -g openldap -u openldap
he realizado todos los pasos como me indica,
ayuda please
Comment by daguilera — 21 September, 2007 #