Réplication LDAP
Avec le module Scribe ou le module Horus, il est possible de mettre en place rapidement une réplication d'annuaire LDAP vers un module Seshat.
La réplication utilise le mécanisme syncrepl (LDAP Sync Replication engine).
Syncrepl est plus robuste que son prédécesseur slurpd et permet de mettre en place des architectures beaucoup plus complexes.
La configuration actuelle permet au client (serveur Seshat) de venir recopier les informations de son fournisseur (serveur Scribe ou Horus).
Attention
Il est déconseillé de répliquer des serveurs Scribe et des serveurs Horus sur le même client Seshat.
Pré-requis
Serveur Scribe ou Horus
Pour configurer le fournisseur il faut adapter les informations dans l'interface de configuration du module en mode expert dans l'onglet Openldap
.
- la réplication LDAP du côté fournisseur doit être activée
- par défaut, les communications LDAP ne sont pas chiffrées. Pour mettre en place une communication chiffrée entre le fournisseur et le client, il faut passer la variable
Activer LDAP sur le port SSL
àoui
ou àuniquement
.
Attention
Selon la configuration mise en place le port 389 et/ou le port 636 doivent être ouverts :
- du serveur Seshat vers le serveur Scribe ou Horus ;
- si possible dans le sens inverse.
Mise en place
Génération du fichier de configuration
Sur le module Scribe ou Horus, exécuter la commande active_replication.py
.
Cette commande permet de générer dans /root/
le fichier de configuration propre au serveur nommé : replication-<numero_etab>.conf
.
La commande permet de paramétrer plusieurs éléments :
Répliquer également les groupes
: si la réponse est laissée ànon
, seuls les comptes utilisateurs seront répliqués.Certains connecteurs EoleSSO disponibles sur le module Seshat nécessitent de répliquer les groupes en plus des utilisateurs ;
Ajouter des uid à exclure de la réplication
: en répondantoui
à cette question, il est possible de saisir une liste de comptes à ne pas répliquer (administrateur locaux, comptes réservés, ...).Par défaut seul le compte
admin
n'est pas répliqué ;Adresse utilisée pour accéder au module depuis le client
: adresse IP ou nom de domaine que le client de réplication devra utiliser pour interroger l'annuaire du module. L'adresse proposée par défaut est celle de l'interface eth0 du module mais cette valeur dépend de l'architecture réseau mise en place et notamment de la configuration des pare-feu présents entre le module EOLE et le client de réplication ;Selon la configuration du serveur OpenLDAP du module, le choix du protocole à utiliser pour la réplication peut être proposé. Si à la question
Utiliser le protole ldaps (port 636) pour la réplication
la réponse est laissée àoui
, la réplication utilisera le protocole LDAPS sinon elle utilisera le protocole LDAP.
Mise en place manuelle
Il faut copier le fichier /root/replication-<numero_etab>.conf
du fournisseur dans le dossier /etc/ldap/replication
du serveur Seshat.
Puis, sur le module Seshat, il faut exécuter la commande gen_replication.py
.
Mise en place via Zéphir
Si le serveur fournisseur (Scribe ou Horus) et le serveur Seshat sont enregistrés sur le même serveur Zéphir, celui-ci peut se charger de la mise en place de la configuration sur le serveur Seshat.
La connexion à Zéphir est proposée automatiquement en fin d'exécution du script :
Veuillez saisir votre identifiant Zéphir (rien pour annuler l'envoi) :
Attention
Il est impératif de connaître l'identifiant Zéphir du serveur Seshat pour finaliser la transaction.
Identifiant Zéphir du serveur de réplication (rien pour annuler l'envoi) :
Les configurations de réplication envoyées via Zéphir sont consultables dans l'application web Zéphir en utilisant le lien configurations de réplication LDAP
disponible sur la page décrivant l'état du serveur Seshat.
Truc & astuce
Les configurations envoyées via Zéphir sont stockées dans le répertoire /etc/ldap/replication/zephir
du serveur Seshat.
Suivi et débogage
Truc & astuce
Pour obtenir des informations concernant la réplication, il faut paramétrer slapd avec le log level 16384.
Cela se traduit par la ligne de commande suivante :
slapd -f /etc/ldap/slapd.conf -u openldap -g openldap -d 16384
Attention, ce mode peut être très verbeux.