Accès rapide aux articles de la page


Gravatar de Aternatik

URL rewriting - Redirection des pages vers un sous domaine 

J'ai eu à déplacer les pages d'un site principal vers un sous domaine. Les url à déplacer sont réécrites, bien référencées et je n'avait pas envie de tout perdre (et référencement, et visiteurs…). Explications et marche à suivre avec l'url rewriting pour un transfert sans bobo.

Contexte

J'ai développé un annuaire (sur la base de myphpannu ou encore categorizator) sur le domaine moto-sites.net. Seulement je souhaite migrer les pages de l'annuaire vers le sous domaine annuaire.moto-sites.net.

Les urls à déplacer sont de cette forme :


http://moto-sites.net/accessoires-du-motard-p1-37.html
http://moto-sites.net/detail-l-aspi-racing-journees-d-entrainements-moto-9.html

Il va falloir utiliser un fichier htaccess qui va contenir les règles d'écriture.

Voici le fichier qui fonctionne ;)


# Redirection vers l'annuaire
RewriteRule ^(.*-p[0-9]*-[0-9]+\.html) http://annuaire.moto-sites.net/$1 [L,R=301]
RewriteRule ^(.*-k[0-9]*-[0-9]+\.html) http://annuaire.moto-sites.net/$1 [L,R=301]
RewriteRule ^(detail-[a-z-\-]*-[0-9]+\.html) http://annuaire.moto-sites.net/$1 [L,R=301]
RewriteRule ^(sitemap\.xml) http://annuaire.moto-sites.net/$1 [L,R=301]
RewriteRule ^(nouveautes\.php) http://annuaire.moto-sites.net/$1 [L,R=301]

$1 correspond à ce qui est mis entre parenthèses. Le reste n'est qu'une mise en forme de l'url et vous n'avez qu'à recopier vos règles existantes ;) Vous remarquerez qu'une redirection 301 est faite pour indiquer aux moteurs de recherche que la page a été déplacées.

Sur le sous domaine, vous devez avoir un fichier htaccess qui donne les règles d'écriture du site. Cette fois c'est :


RewriteRule -p([0-9]*)-([0-9]+)\.html$ /index.php?cat_id=$2&page=$1 [L]
RewriteRule -k[0-9]*-([0-9]+)\.html$ /search.php?action=seek&mots=id$1&nb_results2show=20&booleen=AND [L]
RewriteRule ^detail-[a-z-\-]*-([0-9]+)\.html /affsite.php?site=$1 [L]
RewriteRule ^sitemap\.xml$ /allcategs.php?sitemap [L]

Je sais pas si cette technique est vraiment la bonne mais ça à l'air de fonctionner ;)

Retourner au sommaire

Gravatar de Aternatik

Authentification PAM / LDAP 

Aide mémoire pour la mise en place pour l'authentification des utilisateurs d'un système sur un serveur LDAP.

Le serveur LDAP (OpenLDAP) est déjà installé et configuré. Cet article sert de mémo pour la configuration de PAM sur les postes clients.

Installation des paquets et librairies

On va installer le module ldap pour PAM, la librairie pour NSS qui va permettre d'interroger LDAP et nscd qui va servir de cache.


apt-get install libnss-ldap libpam-ldap ldap-utils nscd

Configuration de libnss-ldap

A l'installation du paquet, Debconf demande les paramètres du serveur LDAP. Renseigner les selon la configuration (dc=aternatik,dc=org) en précisant qu'il ne faut pas d'identification et que le fichier ne doit pas être lisible et modifiable uniquement par root.

Fichier de configuration /etc/libnss-ldap.conf

Quelques options sont importantes, d'autres moins ;)


base dc=aternatik,dc=org

# Adresse du serveur LDAP
uri ldap://127.0.0.1

# Important !!!
bind_policy soft

# Facultatif
nss_base_passwd ou=People,dc=aternatik,dc=org?one
nss_base_shadow ou=People,dc=aternatik,dc=org?one
nss_base_group ou=Group,dc=aternatik,dc=org?one

bind_policy est mis sur "soft" : dans le cas ou le serveur LDAP serait injoignable, on peut quand même se logguer…

Fichier /etc/nsswitch.conf

Avec ce fichier, on dit au système d'interroger l'annuaire LDAP en plus des fichiers :


passwd: compat ldap
group: compat ldap
shadow: compat ldap

Pour tester si tout fonctionne, la commande getent passwwd devrait retourner les utilisateurs contenus dans LDAP.

Configuration de PAM

Les paramètres de l'annuaire LDAP sont déjà renseignés à l'installation du paquet. Il faut maintenant configurer PAM pour qu'il se serve des données contenues dans LDAP. Tout se situe dans le répertoire /etc/pam.d. Pour plus de sureté, il est conseillé de faire une sauvegarde de ce répertoire et de garder sur la machine une session root (pour pouvoir revenir en arrière…) PAM est délicat et tous les services d'identification de la machine peuvent être perturbés… Vous voilà prévenu !

Modifier les fichiers suivant :

/etc/pam.d/common-account :


account required pam_unix.so
account sufficient pam_ldap.so

/etc/pam.d/common-session


session required pam_unix.so
session optional pam_ldap.so

/etc/pam.d/common-auth


auth required pam_unix.so nullok_secure
auth sufficient pam_ldap.so use_first_pass

/etc/pam.d/common-passwd


password required pam_unix.so nullok obscure min=4 max=8 md5
password sufficient pam_ldap.so use_authtok

Et voilou ! Pour tester : su -utilisateur present dans LDAP-

NSCD : le cache des données utilisateurs

Pour limiter les requêtes vers LDAP, nscd fournit un cache. Les options de configuration sont dans le fichier /etc/nscd.conf. Voici un exemple :


enable-cache passwd yes
positive-time-to-live passwd 600
negative-time-to-live passwd 20
suggested-size passwd 211
check-files passwd yes
persistent passwd yes
shared passwd yes

Les actions de nscd (Cf fichier log)


1558: add new entry "keen" of type GETPWBYNAME for passwd to cache (first)
1558: remove GETHOSTBYNAME entry "196.247.140-88.rev.gaoland.net"
1558: remove GETHOSTBYADDR entry "88.140.247.196"
1558: freed 680 bytes in hosts cache

Il est possible de gérer le cache de nscd en précisant le nombre d'entrées à garder en mémoire et combien de temps. Pas de secret pour les valeurs, il faut tester !

Quelques liens
- Authentification PAM
- L'admin Debian
- Un article des mongeurs sur l'authentification LDAP

Retourner au sommaire

Gravatar de Aternatik

Authentification Apache avec LDAP 

Avec le serveur web Apache, on protège habituellement l'accès des répertoires avec un "classique" .htaccess. Mais il est aussi possible d'utiliser d'autres support pour authentifier les utilisateurs, dont LDAP. Installation en configuration du module authnz_ldap d'Apache.

Le module authnz_ldap remplace auth_ldap dans la version 2.2 d'Apache

Installation du module

Sur Debian, le module est disponible mais non activé. Il suffit de le charger dans la configuration d'Apache


a2enmod authnz_ldap
/etc/init.d/apache2 force-reload

Configuration d'un VirtualHost

Les directives suivantes sont à mettre dans les options d'un répertoire ou dans la définition d'un hote virtuel.


AuthType basic
AuthName "Acces Restreint"
AuthBasicProvider ldap
#AuthLDAPBindDN cn=admin,dc=test,dc=lan
#AuthLDAPBindPassword motdepasse
AuthLDAPURL ldap://ldap.test.lan/ou=Users,dc=test,dc=lan
AuthLDAPRemoteUserIsDN off
require ldap-filter &(uid=*)

Un autre exemple d'emplacement LDAP


AuthLDAPURL ldap://ldap.test.lna/ou=Test?uid
require ldap-group cn=Administrators,ou=Test

Retourner au sommaire

Gravatar de Aternatik

Installation d'un serveur Subversion 

Aide mémoire pour l'installation d'un gestionnaire de version : subversion.

Pré requis


apt-get install subversion subversion-tools libapache2-svn

Créer le répertoire de dépôt pour le projet. J'ai choisi le dossier /var/svn pour stocker les projets.


svnadmin create --fs-type fsfs /var/svn/projet

Il faut configurer apache. Le dépôts sera accessible sur le serveur virtuel dev.test.lan. Un "alias" /projet renvoit vers le dossier du projet


vi /etc/apache2/sites-available/dev.test.lan

<VirtualHost *>
ServerName dev.test.lan
DocumentRoot /var/svn
ServerAdmin root@test.lan

<Directory />
AuthType Basic
AuthName "Serveur SVN"
AuthUserFile /var/svn/access.passwd
require valid-user
</Directory>
<Location /projet>
DAV svn
SVNPath /var/svn/projet
</Location>
</VirtualHost>

Pour créer le fichier de mot de passe :

htpasswd2 -c /var/svn/access.passwd utilisateur

Installer l'hôte virtuel et redémarrer Apache :


a2ensite dev.test.lan
/etc/init.d/apache2 reload

Création du dépôt subversion

Sur le site Prendre un café, j'ai trouvé un script qui automatisait la création de dépôts subversion.

Cliquez voir cet article qui indique la marche à suivre pour installer Subversion et Trac sur un serveur Ubuntu !

Merci en tout cas à Niko, l'auteur du script de m'avoir fait gagner un précieux temps ;)

Des liens

- L'article sur Prendre un café
- Un electron libre : Subversion et Trac
- Encore une install, cette fois sur Debian

Retourner au sommaire

Gravatar de Aternatik

Les paquets Debian 

  • 13 votes
    vote oui vote non
Explications sur le fonctionnement des paquets Debian. Aperçu rapide des commandes pour aller plus loin que la simple installation d'un logiciel sur sa distribution GNU/Linux.

C'est pourtant si simple…

Configurer un système entier à partir de son code source est long et il faut être très exigeant si on veut que les applications soient correctement configurées (et cohérentes). La distribution Debian GNU/Linux est reconnue pour son système de gestion des logiciels : les paquets (ou fichier *.deb). Quand vous installez un logiciel sur votre distribution [1] grâce au gestionnaire de paquets, vous êtes assurés d'une configuration "taillée" pour votre système. Un paquet contient les sources du logiciel ainsi que les options de configuration spécifiques à Debian.

Avant d'être inclus dans une dépôt, il faut empaqueter les sources. Les options de configuration sont dans le ficher debian/rules d'un paquet debian.

Si vous n'avez jamais compilé un logiciel, passez votre chemin :)

Pour compiler une appli à partir des sources, il faut exécuter ces commandes :


# ./configure
# make
# make install

Seulement cela se complique souvent quand il faut passer les bonnes options à ./configure. Et puis il faut aussi nettoyer le répertoire des sources, si on veut relancer la compilation… Le fichier rules facilite l'installation de paquet car les actions à faire sont indiqués dans ce fichier… Exemple de fichier rules :



install: build
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
@# Add here commands to install the package into debian/tmp

done

# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.

# Build architecture-dependent files here.
binary-arch: build install
dh_testdir
dh_testroot
# dh_movefiles

dh_installdebconf
dh_installdocs
# dh_installexamples
# dh_installmenu
# dh_installlogrotate
# dh_installemacsen

Petit mémo de commande

Télécharger les sources d'un paquet Débian (ajouter deb-src à votre fichier apt/sources.list)


apt-get source nomdupaquet

La structure du paquet est disponible, ainsi que le fameux fichier debian/rules ;)

Ajuster les options voulues et pour le reconstruire par la suite, utiliser :


dkg-builpackage -bfakeroot

Enregistrer/copier la configuration du système

Ce qui suit permet de faire un état des paquets installés sur un système. Pour faire une copie locale de l'état de la sélection des paquets :


# dpkg --get-selections "*" >myselections

"*" inclut aussi les noms des paquets à purger dans myselections.

Transférer ces fichier vers un autre ordinateur, et installer les paquets avec :


- # dselect update
- # dpkg --set-selections < myselections
- # apt-get -u dselect-upgrade # ou dselect install

Des liens

Création de paquets Debian
Un cas pratique : corriger un paquet Debian

A suivre : la construction d'un paquets à partir des sources d'une application…


[1] Il y a trois versions de Debian : stable, testing et untable.

Retourner au sommaire

Gravatar de Aternatik

Installer Debian sans CD ni disquette : PXE 

Installation de Debian par le réseau. Utilisation (rapide) d'un serveur PXE et dhcp.

PXE permet beaucoup de configuration, je suis allé au plus simple pour faire l'installation d'une machine.

Serveur tftp

Le serveur tftp va mettre à disposition l'image du noyau.

apt-get install atftpd

Questions debconf (configuré avec une priorité basse)
- démarrer en tant que démon ?
- Intervalle d'adresse multidiffusion
- TTL pour les paquets multicast 1
- Répertoire racine /tftpboot

Configuration Serveur PXE

Déjà, il faut l'installer (Paquets recommandés : dhcp3-server dnsmasq tftpd-hpa atftpd mtools) :


apt-get install pxe syslinux

# On va copier l'exécutable pxe dans le répertoire qui sert à tftp
cp /usr/lib/syslinux/pxelinux.0 /tftpboot/

Editer le fichier /etc/pxe.conf pour adapter les paramètres réseau.

Il faut ensuite créer un fichier de configuration qui défini sur quel noyau linux on va booter. Debian nous facilite la tâche puisque des images et des configurations toutes prêtes existent :


cd /tftpboot
wget http://http.us.debian.org/debian/dists/etch/main/installer-i386/20070308etch1/images/netboot/netboot.tar.gz
tar xvzf ./netboot.tar.gz

Le serveur pxe est prêt.

Configuration DHCP

Outre la configuration classique (server-name, etc) il faut indiquer les paramètres concernant PXE :


host machine {
filename "/tftpboot/pxelinux.0";
hardware ethernet 01:23:45:23:43:42;
fixed-address 192.168.1.100;
}

Relancer ou démarrer les différents services :


/etc/init.d/atftpd start
/etc/init.d/pxe start
/etc/init.d/dhcp restart

Configurer la station cliente pour démarrer sur le réseau et installer…

Des liens :

- Installer Debian par le réseau
- http://samedi.collectifs.net/spip.php ?article62

Retourner au sommaire

Gravatar de Aternatik

Installation d'un serveur d'annuaire OpenLDAP 

Cet article présente l'installation d'un serveur d'annuaire grâce à OpenLD AP. La distribution sur laquelle sera installée OpenLdap est Debian Etch. Un outils d'administration est aussi installé : phpldapadmin.

Installation

Les paquets nécessaires doivent être installés :


apt-get install slapd ldap-utils

Répondre aux différentes questions :
- Entrer le nom de domaine dns (test.lan). Dans ldap, il sera modifié en dc=test,dc=lan ce qui est le baseDN
- Entrer le nom d'organisation (Test Cie)
- Maintenant il faut définir un administrateur LDAP qui aura accès à tous les arbres de l'annnuaire. le dn : cn=admin,dc=test,dc=lan
- LDAPv2 ne devrait plus être utilisé, laisser le choix par défaut à NON

Arréter le serveur et sauvegarder le fichier de conf ;


/etc/init.d/slapd stop
cd /etc/ldap/
cp slapd.conf slapd.conf_DEB-orig

Fichier /etc/ldap/slapd.conf

Config de base



# Les schémas de l'annuaire
include /etc/ldap/schema/core.schema
include /etc/ldap/schema/cosine.schema
include /etc/ldap/schema/nis.schema
include /etc/ldap/schema/inetorgperson.schema
include /etc/ldap/schema/misc.schema


schemacheck on
pidfile /home/slapd/slapd.pid
argsfile /home/slapd/slapd.args

password-hash {CRYPT}
replogfile /var/lib/ldap/replog
loglevel 256

database bdb

suffix "dc=test,dc=lan"
directory "/var/lib/ldap"


# créer un mot de passe avec la commande "/usr/sbin/slappasswd -h {CRYPT}"
rootpw {CRYPT}MnRG3gok61DS6 # = 123456
directory "/var/lib/ldap"
index objectClass eq
lastmod on

access to attribute=userPassword
by dn="cn=admin,dc=test,dc=lan" write
by anonymous auth
by * none

access to *
by dn="cn=admin,dc=test,dc=lan" write
by * auth

Les ACL : dans la première, seul le "manager" peut modifier l'attribut userPassword ; les utilisateurs anonymes doivent s'identifier ; les autres n'ont aucun accès.

La deuxième donne les pleins pouvoir au "manager" et oblige tout utilisateur à s'authentifier.

Insertion de données dans l'annuaire : le format ldif

OpenLDAP utilise des fichiers aux formats ldif (LDAP Data Interchange Format) pour insérer des données. Sans parler des schémas, aperçu d'un fichier ldif et insertion dans la base LDAP. A noter qu'à l'installation sur Debian Etch, je n'ai pas eu à importer ces données. La base est créee avec les paramètres lors de l'installation.


############### base.ldif

dn: dc=test,dc=lan
objectClass: top
objectClass: dcObject
objectClass: organization
o: test.lan
dc: test

dn: ou=Users,dc=test,dc=lan
objectClass: top
objectclass: organizationalUnit
ou: Users

dn: cn=admin,dc=test,dc=lan
objectClass: top
objectClass: organizationalRole
cn: admin

La commande pour insérer les données dans l'annuaire :


ldapadd -c -x -h localhost -D "cn=admin,dc=test,dc=lan" -W -f base.ldif

- -c permet de continuer s'il y a des erreurs (enregistrement déjà présent dans l'annuaire).
- -x pas d'authentification SASL.
- -D indique le DN du compte qui se connecte.
- -W fera que ldapadd demandera le mot de passe de admin.
- -f indiquera le nom du fichier LDIF

Démarrer le service

On démarre avec l'utilisateur slapd :


# /etc/init.d/slapd start

La base est normalement crée.

Installation de phpldapadmin

C'est un outil du style phpmyadmin qui gère un annuaire LDAP. Il nécessite apache pour fonctionner, voyons son installation.

Tout d'abord, installer les paquets nécessaires :


#apt-get install phpldapadmin libapache2-mod-php5 libapache-mod-ldap php5 db4.2-util

Répondre aux questions de debconf et pointer sur http://localhost/phpldapamin. Par défaut, un alias est crée pour apache. Mais on voudrait accéder à l'application sur ldap.test.lan. Le DNS est déjà configuré, au tour d'Apache !

Dans la config Apache, supprimer le site par defaut (localhost) ainsi que l'alias défini à l'installation de phpldapadmin. Il faut re-définir un hôte virtuel ldap.test.lan qui pointe sur le dossier de phpldapadmin ( /usr/share/phpldapadmin/htdocs). Le fichier fourni par phpldapadmin contient des exemples de configurations, il servira de modèle.


ldap:/etc/apache2# cp conf.d/phpldapadmin sites-available/
ldap:/etc/apache2# vi sites-available/phpldapadmin

Notifier à Apache les nouvelles directives et redémarrer le service pour les prendre en compte.


ldap:/etc/apache2#a2ensite phpldapadmin
ldap:/etc/apache2# /etc/init.d/apache2 restart
Forcing reload of web server (apache2)....

Tester sur http://ldap.test.lan

Phpldapadmin

Tout fonctionne, supprimer les fichiers inutiles :


ldap:/etc/apache2# rm sites-enabled/000-default
ldap:/etc/apache2# rm conf.d/phpldapadmin

L'annuaire LDAP est maintenant fonctionnel et administrable.

Des liens

- http://www-sop.inria.fr/semir/personnel/Laurent.Mirtain/ldap-livre.html
- http://home.subnet.at/ max/ldap/#install-openldap
- http://moduli.net/pages/sarge-ldap-auth-howto

Retourner au sommaire

Gravatar de Aternatik

Des sites, des flux et des boucles ! 

Quelques exemples de boucles qui manipulent les sites et articles syndiqués dans un site SPIP.

J'ai eu l'occasion de mettre en pratique les fonctionnalités de syndication de flux RSS. Voici quelques boucles que j'ai eu à faire.

Une liste d'articles syndiqués

Cette boucle affiche les 30 articles récemment syndiqués.


[(#REM) Les 30 derniers articles RSS ]

<B_syndic>
<div class="syndic">
<ul>
<BOUCLE_syndic(SYNDIC_ARTICLES) {age<180} {par date}{inverse} {0,30}>
<li><a href="#URL_ARTICLE"[ title="(#NOM_SITE|texte_backend)"] class="spip_out">#TITRE</a> - <small>#DATE</small></li>
</BOUCLE_syndic>
</ul>
</div>
</B_syndic>

Voila le résultat :

Affichage des sites syndiqués avec leur 5 derniers articles

Cette boucle affiche 5 sites au hasard de la rubrique courante et les 5 derniers articles syndiqués :


[(#REM) Les sites de la rubrique courante avec la description du site, logo et 5 derniers RSS ]
<B_sites>
<div class="syndic">
<BOUCLE_sites(SITES) {id_rubrique} {par hasard} {pagination 5}>
<h3><a href="[(#ID_SYNDIC|generer_url_site)]">#NOM_SITE</a></h3>
<a href="[(#ID_SYNDIC|generer_url_site)]">[(#LOGO_SITE||image_reduire{100,100})]</a>
<B_syndic>
<ul>
<BOUCLE_syndic(SYNDIC_ARTICLES) {id_syndic} {age<180} {par date}{inverse} {0,5}>
<li><a href="#URL_ARTICLE" class="spip_out">#TITRE</a> <small>[(#DATE|affdate_court)]</small></li>
</BOUCLE_syndic>
</ul>
</B_syndic>
</BOUCLE_sites>
#PAGINATION
</div>
</B_sites>

Aperçu :

Ces boucles sont utilisées sur ce site. N'hésitez pas à fouiller les squelettes ;)

Spip et la syndication ?

Une semaine d'utilisation et pas de problèmes particuliers. Seuls quelques liens ont du être bloqués car les titres étaient trop longs ( 300 caractères !) Ah si, une fausse note. Je ne trouves pas comment controler le rafraichissement des flux RSS. Et ce n'est pas faute de chercher ;)

Dans le but de syndiquer des articles, il existe aussi Sedna qui transforme SPIP en un lecteur de flux RSS.

Quelques liens :

Retourner au sommaire

Gravatar de Aternatik

Analyse de trames distantes avec Ethereal 

L'analyse de trame consiste à observer le réseau. Il existe Ethereal (ou Wireshark) pour effectuer cette tâche ; Seulement, les captures sont faites sur la machine locale. L'utilisation de tcpdump peut pallier à cet inconvénient.

Il faut avant tout installer tcpdump sur le serveur à analyser. Le paquet est dans les dépôts Debian, vous le trouverez certainement pour votre distribution ; Au cas où : le site de tcpdump

Ensuite, on va faire une capture de la carte réseau du serveur :


tcpdump -i eth0 -w analyse-trame.cap

L'option -i précise l'interface et -w fourni les données brutes dans le fichier analyse-trame.cap (nécessaires à Wireshark).

Il ne reste plus qu'à récupérer le fichier avec scp et l'ouvrir avec Wireshark pour analyser les trames ;)

Pour plus d'infos sur tcpdump : man tcpdump

Cette astuce a été trouvée ici

Retourner au sommaire

Gravatar de Aternatik

OpenLDAP : service d'annuaire libre 

  • 13 votes
    vote oui vote non
Aperçu de OpenLDAP, outils permettant l'utilisation du protocole LDAP. Cet article détaille un peu plus la présentation publiée récemment.

OpenLDAP fourni un serveur d'annuaire LDAP et est issu des implémentations du protocole par l'Université de Michigan. En plus du serveur, des logiciels sont inclus et permettent d'utiliser le protocole LDAP.

OpenLDAP est souvent utilisé comme socle par d'autres applications nécessitant une authentification. Les schémas permettent une grande flexibilité des annuaires. Ainsi, en couplant OpenLDAP et Samba, on obtient un contrôleur de domaine Windows, ce qui est une alternative crédible à Microsoft Active Directory.

Avantages

  • Code ouvert = adaptable aux besoins (extensions)
  • Performances
  • Respectueux des standards (interopérabilité)
  • Portabilité (Unix/Linux, Window, Sun …)
  • Licence non restrictive (OpenLDAP Public Licence)

Inconvénients

  • Peu de documentation en Français (mais liste de diffusion très (ré)active)
  • Fonctionnalités d'exploitation (monitoring, suivi et optimisation des performances) réduites par rapport aux solutions propriétaires.
  • Peu d'outils d'administration complet ou facile d'accès niveau utilisateur.

Modèle de nommage.

Directory Information Tree (DIT)

Une arborescence hiérarchique permet de classer les données (comparable à un système de fichier). Chaque noeud de l'arbre correspond à une entrée de l'annuaire. Au sommet de l'arbre se trouve l'entrée suffixe ou encore Base DN

Scheme d'arbre LDAP

Distinguished name (DN)

Référence d'une manière unique une entrée de l'annuaire. Comparable aux chemins absolus dans une arborescence de fichier. Reprend le chemin jusque la racine de l'annuaire.

Ex : ou=service1, ou=Siege,c=belgique,dc=organisation,dc=org

Il existe aussi le RDN (Relative Distinguished Name). Il s'agit en fait du nom relatif d'une entrée dans l'annuaire. Par exemple, par rapport à dc=organisation,dc=org :

  • c=France
  • ou=Siege,c=Belgique

Les schémas LDAP

L'ensemble des définitions relatives aux objets que sait gérer un serveur LDAP s'appelle le schéma. Le schéma décrit les classes d'objets, leurs types d'attributs et leur syntaxe.

Pour plus d'infos sur les schéma, voir ce tutorial LDAP

Le modèle fonctionnel

Le modèle fonctionnel LDAP fournit les opérations qui permettent d'accéder aux données du serveur LDAP :

  • Search : recherche dans l'annuaire d'objets à partir de critères
  • Compare : comparaison du contenu de deux objets
  • Add : ajout d'une entrée
  • Modify : modification du contenu d'une entrée
  • Delete : suppression d'un objet
  • Rename (Modify DN) : modification du DN d'une entrée
  • Bind : connexion au serveur
  • Unbind : déconnexion

Principaux acronymes relatif à LDAP

  • LDAP : Light Directory Access Protocol
  • DN : Distinguished Name
  • RDN : Relative Distinguished Name
  • OID : Object Identifier
  • NIS : Network Information Service
  • SASL : Simple Authentification and Security Layer
  • TLS : Transport Layer Security
  • LDIF : LDAP Data Interchange Format

Des exemples !

L'occasion de reparler technique ne va pas manquer sur OpenLDAP. Mais avant cela, quelques exemples de mise en oeuvre d'un annuaire sur lequel repose d'autres applications libres :

Exit Active Directory.

Une bonne alternative à la solution privative [1] de Microsoft, est l'utilisation de Samba reposant sur LDAP. Cela permet de garder les postes clients windows pour une migation en douceur…

Des courriels par milliers

Les services de messagerie vont chercher leur base utilisateur dans un annuaire. Postfix supporte très bien OpenLDAP, tout comme Jabber (install fonctionnelle en 5min)

Trouvez vos contacts

  • Dans une entreprise, pour la gestion du personnel. Même avec plusieurs sites distants, tous les contacts sont à portés de clic dans la plupart des applications.
  • Encore en entreprise, mais pour une TPE soucieuse de ses clients. L'annuaire est alimenté grâce à un site web. Les lettres d'information sont distribuées aux abonnés présent dans l'annuaire.

Liens relatifs à OpenLDAP

Ce n'est pas fini pour ce qui concerne OpenLDAP, puisque d'autres articles sont en cours de rédaction.

Appel à contribution : vu la masse d'infos que j'essaie d'absorber en ce moment, je peux passer à côté de certaines choses. Merci de m'indiquer vos bonnes sources :)


[1] Richard Stalmann lors d'une conférence en avril ne parlait pas de logiciel propriétaire mais de systèmes privatifs.

Retourner au sommaire

©2007 :: Hébergé par Tux-planet :: Valid CSS & XHTML :: Version 3.2.1

web tracker