Trucs & astuces Synchronisation OpenLDAP ⇄ Active Directory
Introduction
Le serveur Scribe possède deux annuaires, un annuaire OpenLDAP et un annuaire Active Directory.
L'annuaire Active Directory est alimenté par le contenu de l'annuaire OpenLDAP.
L'annuaire OpenLDAP est sur le conteneur maître. L'annuaire Active Directory est dans le conteneur addc
.
La commande diagnose
permet notamment de connaître l'état du service de synchronisation LSC[1] :
*** Serveur de fichiers
Test du fichier de configuration :
. Syntaxe => Ok
Statut du service winbindd :
. Service winbindd => Ok
. uid/gid disponibles => Ok
. Etat du cache => Ok
. Connexions samba => 0
. Ticket kerberos => Ok
. Synchronisation LSC => Ok
Synchronisation
La commande suivante permet de forcer la synchronisation complète des comptes depuis le maître :
# /usr/bin/lsc -f /etc/lsc -s all -c all -t 1
AttentionSuppression d'un compte unique
Les comptes utilisateurs AD ne sont pas supprimés par la synchronisation en temps réel qui se contente uniquement de les désinscrire de tous leurs groupes autres que Domain Users
.
Seule une synchronisation complète permet le nettoyage des comptes supprimés.
La synchronisation complète est exécutée toutes les nuits.
AttentionDéplacement de comptes
Dans l'annuaire Active Directory, seul le déplacement des entrées utilisateur et ordinateur est supporté par la synchronisation.
L'automatisation de la classification de ces objets peut être mise en place grâce à la fonctionnalité eole-ad-dc-ou
.
Le déplacement des groupes est susceptible d'entraîner des dysfonctionnements.
Changement de mot de passe
Forcer le changement de mot de passe d'un utilisateur (exemple avec l'utilisateur admin
) depuis le maître :
# changepasswordeole.pl admin Eole123$
Remarque
Si la commande échoue avec un message qui ressemble au suivant, vérifier que le mot de passe proposé respecte la politique de sécurité mise en place sur le serveur AD :
Unable to modify unicodePwd for CN=admin,CN=Users,DC=domscribe,DC=ac-test,DC=fr (0000052D: Constraint violation - check_password_restrictions: the password does not meet the complexity criteria!)
Relancer le service AD-DC
Le service samba-ad-dc est installé dans le conteneur addc
, pour le relancer, exécuter :
# ssh addc "service samba-ad-dc restart"
Liste d'utilisateurs
Lister tous les utilisateurs AD depuis le maître :
# ssh addc "ldbsearch -H /var/lib/samba/private/sam.ldb -S '(objectclass=user)' cn | grep ^cn:"
ou :
# ssh addc "samba-tool user list"
Attributs utilisateur
Chercher un utilisateur depuis le maître :
# ssh addc "ldbsearch -H /var/lib/samba/private/sam.ldb -S cn=<login>"
ou :
# ssh addc "samba-tool user show <login>"
Journaux
Les journaux de l'outil LSC sont disponibles dans :
-
/var/log/lsc/
pour les synchronisations manuelles ; -
/var/log/rsyslog/local/lsc/
pour les opérations réalisées par le démon.
Les journaux du service AD-DC sont disponibles sur le maître dans le répertoire /var/log/samba-ad-dc/
qui est un lien symbolique.