Debian Squeeze: LDAP - Mandriva Directory Server (MDS)

De Le Wiki du Forum-Debian.fr
Aller à la navigation Aller à la recherche

Mandriva Directory Server (MDS) est une plateforme d'annuaire d'entreprise s'appuyant sur LDAP.

MDS est conçu pour gérer les identités, les informations de contrôle d'accès, les politiques d'entreprise, les paramètres des applications et les profils des utilisateurs.

Si vous utilisez Samba, Postfix, Squid ou CUPS, vous pouvez bénéficier de MDS dès aujourd'hui pour gérer votre infrastructure.

La console MMC (Mandriva Management Console) est composée de deux parties:

  • 1.Un agent s'exécutant sur la machine à gérer. Nous l'appelons «agent MMC». L’agent exporte plusieurs plugins qui permettent de gérer la machine. Bien sûr, il peut y avoir plusieurs agents sur le réseau. L'agent et ses plugins sont écrits en Python.
  • 2.Une interface web, qui parle à l'agent (s) en utilisant XML-RPC. L'interface est écrite en PHP4, et utilise AJAX.

Dans ce document, nous allons d'abord expliquer comment installer et configurer l'agent de MMC et ses plugins, puis comment installer l'interface web.


Ajout du dépôt mds.mandriva:

Modifier le fichier /etc/apt/sources.list pour ajouter un nouveau dépôt de paquets :

# vim /etc/apt/sources.list
deb http://mds.mandriva.org/pub/mds/debian squeeze main
# aptitude update

Installation et configuration de mmc-agent :

On installe ensuite les paquets nécessaires :

# aptitude install mmc-agent mmc-web-base

On crée ensuite un mot de passe haché en base64 de celui de l’admin de l’annuaire :

$ python -c 'print "{base64}"+"[mot_de_passe_admin]".encode("base64")'
{base64}aXrldgFkbWlu

Voici ce qu’il faut modifier dans le fichier /etc/mmc/plugins/base.ini pour l’accès à la base de l’annuaire LDAP :

# vim /etc/mmc/plugins/base.ini
# LDAP base DN
baseDN = dc=<mondomaine>, dc=<local>
# Users location in the LDAP
baseUsersDN = ou=Users, %(basedn)s
# Groups location in the LDAP
baseGroupsDN = ou=Groups, %(basedn)s
# LDAP manager
rootName = cn=admin, %(basedn)s
password = {base64}aXrldgFkbWlu
passwordscheme = ssha

Il faut ensuite créer le répertoire de stockage des archives (par défaut, c’est le répertoire /home/archives):

# mkdir /home/archives

Lors de l’ajout d’un nouvel utilisateur, si on veut lui donner le droit de modifier son mot de passe, il faut ajouter la section suivante dans le fichier /etc/mmc/

plugins/base.ini :

[userdefault]
objectClass = +lmcUserObject
lmcACL = :base#user#passwd/

Pour l’interface web, on modifier la ligne suivante dans le fichier /etc/mmc/mmc.ini :

root = /

Il faut maintenant ajouter un nouveau schéma dans l’annuaire LDAP :

# cp /usr/share/doc/python-mmc-base/contrib/ldap/mmc.schema /etc/ldap/schema/
# vim /etc/ldap/slapd.conf
include         /etc/ldap/schema/mmc.schema

Tester la configuration :

# slaptest –f /etc/ldap/slapd.conf –F /etc/ldap/slapd.d

Attribuer les permissions adéquates:

# chown openldap:openldap /etc/ldap/schema/ -R
# chown openldap:openldap /etc/ldap/slapd.d/ -R

Avant de redémarrer les services :

# vim /etc/default/mmc-agent
ENABLE=yes

Redémarrer les services :

# invoke-rc.d slapd restart
# invoke-rc.d mmc-agent restart

Configuration d’apache :

D’abord il faut ajouter la ligne suivante dans le fichier /etc/apache2/ports.conf :

Listen 443

Puis, donner un nom au serveur :

# vim /etc/apache2/httpd.conf
ServerName mmc.mondomain.com

Ajouter un nouveau VirtualHost dans le fichier /etc/apache2/sites-available/mmc :

# vim /etc/apache2/sites-available/mmc 
<VirtualHost *:80> 
   ServerName mmc.mondomaine.com
   ServerAlias mmc 
   ServerAdmin webmaster@example.org 
   ErrorLog /var/log/apache2/mmc_error.log 
   CustomLog /var/log/apache2/mmc_access.log combined 
</VirtualHost> 
<VirtualHost *:443> 
   ServerName 127.0.0.1
   ServerAlias mmc
   ServerAdmin webmaster@example.org 
   DocumentRoot /usr/share/mmc/ 
   <Directory /usr/share/mmc/> 
       AllowOverride None 
       Order allow,deny 
       allow from all 
       php_flag short_open_tag on 
   </Directory> 
   ErrorLog /var/log/apache2/mmc_error.log 
   CustomLog /var/log/apache2/mmc_access.log combined 
</VirtualHost>

Activer le nouveau VirtualHost :

# a2ensite mmc


Ajouter l’option « acl » pour le montage de la partition contenant le /home dans le fichier /etc/fstab.

Redémarrer le serveur apache :

# invoke-rc.d apache2 restart

Sur le navigateur, taper l’adresse : http://IP_du_Serveur_LDAP:443

Pour la connexion, utiliser l’utilisateur root et le mot de passe de l’administrateur de l’annuaire.

Sources