Heterogeneserveurldapgroupe5

TABLE DES MATIERES

1.Présentation du projet
1.1 Objectif du projet
1.2 Le protocole LDAP
1.2.1 Introduction
1.2.2 Le Directory Information Tree
1.2.3 Les concepts de LDAP
1.2.4 Le protocole définit
1.2.5 Les Attributs
1.3 Pré-requis
1.4 Fonctionnement du projet
2 Réalisation du Projet
2.1 Configuration de l’annuaire LDAP
2.2 Configuration de samba

1 Présentation du projet

1.1 Objectif du projet :
L’objectif du projet est de réalisé un annuaire sur le serveur LDAP qui permet de se connecté a travers une authentification sur un système d’ exploitation Windows ou Linux grâce au service Samba.

1.2 Le protocole LDAP

1.2.1 Introduction :
LDAP est un protocole qui fournit à l'utilisateur des commandes pour se connecter ou se déconnecter, pour rechercher, comparer, créer, modifier ou effacer des entrées des services d'annuaire. Il a cependant évolué pour représenter une norme pour les systèmes d'annuaires, incluant un modèle de données, un modèle de nommage, un modèle fonctionnel basé sur le protocole LDAP, un modèle de sécurité et un modèle de réplication.

1.2.2 Le Directory Information Tree :
Le Directory Information Tree, c’est une structure arborescente dont chacun des nœuds est constitué d'attributs associés à leurs valeurs. Les serveurs LDAP sont conçus pour stocker une grande quantité de données mais de faible volume et pour accéder en lecture très rapidement à celles-ci grâce au modèle hiérarchique.

image1yi.jpg

1.2.3 Les concepts de LDAP :
LDAP est un protocole d'annuaire standard et extensible. Il fournit :

• le protocole d’accès — comment accéder à l’information contenue dans l’annuaire,
• un modèle d’information — le type d’informations contenues dans l’annuaire,
• un modèle de nommage — comment l’information est organisée et référencée,
• un modèle fonctionnel — comment on accède et met à jour l’information,
• un modèle de sécurité — comment données et accès sont protégés,
• un modèle de duplication — comment la base est répartie entre serveurs,
• des API — pour développer des applications clientes,
• LDIF — un format d’échange de données.

1.2.4 Le protocole définit :
Le protocole définit :

• Comment s’établit la communication client-serveur :
- commandes pour se connecter ou se déconnecter, pour rechercher, comparer, créer, modifier ou effacer des entrées.
• Comment s’établit la communication serveur-serveur :
- échanger leur contenu et le synchroniser (replication service)
- créer des liens permettant de relier des annuaires les uns aux autres (referral service).
• Le format de transport de données :
- pas l’ASCII (comme pour http, smtp…) mais le Basic Encoding Rules (BER), sous une forme allégée (appelée LBER : Lightweight BER)
• Les mécanismes de sécurité :
- méthodes de chiffrement et d’authentification
- mécanismes de règles d’accès aux données.
• Les opérations de base:
- interrogation : search, compare
- mise à jour : add, delete, modify, rename
- connexion au service : bind, unbind, abandon

1.2.5 Les Attributs :
Un type d’attribut (ou attribut) est caractérisé par :
• Un nom, qui l’identifie
• Un Object Identifier (OID), qui l’identifie également
• S’il est mono ou multi-valué
• Une syntaxe et des règles de comparaison (matching rules)
• Un format ou une limite de taille de valeur qui lui est associée

type d’attribut valeur d’attribut
cn: Ibrahim
uid: Sibrahim
Telephonenumber +33 (0)1 2345 6789
mail: moc.emca|miharbI.biahuoS#moc.emca|miharbI.biahuoS
roomnumber: C105

1.3 Pré-requis :
• Un Serveur OpenLdap sur une distribution fedora 7.0
• Un Serveur Samba avec les services NSS et PAM
• Un Client Windows 2000

1.4 Fonctionnement du projet :
Etape de connexion sur un serveur LDAP :

image2mq.jpg

2 Réalisation du Projet

2.1 Configuration annuaire LDAP :

/etc/openldap/ldap.conf
Fichier de configuration permettant de fournir les informations nécessaires au commandes shellde type ldapsearch, ldapmodify, etc.

/etc/openldap/slapd.conf
Fichier de configuration du démon /etc/init.d/ldap(slapdet slurpd)

On intègre le schéma samba en plus des schémas par défaut :

image1ff.jpg

On crée notre racine :

image2gx.jpg

On donne le nom de domaine, le mot de passe du root, et la directory ou recherché la base de donnée
Rootdn et rootpw sont des information confidentiel, ils doivent donc etre crypté, pour cela on peut leprogramme slappsswd qui affichera dans le shell chiffré en SSHA et il faudra plus le copier dans le fichier slapd.conf

Maintenant, on doit créer la racine de l’annuaire, en utilisant la commande smbldap-populate contenue dans les smbldap-tools :

 dn: dc=IbrahimAndSehali,dc=uccle
 objectclass: top
 objectclass: dcObject
 objectclass: organization
 o: IbrahimAndSehali
 dc: IbrahimAndSehali
 description: Racine de l'annuaire

2.2 Configuration de samba :

On configure le fichier Samba a partir du fichier /etc/samba/smb.conf

1018201.jpg567362.jpg

On met l’adresse du serveur LDAP

domain logons = Yes
 domain master = Yes

 ;option LDAP
 passdb backend = ldapsam:ldap://127.0.0.1

On met le chemin de recherche de la base LDAP

 ldap suffix = dc=IbrahimAndSehali,dc=uccle
 ldap machine suffix = ou=Machines
 ldap user suffix = ou=Users
 ldap group suffix = ou=Group

On met le DN de l’administrateur de la base LDAP

ldap admin dn = "cn=lelouch,dc=IbrahimAndSehali,dc=uccle"

Synchronise les mots de passe Linux et Windows

ldap passwd sync = Yes

Il faut absolument donner le mot de passe de l’administrateur de l’annuaire a Samba sinon il sera pas y accéder, grâce a la commande :

smbpasswd -W

2.3 Configuration de LDIF :

On va créer les utilisateurs a l’aide du fichier LDIF et les inséré dans la base a travers les clients OpenLdap.

Voici le fichier LDIF :

5517483.jpg

On complète ces quelque ligne pour créé un utilisateur (uid, userPassword, uidNumber,…), ici dans le fichier utilisateur1.ldif

Maintenant que le fichier LDIF existe et est completé, on doit l’introduire dans l’annuaire, pour cela on utilise la commande :

ldapadd -x -D cn=lelouch,dc=IbrahimAndSehali,dc=uccle -W –f utilisateur.ldif

Il manque plus qu’a mettre le mot de passe demandé, celui du fichier slapd.conf qu’on a complété précédemment.

Désormais l’utilisateur « utilisateur1 » est enregistré dans l’annuaire

2.4 Les smbldap-tools :

C’est un utilitaire qui permet d’utilisé l’annuaire LDAP, il permet donc d’ajouter, supprimer, modifier, … des utilisateurs, voici le fichier smbldap-tools :

3719434.jpg3983545.jpg6792726.jpg

2.5 Utilisation :

smbldap-useradd : est un utilitaire qui permet d’ajouter des utilisateurs dans la base LDAP avex les attributs SAMBA

Usage: /usr/sbin/smbldap-useradd [-awmugdsckABCDEFGHMNPST?] username
   -o    ajoute l'utilisateur dans l'OU (relative au suffix utilisateur)
   -a    est un utilisateur Windows (sinon, uniquement POSIX)
   -b    est un utilisateur AIX
   -w    est une station de travail Windows
   -i    is a trust account (Windows Workstation)
   -u    uid
   -g    gid
   -G    groupes supplémentaires séparés par des virgules
   -n    ne pas créer de groupe
   -d    home
   -s    shell
   -c    commentaires
   -m    créer le répertoire home et copier /etc/skel
   -k    répertoire squelette (avec -m)
   -t    temps. attendre 'temps' secondes avant de quitter ( avec -w )
   -P    exécute smbldap-passwd après
   -A    peux changer le mot de passe ? 0 = non, 1 = oui
   -B    dois changer le mot de passe ? 0 = non, 1 = oui
   -C    sambaHomePath
   -D    sambaHomeDrive
   -E    sambaLogonScript (Script de login)
   -F    sambaProfilePath (Chemin du profil utilisateur)
   -H    sambaAcctFlags (Bits de contrôle de compte Samba)
   -N    surnom
   -S    nom de famille
   -M    adresses email locales (séparées par des virgules)
   -T    adresse email de transfert
   -?    affiche ce message d'aide

smbldap-group* : identique aux utilisateurs sauf qu’elle s’applique pour un group

smbldap-passwd : permet de créer le mot de passe de l’utilisateur.

Usage: /usr/sbin/smbldap-passwd [options] [username] 
   -h, -?, --help show this help message 
   -s             update only samba password 
   -u             update only UNIX password

smbldap-usermod : permet de modifier un utilisateur

Usage: /usr/sbin/smbldap-usermod [-awmugdsckABCDEFGHIPSMT?h] username 
 Available options are: 
   -c    gecos 
   -d    home directory 
   -r    new username (cn, sn and dn are updated) 
   -u    uid 
   -o    uid can be non unique 
   -g    gid 
   -G    supplementary groups (comma separated) 
   -s    shell 
   -N    canonical name 
   -S    surname 
   -P    ends by invoking smbldap-passwd 
  For samba users: 
   -a    add sambaSAMAccount objectclass 
   -e    expire date ("YYYY-MM-DD HH:MM:SS") 
   -A    can change password ? 0 if no, 1 if yes 
   -B    must change password ? 0 if no, 1 if yes 
   -C    sambaHomePath (SMB home share, like '\\PDC-SRV\homes') 
   -D    sambaHomeDrive (letter associated with home share, like 'H:') 
   -E    sambaLogonScript (DOS script to execute on login) 
   -F    sambaProfilePath (profile directory, like '\\PDC-SRV\profiles\foo') 
   -H    sambaAcctFlags (samba account control bits like '[NDHTUMWSLKI]') 
   -I    disable an user. Can't be used with -H or -J 
   -J    enable an user. Can't be used with -H or -I 
   -M    mailAddresses (comma separated) 
   -T    mailToAddress (forward address) (comma separated) 
   -?|-h show this help message

smbldap-userdel : permet de supprimer un utilisateur

Usage: /usr/sbin/smbldap-userdel [-r?] username 
   -r    remove home directory 
   -R    remove home directory interactively

2.6 Configuration des clients Linux

2.6.1 Configuration PAM :

La configuration de PAM se fait dans le fichier /etc/pam.d/system-auth :

8912017.jpg

2.6.2 Client LDAP:

Voici le fichier /etc/ldap.conf:

5498698.jpg

On doit également modifier le fichier /etc/openldap/ldap.conf pour que tous les utilitaires fonctionnent :

6893849.jpg

2.6.3 Configuration NSS :

Pour configuré NNS, on va juste ajouter « ldap » a chaque ligne qui devras utilisé LDAP dans le fichier /etc/nsswitch.conf :

passwd:    files ldap
 shadow:    files ldap
 group:    files ldap

L'attribut files en début de ligne spécifie qu'il doit d'abord chercher dans les fichiers en local et venir compléter ses informations avec LDAP

2.7 Configuration des clients Windows :

Pour la configuration des clients Windows on va simplement utiliser les smbldap-tools, à travers la commande :

smbldap-useradd -w NomOrdinateur$

3 Bibliographie :

http://fr.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol
http://www-sop.inria.fr/members/Laurent.Mirtain/ldap-livre.html
http://www.commentcamarche.net/contents/internet/ldap.php3
http://doc.fedora-fr.org/wiki/Configuration_d%27un_serveur_d%27authentification_Openldap_Samba
http://articles.mongueurs.net/magazines/linuxmag65.html
http://zoonek2.free.fr/UNIX/27_ldap.html
http://www.vogelweith.com/debian_server/050_openldap.php
http://fr.wikipedia.org/wiki/OpenLDAP

Sauf mention contraire, le contenu de cette page est protégé par la licence Creative Commons Attribution-ShareAlike 3.0 License