Ceci est une ancienne révision du document !
debian ldap slapd mds mmc
Installer un LDAP sur Linux Debian avec MDS et l'interface MMC
MDS est l'acronyme pour Mandrake Directory Server. Malgré que ce soit prévu à la base pour une Mandrake, tous les paquets sont disponibles dans un repository pour Debian. L'avantage de ce MDS c'est qu'il est basé sur slapd et fourni avec une interface Web MMC pour gérer facilement les utilisateurs et les groupes.
Installation de slapd
Facile, il suffit de faire appel à apt-get :
apt-get install slapd ldap-utils ldapvi
Configuration de SLAPD
L'installation ne demande que le mot de passe root de l'Active Directory. Il est important pour MMC de configurer un peu plus de chose. Pour cela, relancer la configuraiton complète avec la commande suivante :
dpkg-reconfigure slapd
Répondre aux questions de cette façon :
Question | Réponse | Commentaire |
---|---|---|
Omit OpenLDAP server configuration? | No | |
DNS domain name: | home.int | Le nom de domaine de votre Active Directory |
Organization name: | Home | Le nom de votre “organisation” ou entreprise |
Administrator password: | *** | Mot de passe de l'admin AD, très important. |
Confirm password: | *** | |
Database backend to use: | 2 | Réponse par défaut |
Do you want the database to be removed when slapd is purged? | No | Réponse par défaut |
Move old database? | Yes | Réponse par défaut |
Allow LDAPv2 protocol? | No | Réponse par défaut |
<note important>Attention, à la fin de la configuration, debconf déplace la base LDAP dans le répertoire /var/backups créant un répertoire unknown-2.4.31-1+nmu2.ldapdb. Si vous lancez plusieurs fois la commande dpkg-reconfigure, cette dernière plante car le répertoire /var/backups/unknown-2.4.31-1+nmu2.ldapdb existe déjà. Pensez donc à supprimer ce répertoire avant de relancer la commande dpkg-reconfigure.</note>
Installation de MDS (Mandrake Directory Server)
Ajout du repository de MDS
Le site de MDS donne directement les URLs pour les repository Debian à cette adresse : http://projects.mandriva.org/projects/mmc/wiki/MDS_Downloads#Debian
Nous allons donc prendre l'url pour Squeeze :
cat <<EOF >> /etc/apt/sources.list # MDS/MMC For Squeeze deb http://mds.mandriva.org/pub/mds/debian squeeze main EOF
Installation de MMC
On update les sources APT :
apt-get update
Puis on installe les paquets mmc :
apt-get install mmc-agent mmc-web-base python-mmc-base
Pour faire fonctionner l'interface Web, ces paquets installent également Apache 2 et PHP.
Inclure le schéma MMC dans SLAPD
MDS apporte un schéma pour SLAPD afin de créer le fameux Active Directory en rapport avec l'interface MMC. C'est pourquoi il faut déclarer le schéma de MMC dans SLAPD. Depuis Debian Squeeze, la nouvelle version d'OpenLDAP utilise sa propre base pour stocker la configuration. Il vous suffit donc de lancer la commande suivante pour inclure le nouveau schéma :
# mmc-add-schema /usr/share/doc/mmc/contrib/base/mmc.schema /etc/ldap/schema/ Adding schema for inclusion: mmc... ok
Configuration du plugins MMC Base
Editez de le fichier /etc/mmc/plugins/base.ini et modifiez les lignes suivantes :
Paramètre | Valeur | Commentaire |
---|---|---|
ldapurl | ldap://127.0.0.1:389 | Valeur par défaut à changer si votre SLAPD n'écoute pas sur le localhost. |
baseDN | dc=home, dc=int | Mettre votre nom de domaine paramétré dans SLAPD. |
rootName | cn=admin, %(baseDN)s | Pas besoin de changer normalement, sauf si vous avez créer un user admin dédié à MMC. |
password | motdepasse | Indiquez le mot de passe du compte admin configuré dans SLAPD. Plus bas une méthode pour l'encoder en base64. |
defaultUserGroup | Domain Users | Optionnel, c'est le groupe par défaut d'un utilisateur. Il faudra le créer dès que possible. |
defaultHomeDir | /home | Le répertoire où seront créés les home directory. Vous pouvez les régrouper dans un sous-répertoire, par exemple /home/ldap. |
Si vous souhaitez encoder le mot de passe dans le fichier de configuration, vous pouvez lancer la commande suivante pour obtenir la version base64 :
# python -c 'print "**<VotreMotDePasse>**".encode("base64")'
Kio8Vm90cmVNb3REZVBhc3NlPioq
Puis, le renseigner dans le paramètre password du fichier /etc/mmc/plugins/base.ini en préfixant avec “{base64}” :
password = {base64}Kio8Vm90cmVNb3REZVBhc3NlPioq
<note>Si votre idée est de simplement tester LDAP, vous avez simplement les paramètres baseDN et password à renseigner dans ce fichier.</note>
Il faut également penser à créer le répertoire indiqué par le paramètre “destpath” qui concerne le répertoire dans lequel seront créés les backups. Par défaut il s'agit du répertoire /home/archives :
mkdir /home/archives
Activer MMC Agent
Il faut maintenant activier l'agent MMC pour qu'il puisse démarrer. Pour cela, modifiez le fichier /etc/default/mmc-agent et changer le paramètre ENABLE à yes :
# Defaults for mmc-agent initscript # sourced by /etc/init.d/mmc-agent # installed at /etc/default/mmc-agent by the maintainer scripts # # This is a POSIX shell fragment # ENABLE=yes
Démarrer MMC Agent
Vous pouvez maintenant démarrer MMC Agent :
/etc/init.d/mmc-agent start
Configurer MMC Web Interface
Il suffit de copier la configuration Apache 2 puis de relancer le daemon HTTPD :
cp /etc/mmc/apache/mmc.conf /etc/apache2/conf.d/mmc.conf /etc/init.d/apache2 restart
Cela va créer un alias “mmc” à votre configuration Apache2, vous pouvez donc accéder à l'interface via l'URL http://<serveur>/mmc. Voici l'écran de login :
Pour vous connecter, renseigner le compte “root” ainsi que votre mot de passe Administrateur de SLAPD.
La première chose à faire c'est de créer le groupe utilisateur par défaut. Si vous ne l'avez pas changé, il s'agit de “Domain Users”. Cliquez sur l'onglet “Groups” puis sur “Add”.
Renseignez “Domain Users” dans le champ “Group name” puis “Default User Group” pour le champ “Description”. Enfin validez en cliquant sur “Create”.
Vous pouvez maintenant créer des utilisateurs et configurer vos services pour utiliser l'authentification LDAP.
Exemple d'authentification HTTP via LDAP
A venir…
Versions utilisées
Guide réalisé sur une Debian Squeeze 7.1 avec les versions suivantes des paquets :
- slapd 2.4.31-1+nmu2
- mmc 3.1.0-1