Activer l’authentification LDAP sous Netdisco avec Active Directory (AD)

Netdisco permet d’intĂ©grer une authentification LDAP centralisĂ©e, notamment via Active Directory (AD). GrĂące Ă  LDAPS (LDAP sĂ©curisĂ©), vous pouvez garantir la sĂ©curitĂ© des connexions. Voici comment configurer cette authentification dans Netdisco.

Étape 1 : Modifier le fichier de configuration

Pour configurer LDAP dans Netdisco, modifiez le fichier de configuration :

  • DĂ©ploiement classique : Fichier netdisco.yml.
  • DĂ©ploiement Docker : Fichier deployment.yml.

Exemple de configuration LDAP pour Active Directory

ldap:
  servers:
    - 'ldaps://ad.mydomain.com'  # Utilisation de LDAPS, port 636 par défaut
  user_string: '%USER%@mydomain.com'  # Format UPN pour AD
  base: 'dc=mydomain,dc=com'  # Base de recherche dans l'AD
  scope: sub  # Recherche dans tout le sous-arbre LDAP
  opts:
    version: 3  # Utilisation de LDAPv3
    debug: 1  # Active le mode débogage pour plus de détails dans les logs
  tls_opts:
    verify: 'require'  # Vérification des certificats
    ca_file: '/etc/ssl/certs/ca-certificates.crt'  # Chemin vers le certificat CA

Explication des paramĂštres

  1. servers : Définit le serveur LDAP avec LDAPS. Le port 636 est utilisé par défaut pour LDAPS.
  2. user_string : Permet aux utilisateurs de s’authentifier directement via leur UPN (%USER%@mydomain.com), sans besoin d’un utilisateur de service.
  3. base : DĂ©finit la base de recherche dans l’annuaire Active Directory.
  4. scope: sub : Permet de rechercher dans l’ensemble du sous-arbre LDAP Ă  partir de la base spĂ©cifiĂ©e.
  5. opts.version: 3 : Force l’utilisation de LDAPv3, standard pour les environnements modernes.
  6. opts.debug: 1 : Active le dĂ©bogage LDAP pour obtenir des dĂ©tails supplĂ©mentaires dans les logs, utiles pour diagnostiquer des problĂšmes d’authentification.
  7. tls_opts.verify: 'require' : Active la vérification des certificats pour sécuriser la connexion.
  8. ca_file : Chemin vers le certificat CA utilisé pour vérifier le serveur LDAP.

Utilisation d’un utilisateur de service (optionnel)

Si votre configuration LDAP nécessite un utilisateur de service (Bind) pour effectuer les recherches LDAP, vous pouvez ajouter les options suivantes :

proxy_user: 'cn=binduser,dc=mydomain,dc=com'
proxy_pass: 'mot_de_passe_bind'

Cependant, dans notre exemple, l’authentification directe via user_string Ă©vite ce besoin.

Étape 2 (optionnel) : Montage des certificats SSL dans Docker

Pour les déploiements Docker, assurez-vous que les certificats SSL sont disponibles dans le conteneur en ajoutant un volume dans docker-compose.yml :

services:
  netdisco:
    volumes:
      - ./config:/home/netdisco/environments
      - ./logs:/home/netdisco/logs
      - ./nd-site-local:/home/netdisco/nd-site-local
      - /etc/ssl/certs:/etc/ssl/certs  # Monte les certificats sur le conteneur Docker

Étape 3 : RedĂ©marrer Netdisco

AprÚs avoir modifié la configuration, redémarrez Netdisco :

docker-compose down
docker-compose up -d

Conclusion

Configurer LDAP sous Netdisco pour Active Directory est une mĂ©thode pratique pour centraliser l’authentification des utilisateurs. GrĂące Ă  LDAPS, les Ă©changes sont sĂ©curisĂ©s, et le mode dĂ©bogage permet de diagnostiquer efficacement les erreurs en cas de problĂšme.

Pour plus d’informations sur la configuration LDAP dans Netdisco, consultez la documentation officielle sur Metacpan.