Un serveur LDAP étant souvent utilisé en entreprise, celui-ci contient beaucoup d'informations personnelles (numéros de téléphone par exemple) et doit donc être sécurisé. Pour chiffrer la connexion entre le serveur LDAP et les clients (ordinateurs, smartphones, tablettes et autres appareils mobiles), nous allons configurer notre serveur pour permettre l'accès au serveur via SSL. La connexion étant chiffrée, les pirates ne pourront plus (ou difficilement) intercepter nos données passant par le réseau.
Etant donné que nous allons utiliser SSL pour chiffrer la connexion, nous allons devoir générer un certificat SSL pour notre serveur. Néanmoins, nous allons utiliser l'utilitaire "certtool" au lieu de "openssl" car le serveur LDAP "slapd" est maintenant compilé avec la librairie "gnutls".
Commencez par installer la librairie "gnutls" ainsi que le paquet "ssl-cert".
Bash
sudo apt-get install gnutls-bin ssl-cert
Créez ensuite la clé privée pour notre autorité de certification.
Bash
sudo sh -c "certtool --generate-privkey > /etc/ssl/private/cakey.pem"
Créez ensuite un modèle pour cet autorité et indiquez le nom de votre société à la ligne "cn".
Bash
vi /etc/ssl/ca.info
Bash
cn = InformatiWeb Computer ca cert_signing_key
Créez le certificat auto-signé de notre autorité de certification.
Bash
sudo certtool --generate-self-signed --load-privkey /etc/ssl/private/cakey.pem --template /etc/ssl/ca.info --outfile /etc/ssl/certs/cacert.pem
Puis, créez la clé privée pour votre serveur LDAP.
Bash
sudo certtool --generate-privkey --bits 1024 --outfile /etc/ssl/private/ldap_slapd_key.pem
Créez ensuite le modèle pour la création du certificat du serveur.
Notes :
- Indiquez le nom de votre société : organization
- Et le domaine qui pointe sur l'adresse IP de votre serveur LDAP : cn
- Le certificat généré par ce modèle sera valable 10 ans (expiration_days = 3650).
Bash
vi /etc/ssl/ldap.info
Bash
organization = InformatiWeb Computer cn = ldap.informatiweblan.net tls_www_server encryption_key signing_key expiration_days = 3650
Créez maintenant le certificat du serveur.
Bash
sudo certtool --generate-certificate --load-privkey /etc/ssl/private/ldap_slapd_key.pem --load-ca-certificate /etc/ssl/certs/cacert.pem --load-ca-privkey /etc/ssl/private/cakey.pem --template /etc/ssl/ldap.info --outfile /etc/ssl/certs/ldap_slapd_cert.pem
Pour indiquer au serveur LDAP où se trouvent les certificats, nous allons créer un fichier "ldif" que nous importerons dans notre serveur.
Bash
vi /etc/ssl/certinfo.ldif
Bash
dn: cn=config add: olcTLSCACertificateFile olcTLSCACertificateFile: /etc/ssl/certs/cacert.pem - add: olcTLSCertificateFile olcTLSCertificateFile: /etc/ssl/certs/ldap_slapd_cert.pem - add: olcTLSCertificateKeyFile olcTLSCertificateKeyFile: /etc/ssl/private/ldap_slapd_key.pem
Importez ensuite ce fichier dans le serveur LDAP pour appliquer les modifications.
Bash
sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f /etc/ssl/certinfo.ldif
Et pour finir, pour autoriser votre serveur à fonctionner en SSL (via le protocole ldaps:///), il vous suffit de modifier le fichier "/etc/default/slapd" et d'ajouter ce protocole dans la liste "SLAPD_SERVICES".
Note : Si vous souhaitez que votre serveur ne fonctionne qu'avec des connexions sécurisées, il suffit de ne mettre que le protocole "ldaps:///" dans la liste et de supprimer les autres.
Bash
vi /etc/default/slapd
Bash
SLAPD_SERVICES="ldap:/// ldapi:/// ldaps:///"
Vous pourrez maintenant vous connecter à votre serveur LDAP de manière sécurisée.
Linux 21/7/2017
Linux 12/12/2014
Linux 4/2/2014
Linux 11/1/2014
Contenu épinglé
Contact
® InformatiWeb-Pro.net - InformatiWeb.net 2008-2022 - © Lionel Eppe - Tous droits réservés.
Toute reproduction totale ou partielle de ce site est interdite et constituerait une contrefaçon sanctionnée par les articles L.335-2 et suivants du Code de la propriété intellectuelle.
Vous devez être connecté pour pouvoir poster un commentaire