Nov
25
2009

Créer un serveur OpenLdap Sécurisé (LDAPS)


Nous allons configurer openldap pour s’assurer que l’authentification et les informations ne circulent pas en claires. Pour cela, nous allons devoir générer un certificat serveur à l’aide d’openssl, indiquer au serveurs Ldap d’utiliser ces certificats et enfin lui demander d’écouter sur un nouveau port pour les connexions sécurisées.

Pré-requis :

  • OpenLdap installé et configuré
  • Openssl doit être installé

 

Génération du certificat serveur :

Créer l’arborescence qui contiendra les certificats que nous allons générer :

mkdir –p /etc/ssl /etc/ssl/openldap

cd /etc/ssl/openldap

Générer le certificat :

openssl req -x509 -new -config openssl-ldap.cnf -out ldap_cert.pem -keyout ldap_key.pem -days 730 –nodes

Vous devez répondre aux questions. Celles-ci permettent à l’utilisateurs de connaître la provenance du certificat.

Deux fichiers vont être générés : ldap_cert.pem et ldap_key.pem

Mettez leurs les droits 440 propriétaire root groupe ldap

 

Configuration d’OpenLdap

Editez le fichier /etc/openldap/slapd.conf et ajoutez :

TLSCertificateFile /etc/ssl/openldap/ldap_cert.pem
TLSCertificateKeyFile /etc/ssl/openldap/ldap_key.pem

Ces lignes permettent de spécifier l’emplacement du certificat et de sa clé au serveur OpenLdap.

 

Editez le fichier /etc/openldap/ldap.conf Pour qu’il ressemble à cela :

URI     ldaps://192.168.0.1:636
TLS_CACERTDIR /etc/ssl/openldap/

Le serveur ldap écoutera sur le port 636 au redémarrage du service ldap.

 

Vous pouvez tenter une connexion avec JXplorer :

image

Articles similaires

Au sujet de l'auteur: Olivier Legras

Auteur de ce Blog, je partage quelques unes de mes notes que je juge utile à vous comme à moi. Je suis très heureux de voir que mon blog a de plus en plus d'affluence. Merci à vous!

8 Comments + Add Comment

  • Bonjour,

    Merci pour ce tuto qui a l’air relativement simple, mais je rencontre des la génération des certificats plusieurs messages d’erreurs, pouvez-vous m’aider ?

  • error on line -1 of openssl-ldap.cnf
    930:error:02001002:system library:fopen:No such file or directory:bss_file.c:126:fopen(‘openssl-ldap.cnf’,’rb’)
    930:error:2006D080:BIO routines:BIO_new_file:no such file:bss_file.c:129:
    930:error:0E078072:configuration file routines:DEF_LOAD:no such file:conf_def.c:197:

  • Salut,

    Essai avec cette commande : openssl req -new -x509 -nodes -out /etc/ssl/ldap_cert.pem -keyout /etc/openldap/ssl/ldap_key.pem -days 3650

    Ton erreur est que le fichier openssl-ldap.cn n’existe pas.

    Assure toi que le dossier /etc/ssl est bien créé avant de lancer la commande.

    Bon courage

  • Bonjour,

    Merci vraiment pour ton aide, j’ai bien le dossier /etc/ssl de crée, voici ce qu’il contient:

    root@*********:/etc/ssl# ls
    ca certs mykey openldap openssl.cnf private

    voici le résultat de la commande:

    Generating a 1024 bit RSA private key
    …………..++++++
    …….++++++
    writing new private key to ‘/etc/openldap/ssl/ldap_key.pem’
    /etc/openldap/ssl/ldap_key.pem: No such file or directory
    6360:error:02001002:system library:fopen:No such file or directory:bss_file.c:356:fopen(‘/etc/openldap/ssl/ldap_key.pem’,’w’)
    6360:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:358:

  • openssl req -new -x509 -nodes -out /etc/ssl/ldap_cert.pem -keyout /etc/ssl/ldap_key.pem -days 3650

    essai ça

  • salut,

    ok cette commande a bien marché, par contre cela m’a crée les certificats dans /etc/ssl/

    j’ai ensuite fait un: chown -R 440 / ldap_key.pem

    et la maintenant je n’ai plus accès au ldap… une idée ?

  • Ouh la!! ce que tu as fait n’a rien à voir au fait que ton ldap ne marche plus sauf s’il était déjà configuré en SSL et que le certificat se nommait de la même manière.

  • Bonsoir,

    mon serveur Ldap semble bien fonctionner, j’ai donc suivit tout le tuto, mais au reboot du service slapd, avec la commande netstat, le serveur ne semble pas être en écoute du port 636…

    Une idée ?

Laissez un commentaire



Je soutiens

Publicité :)

Mes derniers tweets