close
    • chevron_right

      Installation de FusionDirectory

      Adrien Dorsaz · community.adorsaz.ch / debian-stretch · Thursday, 14 September, 2017 - 13:02 edit · 3 minutes

    Debian Stretch a une version relativement récente de Fusion Directory (1.0.19 qui date de début 2017), mais suite à quelques soucis avec celui-ci, j'ai préféré installer directement la version de Fusion Directory.

    Je profite de l'installation du service sur mon serveur pour prendre note des éléments utiles pour ce contexte.

    La documentation officielle de FusionDirectory se trouve sur leur wiki, en particulier les pages d'installation pour Debian.

    Installation d'un serveur LDAP

    La documentation propose d'installer OpenLDAP. L'installation se passe simplement avec les paquets Debian. Elle vous demandera de saisir un mot de passe pour l'administrateur du service LDAP.

    sudo apt install slapd ldap-utils
    

    Configuration d'OpenLDAP

    Après avoir installé le service, il faut le reconfigurer pour renseigner votre nom de domaine LDAP:

    sudo dpkg-reconfigure slapd
    

    La configuration pose ces questions:

    1. « Voulez-vous omettre la configuration d'OpenLDAP ? » Réponse : Non
    2. « Nom de domaine : » Réponse : votre nom de domaine selon l'explication du message (par exemple, « adorsaz.org »). Faites-attention, ce sera la racine de votre configuration, tout y sera lié.
    3. « Nom d'entité : » Réponse: je ne sais pas très bien, la documentation de FusionDirectory propose de mettre le sous-domaine (donc « adorsaz » pour moi)

    Ensuite, saisissez à nouveau le mot de passe administrateur choisi (deux fois).

    Questions suivantes:

    1. « Module de base de données à utiliser :» Réponse : suivez la recommandation MDB (la documentation de Fusion Directory est un peu vieille et recommande HDB, car MDB n'était pas proposé avant).
    2. « Faut-il supprimer la base de données lors de la purge du paquet ? » Réponse : selon vos besoins, j'ai choisi « Oui » car je m'attends à ce qu'une purge d'un paquet efface tout.
    3. « Faut-il déplacer l'ancienne base de données ? » Réponse : j'ai dit oui, car l'ancienne base était vide.

    Pour être sûr qu'OpenLDAP est en fonction, utilisez la commande systemctl status slapd.

    Ajout des dépots FusionDirectory

    Pour récupérer directement la dernière version de FusionDirectory, il vous faut mettre dans votre fichier /etc/apt/sources.list, les lignes suivantes:

    # main fusion directory
    deb http://repos.fusiondirectory.org/fusiondirectory-current/debian-jessie jessie main
    # fusiondirectory extra repository
    deb http://repos.fusiondirectory.org/fusiondirectory-extra/debian-jessie jessie main
    

    Ajoutez bien les 2 répertoires, même si le second s'appelle extra. Il contient des dépendances nécessaires aux outils de FusionDirectory.

    Bien que ce soit écrit jessie dans les lignes, les paquets peuvent être installés sur Debian Stretch pour l'instant d'après mon expérience.

    Cette petite ambiguïté est finalement pratique pour installer facilement FusionDirectory et ses dépendances aux dernières versions:

    apt install -t jessie -f fusiondirectory fusiondirectory-schema
    

    Configuration du schéma LDAP pour FusionDirectory

    Pour configurer FusionDirectory dans votre nouvelle base LDAP, il faut installer le paquet fusiondirectory-schema (voir ci-dessus).

    Vous pouvez lister les schémas installés avec la commande suivante:

    sudo fusiondirectory-insert-schema -l
    

    FusionDirectory a besoin au moins d'installer les schémas suivants dans cet ordre:

    # Schémas pour OpenLDAP:
    sudo fusiondirectory-insert-schema /etc/ldap/schema/core.schema
    sudo fusiondirectory-insert-schema /etc/ldap/schema/cosine.schema
    sudo fusiondirectory-insert-schema /etc/ldap/schema/nis.schema
    sudo fusiondirectory-insert-schema /etc/ldap/schema/inetorgperson.schema
    # Schémas pour FusionDirectory
    sudo fusiondirectory-insert-schema /etc/ldap/schema/fusiondirectory/core-fd-conf.schema
    sudo fusiondirectory-insert-schema /etc/ldap/schema/fusiondirectory/core-fd.schema
    sudo fusiondirectory-insert-schema /etc/ldap/schema/fusiondirectory/ldapns.schema
    sudo fusiondirectory-insert-schema /etc/ldap/schema/fusiondirectory/template-fd.schema
    

    Quand vous installerez de nouveaux plugins pour FusionDirectory, vous aurez aussi sûrement besoin d'installer les schémas des plugins (un de configuration et un autre système).

    Attention, lors des mises à jour de FusionDirectory, il faut bien lire les guides de migrations sur leur Wiki pour vérfier si des schémas doivent être mis à jour.

    Installation de FusionDirectory

    La commande d'installation du paquet de FusionDirectory aura installé et préparé le site web qui permettra d'accéder à FusionDirectory.

    Ajustez la configuration Apache2 et PHP à vos usages (personnellement, j'utilise php-fpm pour servir mes sites).

    Ensuite, accédez au lien que vous aurez configuré et suivez les instructions d'installation.

    Enfin, vous pourrez modifier les paramétrages de Fusion Directory.

    Activation du module OpenLDAP memberOf à faire avant de créer les groupes

    La configuration d'OpenLDAP par défaut ne vous permettra pas de faire des recherches du style les membres du groupe xmpp-user peuvent se connecter à mon serveur XMPP.

    Pour pouvoir effectuer cette requête, il faut modifier la configuration d'OpenLDAP pour:

    1. Demander de charger le module memberOf
    2. Demander de charger le module d'intégrité des données
    3. Configurer le module memberOf
    4. Configurer le module d'intégrité

    Pour sa configuraiton, OpenLDAP passe par l'utilisation de la commande ldapmodify et des fichiers de configurations *.ldiff.

    EN COURS D'ECRITURE

    Sources