33
Migration d'annuaires propriétaires vers OpenLDAP Clément OUDOT RMLL 12 juillet 2012

Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

Embed Size (px)

Citation preview

Page 1: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

Migration d'annuaires propriétaires vers OpenLDAP

Clément OUDOTRMLL 12 juillet 2012–

Page 2: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

2

Sommaire● SUN/Oracle DS et standard LDAP● Organiser sa migration vers OpenLDAP● Retours d'expérience● Présentation de LinID OpenLDAP Manager

Page 3: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

3

Présentation

Page 4: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

4

Clément OUDOT● Administrateur LDAP depuis 2003 à LINAGORA● LinID Dream Team Manager : http://linid.org ● Leader du projet LDAP Tool Box :

http://ltb-project.org ● Leader du projet LemonLDAP::NG :

http://lemonldap-ng.org

Page 5: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

5

SUN/Oracle DS et standard LDAP

Page 6: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

6

Libertés prises avec le schéma● Non respect de contraintes sur les classes d'objet

structurelles :● Plusieurs classes structurelles de hiérarchie différente

peuvent cohabiter● Une entrée peut n'avoir aucune classe structurelle

Page 7: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

7

Libertés prises avec le schéma● Règles de comparaison incohérentes avec les

syntaxes (cf. par exemple l'attribut icsDomainNames)

● Divergences par rapport aux schémas standards des RFC, par exemple :● l'attribut « membre d'un groupe » est facultatif dans

SUN/Oracle DS● SUN/Oracle DS autorise la recherche partielle sur les

DN● SUN/Oracle DS autorise les recherches d'ordre sur

l'attribut « name »

Page 8: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

8

Libertés prises avec les données● Attributs vides autorisés● Encodages différents de UTF-8 autorisés dans une

syntaxe Directory String● Chaînes de caractères diverses dans une syntaxe

Distingushed Name● Plusieurs valeurs pour les booléens (true, TRUE,

1, ...)● Aucun contrôle sur les données binaires

Page 9: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

9

Politique des mots de passe● La politique des mots de passe n'est pas une RFC

mais un draft● SUN/Oracle DS implémente la politique avec des

attributs différents de ceux définis dans le draft● SUN/Oracle DS implémente des fonctions

supplémentaires par rapport au draft (contrôle sur les majuscules, minuscules, etc.)

Page 10: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

10

Droits d'accès● SUN/Oracle DS utilise des ACI (droits définis

directement dans les entrées LDAP)● SUN/Oracle DS permet d'utiliser « accept » ou

« deny »● Attention également :

● Aux relations parent (gestion de la hiérarchie)● Au dé-référencement d'attribut

Page 11: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

11

Organiser son projet de migration

Page 12: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

12

Les grandes étapes 1/2● Analyse de l'existant :

● Logs● Schéma, données● Applications clientes (avec les extensions LDAP

utilisées)● ACI● Modules activés

● Installation d'une plate-forme cible● Conversion des données, des schémas, des ACI

en ACL

Page 13: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

13

Les grandes étapes 2/2● Activation des overlays correspondant aux

modules activés● Conversion des données● Import des données● Bascule des applications

Page 14: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

14

Analyse des logs● Les logs SUN/Oracle sont très proches du format

de logs OpenLDAP (même souche logicielle)● Des scripts existent (voir lien de téléchargement

sur http://linid.org) pour analyser ces logs et fournir des statistiques :● Types d'opération utilisées● Volumétrie (pics et moyennes)

● L'analyse de ces chiffres permet de dimensionner correctement l'architecture cible

Page 15: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

15

20/08/11 21/08/11 22/08/11 23/08/11 24/08/11 25/08/11 26/08/11 27/08/11 28/08/110,0

0,5

1,0

1,5

2,0

2,5

3,0

3,5

Étendue

Déconnexion

Authentification

Renommage

Ajout

Modification

Suppression

RechercheOpé

ratio

ns

par

sec

ond

eExemple de graphique obtenu

Page 16: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

16

Conversion des données● Les données doivent être retravaillées avant d'être

injectées dans OpenLDAP (classes d'objet, attributs, encodage des caractères, respect des syntaxes, etc.)

● Un script Perl est disponible sur LTB project (http://ltb-project.org), nommé convertldif.pl :● Exclusion de branches● Exclusion d'attributs ou de valeurs d'attributs● Mapping d'attributs

Page 17: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

17

La théorie du big bang● Une bascule en mode big bang est très risquée et

donc fortement déconseillée● Il est possible de faire vivre les deux systèmes en

parallèle le temps de ma migration :● Première phase : plate-forme SUN/Oracle maître avec

synchronisation des données vers OpenLDAP● Deuxième phase : plate-forme OpenLDAP maître avec

synchronisation des données vers SUN/Oracle● Troisième phase : fin de la bascule de toutes les

applications, suppression de la plate-forme SUN/Oracle

Page 18: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

18

Retours d'expérience

Page 19: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

19

Ministère des Finances (ex-DGCP)● 150000 entrées● Migration big-bang des

applications d'écriture● Migration progressive des

applications de lecture● Développements

spécifiques dans OpenLDAP pour la gestion de la politique des mots de passe (avant l'existence de l'overlay ppolicy)

Page 20: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

20

Ministère de l'Agriculture● Migration d'annuaire

incluse dans un projet plus vaste de refonte du système annuaire et messagerie

● Plusieurs centaines de milliers d'entrées

● Synchronisation temps réel des mots de passe d'OpenLDAP vers SUN pendant la durée de la migration (LSC project –http://lsc-project.org)

Page 21: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

22

LinID OpenLDAP Manager

Page 22: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

De slapd.conf à cn=config● slapd.conf :

● Depuis la création d'OpenLDAP, la configuration est faite dans slapd.conf

● Toute modification de configuration nécessite un arrêt/relance d'OpenLDAP

● cn=config :● Depuis OpenLDAP 2.4, la configuration peut être

stockée en LDAP, c'est le backend cn=config● Modifier un paramètre de configuration revient à faire

une modification LDAP● La configuration est prise en compte automatiquement

Page 23: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

Avantages/inconvénients de cn=config● Avantages :

● Configuration prise en compte sans redémarrage● Réplication● Administration à distance

● Inconvénients :● Peu intuitif● Pas de commentaire● Pas de suppression (pour l'instant)● Sauvegarde/restauration de la configuration plus

complexe

Page 24: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

Exemple : changer le niveau de log● Avec slapd.conf :Loglevel 256● Avec cn=config :echo "dn: cn=config changetype: modifyreplace: olcLogLevelolcLogLevel: 256" | ldapmodify -x -D cn=manager,cn=config -W

Page 25: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

LinID OpenLDAP Manager● LinID OpenLDAP Manager (LinID OM) est basé

sur LinID Directory Manager (LinID DM)● Principales fonctionnalités :

● Gestion des backends● Gestion des overlays● Auto détection de la version d'OpenLDAP● Gestion du cn=monitor● Configuration de plusieurs instances d'OpenLDAP● Gestion du schéma

Page 26: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

Création d'une connexion

Page 27: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

Liste des connexions

Page 28: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

Édition du schéma

Page 29: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

Configuration d'un overlay

Page 30: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

31

La fin est proche...

Page 31: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

32

Merci● Merci :

● RMLL et les organisateurs de la session● Société LINAGORA

● Restons en contact :● Identica: @coudot● Twitter: @clementoudot @LinID_FOSS ● IRC: KPTN #LinID@freenode

Page 32: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

33

Questions ?

Page 33: Migration d’annuaires propriétaires vers OpenLDAP : retours d’expérience et bonnes pratiques

Merci de votre attention

http://www.linid.org

Logiciels et services Open Source80 rue Roque de Fillol l 92800 PUTEAUXTel : 0810 251 251 l Fax : +33 1 46 96 63 64www.linagora.com