Blog notes Aternatik

Contact
Accueil du site > Articles et ressources > LDAP > Gérer les virtualhosts Apache avec LDAP

Gérer les virtualhosts Apache avec LDAP

Grâce au module mod-vhost-ldap pour Apache, il est possible de déporter la configuration des hôtes virtuels dans un annuaire LDAP.

Pré requis

Il faut charger le module d’authentification ldap pour Apache car mod-vhost-ldap est basé dessus. Le module est présent sur le système mais non activé dans Apache.

apt-get install libapr1-dev  libaprutil1-dev
a2enmod authnz_ldap

Install du module

Maintenant, on va activer le support des hôtes virtuels sur LDAP avec le module qui va bien.

apt-get install libapache2-mod-vhost-ldap
a2enmod vhost_ldap
/etc/init.d/apache2 force-reload

Le fichier de configuration du module est dans le dossier /etc/apache2/mods-enabled :

<IfModule mod_vhost_ldap.c>
   VhostLDAPEnabled on
   VhostLDAPUrl "ldap://127.0.0.1/ou=vhosts,dc=aternatik,dc=lan"
   VhostLdapBindDN "cn=admin,dc=aternatik,dc=lan"
   VhostLDAPBindPassword "secret"
</IfModule>

Configuration du serveur LDAP

Il faut inclure les schémas livrés avec le paquet. Vous les trouverez dans le dossier

cp /usr/share/doc/libapache2-mod-vhost-ldap/mod_vhost_ldap.schema /etc/ldap/schema/

Modifier slapd.conf puis redémarrer le service LDAP pour prendre en compte les modifications. (Vérifier les index)

Organisation de l’annuaire

Il faut bien sûr créer auparavant une branche dans l’annuaire LDAP qui va contenir les vhosts. Voici une image illustrant comment j’ai organisé le DIT :

PNG - 17.3 ko

Ca donne des idées, n’est ce pas ?

Fichier ldif d’un hôte virtuel

dn: apacheServerName=titi.lan,ou=vhosts,dc=aternatik,dc=lan
objectclass: top
objectclass: apacheConfig
apacheServerName: titi.lan
apacheDocumentRoot: /home/titi/htdocs
apacheServerAdmin: test@toto.com

Le module mod-vhost-ldap prend en charge suexec avec les attributs apacheSuexecUser et apacheSuexecGroup

La documentation du module est bien sûr fournie avec le paquet mais elle est aussi disponible en ligne sur le site du module : http://modvhostldap.alioth.debian.org/

Conclusion...

C’est de la baaalle :-)

En comparaison d’autres modules (comme mod-vhost-dbi qui stocke les infos des vhost dans mysql) gérer les hôtes virtuels avec LDAP permet de mieux gérer la configuration Apache...

Seul regret, être limité dans les directives apache que l’on peut passer grâce au module vhost-ldap. Oubliez les configurations avec suPHP ou autre FastCGI (ou développez le module en C, ce qui est au dessus de mes compétences...)

retour top

3 Messages de forum

Voir toute la discussion

  • Répondre à ce message

    2 avril 2010 09:30 , par goldyfruit

    Salut,

    Bravo pour ce tutorial. :)

    J’ai une petite question, as-tu trouvé une solution pour l’utilisation de SuExec + FCGI avec les virtualhost LDAP ?

    Merci !

  • Répondre à ce message

    21 septembre 2009 12:29 , par Aternatik

    J’ai rajouté l’image d’illustration, en espérant que cela soit plus clair...

    ++

  • Répondre à ce message

    15 septembre 2009 14:38

    Bonjour
    C’est genial votre tuto.
    Je ne comprend juste pas comment gerer pres ca :

    "Il faut bien sûr créer auparavant une branche dans l’annuaire LDAP qui va contenir les vhosts. Voici une image illustrant comment j’ai organisé le DIT :"

Répondre à cet article

http://www.wikio.fr netvibes Google SPIP Suivre la vie du site RSS 2.0

Aternatik - tél : 04.86.57.31.22 | SIRET 484 907 530 00030 - NAF 6201Z
plan du site |  RSS 2.0 Suivre la vie du site SPIP
Création de sites et solutions internet

Creative Commons License
Le contenu du site est mis à disposition sous un contrat Creative Commons.