Outils pour utilisateurs

Outils du site


braveo:docinstallsrvldap

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

braveo:docinstallsrvldap [2016/07/19 15:36] (Version actuelle)
Ligne 1: Ligne 1:
 +
 +<​html>​
 +<a rel="​license"​ href="​http://​creativecommons.org/​licenses/​by-sa/​2.0/​fr/"><​img alt="​Creative Commons License"​ style="​border-width:​0"​ src="​http://​i.creativecommons.org/​l/​by-sa/​2.0/​fr/​88x31.png"​ /></​a><​br />
 +</​html>​
 +
 +====== Installation du Serveur LDAP ======
 +
 +Avant de commencer, il faut quelques tutoriels ​
 +
 +[[http://​www-sop.inria.fr/​members/​Laurent.Mirtain/​ldap-livre.html|1er Tutoriel LDAP]]
 +
 +[[http://​www.developpez.net/​forums/​d531504/​applications/​developpement-reseaux/​cours-tutoriels-annuaires-ldap/​| Une liste de tutoriel ]]
 +
 +==== Organisation ====
 +bon j'​avoue que je ne sait pas trop comment organiser le ldap... ​
 +Je vais essayer quand même. Je propose que les comptes soient des numéros d'​adhérents. Ce qui devrait permettre de pouvoir changer l'​adresse mail, le nom(pratique pour changer de pseudo), l'​adresse le numéro de téléphone ...etc
 +ce qui identifiera la personne sur le système c'est son numéro d'​adhérent.
 +
 +ensuite je vois le ldap comme des répertoires ou l'on organise les fichiers(objets)
 +donc je verrais bien un répertoire Users pour mettre les utilisateurs dedans, un répertoire Groups pour mettre les groupes(je ne sait pas si il y a besoin), un répertoire association pour y mettre les associations et enfin un répertoire Fonction ou l'on mettrais dedans les fonctions des associations(président de tel association,​ trésorier, responsable mairie...etc) Bon je ne sais pas si les répertoire association,​ Fonction et Groups vont servir ​ mais au cas ou y penser ne fais pas de mal. et je me dit que ptre qu'​infini pourrait s'en servir ....
 +
 +Ha oui au lieu de dire répertoire nous allons utiliser le terme organizationalUnit ou plus exactement O. U. 
 +
 +==== Installation ====
 +Attention ça devrait être intense :
 +<code C>
 +aptitude install slapd ldap-utils
 +</​code>​
 +ouf ce fut dur...
 +
 +
 +==== Configuration ====
 +On va juste configurer le strict minimum pour que ldap fonctionne.
 +Nous reviendrons dessus pour finir la conf plus tard 
 +
 +
 +Alors il faut editer le fichier /​etc/​ldap/​slapd.conf
 +
 +rechercher les lignes
 +<code C>
 +# The base of your directory in database #1
 +suffix ​         "​blabla"​
 +</​code> ​
 +et remplacer par 
 +<code C>
 +# The base of your directory in database #1
 +suffix ​         "​dc=mdl29,​dc=net"​
 +</​code> ​
 +Par convention on met le meme suffix ldap que celui du dns. Comme pour l'​instant nous n'​avons pas le nom de domaine braveo j'ai pris mdl29
 +
 +Nous allons activer le compte admin  dans le ldap avec le mot de passe "​password"​
 +Remarquez que nous gardons le suffix bon c'est plus facile ​
 +
 +toujours dans le fichier /​etc/​ldap/​slapd.conf
 +
 +<code C>
 +rootdn ​ "​cn=admin,​dc=mdl29,​dc=net"​
 +rootpw ​ password
 +</​code> ​
 +bon le password est en clair c'est pas terrible ​
 +on va le hasher en sha
 +dans une console vous tapez 
 +<code C>
 +  slappasswd -h {sha}
 +</​code>​
 +il va vous demander le mot de passe et le redemander
 +<code C>
 +New password: ​
 +Re-enter new password: ​
 +</​code>​
 +si vous avez mis password comme mot de passe il devrait vous donner ​
 +<code C> 
 +{SHA}W6ph5Mm5Pz8GgiULbPgzG37mj9g=
 +</​code>​
 +
 +vous le copiez toute la ligne et la coller dans le fichier slapd.conf après le rootpw
 +ce qui donne 
 +<code C>
 +rootdn ​ "​cn=admin,​dc=mdl29,​dc=net"​
 +rootpw ​ {SHA}W6ph5Mm5Pz8GgiULbPgzG37mj9g=
 +</​code>​
 +
 +bien maintenant, il va falloir remplacer toutes les occurrences ou apparait "​cn=admin,​ dc = lallal" ​ par "​cn=admin,​dc=mdl29,​dc=net"​
 +
 +<code C>
 +access to attrs=userPassword,​shadowLastChange
 +        by dn="​cn=admin,​dc=mdl29,​dc=net"​ write
 +        by anonymous auth
 +        by self write
 +        by * none
 +</​code> ​
 +
 +ce qui change les droits sur le ldap pour les champs userPassword et shadowLastChange . 
 +l'​admin a full accès, il peut lire et écrire
 +le propriétaire peut aussi changer ses propres champ
 +et enfin aucun accès pour le reste du monde 
 +
 +et enfin nous autorisons tout le monde à lire le ldap
 +
 +<code C>
 +access to *
 +        by dn="​cn=admin,​dc=mdl29,​dc=net"​ write
 +        by * read
 +</​code> ​
 +
 +Nous allons faire un petit test de connexion.
 +Sur le serveur nous allons redémarrer le LDAP pour qu'ils prennent en compte nos modifications. ​
 +
 +   /​etc/​init.d/​slapd restart
 +
 +ensuite nous allons faire une recherche dans le ldap en se connectant avec le compte admin du ldap
 +<code C>
 +ldapsearch -D "​cn=admin,​dc=mdl29,​dc=net"​ -x -W
 +</​code> ​
 +
 +Il ne trouve personne mais il ne donne pas d'​erreur. ​
 +Le LDAP fonctionne ​
 + 
 +Maintenant on va ajouter des champs dans le ldap.
 +Pour ce faire nous allons modifier le schéma en ajoutant la dernière version du fichier qmail.schema
 +
 +Il est disponible ​ à l'​adresse:​
 +
 +Http://​cvs.mandriva.com/​cgi-bin/​viewvc.cgi/​SPECS/​openldap/​qmail.schema
 +
 +Il faut le copier dans le répertoire /​etc/​ldap/​schéma.
 +
 +Ensuite il faut le déclarer dans le fichier /​etc/​ldap/​slapd
 +
 +apres le bloc 
 +  # Schema and objectClass definitions
 +  include ​        /​etc/​ldap/​schema/​core.schema
 +  include ​        /​etc/​ldap/​schema/​cosine.schema
 +  include ​        /​etc/​ldap/​schema/​nis.schema
 +  include ​        /​etc/​ldap/​schema/​inetorgperson.schema
 +Il faut ajouter une ligne 
 +  include ​        /​etc/​ldap/​schema/​qmail.schema
 +
 +enregistrer et redémarrer
 +
 +==== création des users ====
 +
 +bien notre LDP fonctionne mais il est vide. Nous allons donc le remplir avec un fichier au format ldif. pour l'​exemple braveo.ldif
 +
 +heu l'​utilisateur ici a plus d'​information qu'on en a besoin ​
 +mais ça permet d'​illustrer le contenu d'un ldap
 +  dn: dc=mdl29,​dc=net
 +  objectClass:​ organizationalUnit
 +  objectClass:​ dcobject
 +  dc: mdl29
 +  ou: mdl29
 +  ​
 +  ​
 +  dn: ou=Users,​dc=mdl29,​dc=net
 +  objectClass:​ organizationalUnit
 +  ou: Users
 +  ​
 +  ​
 +  dn: ou=groups,​dc=mdl29,​dc=net
 +  objectClass:​ organizationalUnit
 +  ou: groups
 +  ​
 +  ​
 +  dn: ou=Fonctions,​dc=mdl29,​dc=net
 +  objectClass:​ organizationalUnit
 +  ou: Fonctions
 +  ​
 +  ​
 +  dn: ou=Associations,​dc=mdl29,​dc=net
 +  objectClass:​ organizationalUnit
 +  ou: Associations
 +  ​
 +  dn: uid=42,​ou=Users,​dc=mdl29,​dc=net
 +  objectClass:​ top
 +  objectClass:​ person
 +  objectClass:​ organizationalPerson
 +  objectClass:​ inetOrgPerson
 +  objectclass:​ qmailuser
 +  mailhost: mail1.mdl29.net
 +  cn: bjensen
 +  displayName:​ Babs Jensen
 +  sn: Jensen
 +  givenName: Barbara
 +  initials: BJJ
 +  uid: 42
 +  mail: bjensen@mdl29.net
 +  telephoneNumber:​ +1 408 555 1862
 +  facsimileTelephoneNumber:​ +1 408 555 1992
 +  mobile: +1 408 555 1941
 +  roomNumber: 0209
 +  carLicense: 6ABC246
 +  o: Siroe
 +  ou: Product Development
 +  departmentNumber:​ 2604
 +  employeeNumber:​ 42
 +  employeeType:​ full time
 +  preferredLanguage:​ fr, en-gb;​q=0.8,​ en;q=0.7
 +  userPassword:​ 123456
 +  labeledURI: http://​www.siroe.com/​users/​bjensen My Home Page
 +
 +  ​
 +il faut stopper le ldap
 +  /​etc/​init.d/​slapd stop
 +
 +supprimer le les fichier du ldap
 +
 +  rm -rf /​var/​lib/​ldap/​*
 +
 +ensuite peupler le ldap
 +
 +  slapadd -l braveo.ldif ​
 +
 +changer les droits sur le répertoireldap
 +
 +  chown -R openldap:​openldap /​var/​lib/​ldap/​
 +
 +
 +et démarrer le ldap
 +
 +  /​etc/​init.d/​slapd start
 +
 +et voilà un ldap qui fonctionne
 +
 +
 +pour le tester
 +
 +  ldapsearch -x mail=bjensen@mdl29.net -bdc=mdl29,​dc=net -h localhost
 +
 +===== Installation sous debian Squeeze =====
 +
 +Pour installer notre serveur ldap, nous allons partir de la configuration précédente.
 +
 +
 +
 +==== Installation ====
 +Tout d'​abord,​ installer le daemon serveur slapd de OpenLDAP et le paquet ldap-utils, un paquet contenant des utilitaires de gestion de LDAP.
 +
 +   ​aptitude install slapd ldap-utils
 +
 +
 +<note important>​Le fichier de configuration se trouve dorénavant dans /​usr/​share/​slapd/​slapd.conf
 +</​note>​
 +Nous allons garder le même emplacement pour notre fichier de configuration /​etc/​ldap/​slapd.conf
 +
 +**Nous utilisons le fichier slapd.conf utilisé lors de l'​installation précédente.**
 +
 +Pour cela, il suffit de modifier le fichier /​etc/​default/​slapd pour lui indiquer le bon chemin. ​
 +
 +fichier : **/​etc/​default/​slapd**
 +
 +   ​SLAPD_CONF=/​etc/​ldap/​slapd.conf
 +
 +
 +==== Exportation du ldap ====
 +Cette manipulation,​ nous l'​effectuons sur le serveur ldap en service afin de le placer sur le nouveau serveur.
 +
 +   ​slapcat -l braveo.ldif
 +
 +Ensuite, copiez le fichier braveo.ldif ​ quelque part sur votre nouveau serveur. ​
 +
 +==== Importation ​ du ldap ====
 +
 +   ​slapadd -l braveo.ldif ​ -f /​etc/​ldap/​slapd.conf
 +
 +
 +Changer les droits sur le répertoire ldap
 +
 +   chown -R openldap:​openldap /​var/​lib/​ldap/​
 +
 +
 +Redémarrage du serveur ldap
 +
 +   /​etc/​init.d/​slapd start
 +
 +
 +<note important>​ Important : si vous faites une migration d'un serveur ldap, un message d'​erreur
 +peut apparaître</​note>​
 +
 +Penser à vider l'​annuaire existant :
 +
 +
 +   sudo rm -rf /​var/​lib/​ldap/​*
 +
 +
 +
 +
  
braveo/docinstallsrvldap.txt · Dernière modification: 2016/07/19 15:36 (modification externe)