Outils pour utilisateurs

Outils du site


braveo:docinstallsrvldap

Différences

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


braveo:docinstallsrvldap [2022/09/04 21:02] (Version actuelle) – créée - modification externe 127.0.0.1
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/*
 +
 +
 +
 +
  

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki