Ajout du support LDAP pour DHCP

Posté par  (site web personnel) . Modéré par Nÿco.
Étiquettes :
0
9
août
2003
Linux
Xenux.net, élargit sa documentation sur les possibilités avec OpenLDAP, en proposant une documentation (comme à son habitude sans chichi ni blabla) pour l'intégration de la configuration d'un serveur DHCP dans un annuaire LDAP (OpenLDAP), via le patch de Brian Masney. Cette documentation explique la mise en place d'un serveur DHCP simple, mais vous propose une première brique pour un DHCP complexe !

Une nouvelle fois, les produits libres montrent leurs qualités et leur souplesse !

Aller plus loin

  • # Re: Ajout du support LDAP pour DHCP

    Posté par  . Évalué à 1.

    Super article. Merci pour l'avoir posté.
    Bien sur, le sujet correspond à ce sur quoi
    je travaille en ce moment d'où mon enthousiasme.
    La doc est très claire, efficace et succinte.
  • # Re: Ajout du support LDAP pour DHCP

    Posté par  . Évalué à 4.

    D'où sort le schema utilisé ? C'est le gars qui l'a inventé dans son coin ?
    La seule RFC concernant LDAP+DHCP que j'avais trouvé était restée à l'état de DRAFT et avait périmé ( http://www.ietf.org/proceedings/99nov/I-D/draft-ietf-dhc-schema-01.(...) ). J'ai mal cherché ou il n'y a toujours pas de RFC entérinée ? (à l'image de la RFC2307)
    • [^] # Re: Ajout du support LDAP pour DHCP

      Posté par  (site web personnel) . Évalué à 2.

      LDAP est très intéressant mais la structure de l'annuaire emprunté à l'usine à gaz X500 commence à dater.

      Il était question de faire une transposition en XML et une DTD ou mieux "XML schema" qui fixe la grammaire de l'annuaire. Où en est le projet ?
      • [^] # Re: Ajout du support LDAP pour DHCP

        Posté par  . Évalué à 5.

        LDAP est très intéressant mais la structure de l'annuaire emprunté à l'usine à gaz X500 commence à dater.
        LDAP c'est précisément un X500 mais dépourvu de la structure hyper rigide qui faisait de lui une usine à gaz. (enfin afaik)
        • [^] # Re: Ajout du support LDAP pour DHCP

          Posté par  . Évalué à 5.

          Bah tout est dans le nom: X500 est un DAP (Directory Access Protocol), et LDAP est un Lightweight Directory Access Protocol.....

          Je suis aussi d'avis de dire qu'il a hérité de ce qui est bien en se débarassant de ce qui etait lourd (mais bon, je suis pas un dieu du X500 non plus....)
          • [^] # Re: Ajout du support LDAP pour DHCP

            Posté par  . Évalué à 2.

            > X500 est un DAP

            Ou plutot utilise DAP. X500 est plein d'autres protocoles.

            pour LDAP et XML: il ne faut pas prendre XML pour ce que ça n'est pas (est ce bien français cette phrase?). Il serait inutile de faire un schéma XML pour un annuaire LDAP, LDAP n'est qu'un protocole, le stockage des données est libre.
            Imagine-t-on de transposer http ou ftp en XML? Non, XML pourrait être utile pour l'échange de données (quoi? ça a été fait pour cela?) d'annuaires, donc comme LDIF. Vu la structure simple de LDIF, il est possible de faire un XSLT pour traduire ça. Et là, il faudrait des DTD/schémas pour ça, pour faire des exports propres à coup sur.

            Et puis un standard est là pour ça:
            http://www.oasis-open.org/cover/dsml.html(...)
            DSML, des annuaires en XML.
      • [^] # Re: Ajout du support LDAP pour DHCP

        Posté par  . Évalué à 1.

        tu veux parler de DSML ?
        DSMLv2 permet de remplacer le protocole LDAP (syntaxe ASN.1 encodée en BER) par du XML pour décrire les requêtes et les réponses faites à un annuaire LDAP (bref, pour remplacer le protocole LDAP)

        mais personne ne touchera à la structure de données des annuaires LDAP... dont je ne pense pas qu'elle date d'ailleurs...

        d'ailleurs il y a d'autres chantiers qui eux sont essentiels, comme la normalisation des méthodes de contrôle d'accès aux données de l'annuaire, ou la gestion du schéma...
        • [^] # Re: Ajout du support LDAP pour DHCP

          Posté par  . Évalué à 2.

          > DSML [...] remplacer le protocole LDAP

          Ce n'est pas ce que j'ai compris :

          " DSML is an XML-Schema, not an access protocol. DSML still depends on an access protocol such as LDAP to get data from individual directories. DSML provides a standard for creating XML documents from the information that LDAP delivers. "

          Soit, DSML n'est pas un protocole d'accès, il repose sur LDAP, mais propose un schéma XML pour l'information d'un annuaire LDAP.

          source [faq DSML] http://www.oasis-open.org/cover/dsmlFAQ200104.html(...)

          Mais bon, DSML a l'air un peu mort, là. dsml.org est down, et il n'y a personne pour ça à oasis-open.org.

          > d'autres chantiers qui eux sont essentiels

          ouais, et ldup pas mal aussi. maintenant, chacun y va de son protocole à lui de méta annuaire. pas terrible.
          • [^] # Re: Ajout du support LDAP pour DHCP

            Posté par  . Évalué à 2.

            en fait ça c'est la FAQ de DSMLv1, qui avait pour objectif de décrire la structure d'une annuaire via XML

            avec DSMLv2 ils ont changé d'objectif, pour décrire les requêtes et les réponses, et donc le protocole LDAP

            The Directory Services Markup Language version 2.0 (DSMLv2) is "an XML application that provides a method for expressing directory queries, updates, and the results of these operations. Whereas DSML version 1 provides a means for representing directory contents XML documents, DSML version 2 with bindings such as the SOAP Request/Response Binding, allows for directories to be manipulated via XML. DSMLv2 focuses on extending the reach of LDAP directories. Therefore, as in DSMLv1, the design approach is not to abstract the capabilities of LDAP directories as they exist today, but instead to faithfully represent LDAP directories in XML. The difference is that DSMLv1 represented the state of a directory while DSMLv2 represents the operations that an LDAP directory can perform and the results of such operations. Therefore the design approach for DSMLv2 is to express LDAP requests and responses as XML document fragments."

            source : http://xml.coverpages.org/ni2001-11-30-a.html(...)

            c'est pas très clair mais bon... je le comprends comme ça :)


            quant à dsml.org il a été volé :-/
            c'est assez hallucinant d'ailleurs, à ce niveau là, de se faire voler un nom de domaine
            • [^] # DSML

              Posté par  . Évalué à 2.

              > c'est la FAQ de DSMLv1

              mmmh.. c'est bien ce que je craignais.

              > DSMLv2 [...] décrire les requêtes et les réponses, et donc le protocole LDAP

              Comme je dis plus haut, je trouve que c'est un contre emploi. LDAP marche bien comme protocole, et XML sert à décrire l'information, pas à faire du (relativement) bas niveau. Comme ils disent, ça ressemble à SOAP.

              Enfin si c'est pour permettre à un brouteur de se connecter facilement à un annuaire, pourquoi pas. Le machin n'est qu'une traduction du protocole.

              > dsml.org il a été volé

              o_O
              C'est dingue. Il y a un miroir quelque part?
              Mais ça me conforte dans mon idée que cette standardisation est au point mort. Comme le DSML TC chez oasis, comme les créateurs dataconnection.com.
              • [^] # Re: DSML

                Posté par  . Évalué à 2.

                Comme je dis plus haut, je trouve que c'est un contre emploi

                je pense exactement pareil
                mais à mon avis ca permet de faire plaisir aux décideurs pressés, des que tu mets "XML" qque part, ca fait bien

                pas de mirroirs pour dsml.org, c'est la honte, ca donne des trucs rigolos : par exemple l'url du namespace dsml :
                <?xml version="1.0"?>
                <dsmlRequest xmlns="http://www.dsml.org/DSML/v2">
                • [^] # Re: DSML

                  Posté par  . Évalué à 1.

                  > faire plaisir aux décideurs pressés, des que tu mets "XML" qque part, ca fait bien

                  Le JDnet, 01 et consorts trouvent que XML, c'est bien ©
                  (mais y voient pas les enjeux, les pauvres)

                  > l'url du namespace dsml :
                  <?xml version="1.0"?>
                  <dsmlRequest xmlns="http://www.dsml.org/DSML/v2(...)">

                  Euh, là, c'est un mauvais effet de bord... Je n'avais jamais pensé à ce genre de choses. Et pareil pour le schéma?

                  Un des grands avantages d'XML à mes yeux, c'est l'universalisme et la durée de vie des informations. Mais là, on perd ces avantages. Pour assurer la pérennité, faudrait-il inscrire le schéma dans chaque document? (et donc, pas d'espace de nommage) et du coup perdre la réutilisabilité du schéma...

                  Une mauvaise nouvelle pour moi.
                  • [^] # Re: DSML

                    Posté par  . Évalué à 1.

                    tu veux parler de l'inaccessibilité du fichier ?
                    la j'avoue que je m'yconnais pas trop...
                    il suffit de le mettre sur un autre serveur web et de changer l'url je pense...
                    on peut recuperer le schema et le namespace quelque part dans les méandre de l'immonde site d'oasis. ce site, j'ai l'impression que les pages changent a chaque fois que j'y vais, et qu'un peu durs de la feuille, ils confondent "important" et "n'importe où" pour classer les documents

                    sinon en ce qui me concerne, j'utilise en ce moment xml pour decrire des informations sur des objets LDAP, et je n'utilise pas DSML, j'ai du faire mon propre schéma pour mes besoins :-/. tu m'étonnes que tout le monde s'en foute du nom de domaine volé :-)
                    • [^] # pérénnité d'XML

                      Posté par  . Évalué à 1.

                      > tu veux parler de l'inaccessibilité du fichier ?

                      Oui, quand le schéma/namespace n'est plus dispo, le fichier xml tout seul perd beaucoup d'intéret.

                      > il suffit de le mettre sur un autre serveur web et de changer l'url

                      Non, la pérennité, c'est de pouvoir relire, modifier ce qui a été écrit il y a deux sciècles. Mais si le schéma est perdu, caca. Il faudrait garantir la pérénnité des urls.
                      Finalement on se retrouve avec un fichier pas plus explicite qu'un texte à plat.
                      • [^] # Re: pérénnité d'XML

                        Posté par  . Évalué à 1.

                        oui, c'est vrai que le web n'est pas fiable pour garantir la disponibilité d'une ressource...

                        et c'est le seul outil qu'on aie :-/
  • # Re: Ajout du support LDAP pour DHCP

    Posté par  . Évalué à 5.

    C'est vrai, il faut surtout penser à normaliser tout ça, sinon, on va faire de l'Active Directory bis.

    Les annuaires et LDAP sont promis à un très bel avenir. A l'image d'Internet, des Unix like et du libre, normalisons !

    Je pense depuis longtemps à une solution de gestion centralisée, basée sur un annuaire permettant d'alimenter, si possible sans scripts de conversion, un DHCP, un DNS...
    C'est vrai qu'une fois qu'on a la partie DHCP, on peut avoir le DNS mis à jour automatiquement via les mises à jour dynamiques.
    • [^] # Re: Ajout du support LDAP pour DHCP

      Posté par  . Évalué à 5.

      Oui et non.

      La normalisation, c'est bien, mais ca retire de la souplesse.

      Or, l'un des principaux avantages de LDAP, c'est justement d'etre souple, donc de pouvoir s'adapter aux besoins de chacun (et pas l'inverse).

      Apres, il "suffit" que les programmes soient suffisamment configurables (ce qui n'a pas l'air d'etre le cas de ce demon DHCP pour l'instant) pour pouvoir parametrer le filtre de requete, et les attributs recuperes, et zou, on fait ce qu'on veut.

      Donc oui a une normalisation des "bases" (ce qui est déjà fait, avec les Inetorgperson, Posixaccount, etc...), mais oui aussi a une certaine souplesse d'utilisation des annuaires !!!
  • # J'ai déjà vu ça quelque part...

    Posté par  . Évalué à 1.

    C'est toi l'anonyme qui a posté cette news sur http://gcu-squad.org(...) ?
  • # Re: Ajout du support LDAP pour DHCP

    Posté par  . Évalué à 6.

    petite question :

    dans l'article de Benjamin Jakubowski il est précisé ces paramètres dans /etc/nsswitch.conf :

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

    que g transformé pour un pc portable (mdk9.1) en :

    passwd: ldap [UNAVAIL=continue] files
    group: ldap [UNAVAIL=continue] files
    shadow: ldap [UNAVAIL=continue] files

    en effet, le pc portable est nomade.

    donc tout vas bien quand le pc est relié au réseau local, la connection ldap ce fait et donc je peux ouvrir ma session avec mon compte ldap. et quand le portable n'est pas connecté au réseau local, je peux ouvrir ma session avec mon compte local (donc /etc/passwd).

    MAIS quand le portable est connecté à internet via gprs (avec bluetooth et tout le bazard), il faut attendre une à 2 minute pour que la recherche de compte passe de "ldap" à "file".
    ce qui est logique.

    ma question est : peut-on réduire ce délai ? ou alors, peut-on définir la recherche ldap uniquement sur un périphérique réseau du genre eth0 et pas ppp0 ??
    • [^] # Re: Ajout du support LDAP pour DHCP

      Posté par  . Évalué à 5.

      ma question est : peut-on réduire ce délai ? ou alors, peut-on définir la recherche ldap uniquement sur un périphérique réseau du genre eth0 et pas ppp0 ??

      Dans le ldap.conf, pas a ma connaissance, mais indirectement, tu peux.

      Le moyen le plus "simple" qui me vient a l'esprit (mais pas forcément le plus subtil :-) est de passer par des règles de filtrage: tu configure ton netfilter pour faire un REJECT (qui va donc poliment prévenir l'emetteur du SYN que la connexion est refusée) sur le port LDAP (389, ou 636 si c'est en LDAP/SSL) sur l'interface ppp0....

      Normalement, le delai devrait passer a a peine quelques secondes....


      Ou alors, tu mets en place un système de VPN entre ton portable et ton serveur, comme ca tu pourras carrément t'authentifier avec le compte LDAP dans ce cas de figure :-)
      • [^] # Re: Ajout du support LDAP pour DHCP

        Posté par  . Évalué à -1.

        merci !!!!!
        • [^] # Re: Ajout du support LDAP pour DHCP

          Posté par  . Évalué à -1.

          ok, je prend note :
          dire merci -- > -1

          que faut-il faire pour être plussé ? insulter les gents qui donne un coup de main ?
          • [^] # Re: Ajout du support LDAP pour DHCP

            Posté par  . Évalué à 0.

            un -1 c'est pas méchant, à la base le système de XP sert à cacher les commentaires qui ne servent pas la discussion, le tien en fait partie, il ne descendra pas plus bas que -1 je pense (sinon ok c'est de l'abus)

            aller [-1] vu que je sers pas la discussion :)
  • # Re: Ajout du support LDAP pour DHCP

    Posté par  . Évalué à 1.

    Je pense savoir ce que sont le LDAP et le DHCP néanmoins, je saisis beaucoup moins bien l'interaction qu'il peut y avoir entre les deux. J'ai regardé le premier lien DHCP+LDAP mais je ne vois pas trop.

    Quelqu'un peut m'éclairer ? La récupération d'infos via DHCP se fait après authentification LDAP ? Ou un poste de travail récupère les informations concernant le serveur LDAP via DHCP ?
    • [^] # Re: Ajout du support LDAP pour DHCP

      Posté par  . Évalué à 2.

      Simple: la conf du DHCP est dans le LDAP.

      Tu as donc, dans ton annuaire LDAP, des fiches pour les utilisateurs (qui regroupent eventuellement un inetorgperson, un posixaccount, un smbaccount, etc...), des fiches de machines (qui regroupent eventuellement les infos DHCP, les infos SMB, les infos DNS, et je sais pas quoi d'autre), etc.....
      • [^] # Re: Ajout du support LDAP pour DHCP

        Posté par  . Évalué à 1.

        Ouais...Je veut bien mais quand meme, un dhcp c'est mieux quand c'est leger je trouve...Monter un LDAP pour faire du dhcp ca fait un peu usine a gaz. Et puis si le leasing dhcp est un peu court, il va falloir souvent mettre jour les info dans l'annuaire. Et un annuaire c'est plutot fait pour lire dedans que pour ecrire dessus (perso j'ecris jamais rien sur les pages jaunes).
        Je dit pas que c'est mal, mais bon, qu'est ce que ca apporte vraiment ? Ok, un ldap on peut l'interroger, struturer ces données, mais bon, ecrire un parser perl pour les logs du daemon dhcp c'est pas non plus trop dur.
        • [^] # Re: Ajout du support LDAP pour DHCP

          Posté par  . Évalué à 1.

          Et un annuaire c'est plutot fait pour lire dedans que pour ecrire dessus

          pour du dhcp je pense que y a pas trop d'accès (deux par session j'imagine) donc l'annuaire pourra le supporter
        • [^] # Re: Ajout du support LDAP pour DHCP

          Posté par  . Évalué à 3.

          Monter un LDAP pour faire du dhcp ca fait un peu usine a gaz

          Euh, oui, je trouve aussi, mais quand on a deja un LDAP qui centralise plein de choses, bah ca devient tout de suite plus intéressant !


          Et puis si le leasing dhcp est un peu court, il va falloir souvent mettre jour les info dans l'annuaire

          ?????

          C'est les infos de config du serveur DHCP qu'on stocke dans le LDAP, les infos "runtime" continuent a etre stockees en memoire/dans /var ou je sais pas ou ailleurs !


          Je dit pas que c'est mal, mais bon, qu'est ce que ca apporte vraiment ? Ok, un ldap on peut l'interroger, struturer ces données, mais bon, ecrire un parser perl pour les logs du daemon dhcp c'est pas non plus trop dur.


          Je crois que tu as pas bien compris ce qu'on met dans le LDAP...


          On va avoir par exemple une fiche (euh, me souviens plus des noms d'attributs exacts, on va dire que c'est un schema "maison" :-):


          dn: cn=PC1,ou=computers,o=worldcompany,dc=com
          objectclass: top
          objectclass: SMBHost
          objectclass: DHCPHost
          objectclass: DNSHost
          SMBHostname: PC1
          SMBDomain: WORLDCOMPANY
          SMBDomainController: SERVER1
          DHCPMACAddress: 00:aa:11:22:33:4a # vous embetez pas a verifier si c'est une MAC valide, hein :-)
          DHCPLease: 3600 # value in seconds
          DHCPIP: 192.168.2.1
          DNSHostName: pc1.worldcompany.com

          etc....

          Une fiche sur le LDAP regroupe (toutes ?) les infos de conf de la machine.
          • [^] # Re: Ajout du support LDAP pour DHCP

            Posté par  . Évalué à 1.

            Oui, c'est vrai, je suis d'accord que quand on a deja un LDAP, ca peut etre bien de tout centraliser.
            Si c'est pour mettre les info de config, je suis d'accord aussi (je suis cool hein)
            Par contre, je ne comprend pas, tu dis que les infos de lease restent dans /var, mais tu les met aussi dans ta 'fiche machine'...Dans ce cas, il va falloir mettre a jour le ldap regulierement. Bon ok, j'exagere un peu, dans la plupart des reseaux il n'y aura pas beaucoup de modifiation de fiches machines, mais imagine un reseaux wireless par exemple. Dans ce cas les fiches machines vont devoir etre modifiés tout le temps (mise a jour des addresses mac, ip et tout), et un annuaire n'est pas fait pour fonctionner comme ca. Meme si je suis sur que ca marcherais bien quand meme :)
            • [^] # Re: Ajout du support LDAP pour DHCP

              Posté par  . Évalué à 1.

              Par contre, je ne comprend pas, tu dis que les infos de lease restent dans /var, mais tu les met aussi dans ta 'fiche machine'...

              Euh, ouais, j'aurais du appeler ca DHCPMinLease, DHCPDefaultLease, etc...., mais comme je suis une grosse feignasse d'informaticien, j'ai fait rapide....


              Je redis donc bien: on met dans le LDAP ce qui serait dans le dhcpd.conf sinon !
          • [^] # Re: Ajout du support LDAP pour DHCP

            Posté par  . Évalué à 1.

            je te plusserais bien si il me restait des votes mais j'ai tout utilisé aujourd'hui :)

            merci pour ton explication, le howto gardant son nez dans la ligne de commande, j'avais pas compris grand chose...

            je ne connais pas bien DHCP : ca permet aussi de gérer des machine dont on ne connait rien a priori non ?

            dans ce cas, il va utiliser quoi comme valeurs ? une ip n'existant pas dans une fiche ldap, et un nom d'hote au pif ? ou il va créer une fiche a ce moment la ?
            • [^] # Re: Ajout du support LDAP pour DHCP

              Posté par  . Évalué à 1.

              je te plusserais bien si il me restait des votes mais j'ai tout utilisé aujourd'hui :)

              Bah a demain, alors :-)


              merci pour ton explication, le howto gardant son nez dans la ligne de commande, j'avais pas compris grand chose...

              Bah c'est un peu ma faute, puisque je n'ai toujours pas remis le nez dans une grosse doc centralisant tout ce qui tourne autour de LDAP, et effectivement, Benj se sert a moitie de certains de ses articles sur Xenux comme "pense bete".

              Mais on va y bosser, des que l'un de nous reveille l'autre :-)


              je ne connais pas bien DHCP : ca permet aussi de gérer des machine dont on ne connait rien a priori non ?

              Tout a fait. On peut reserver une conf a une machine dont on connait l'adresse MAC, par exemple, mais ca peut aussi servir a attribuer une configuration a des machines totalement "anonymes".


              dans ce cas, il va utiliser quoi comme valeurs ? une ip n'existant pas dans une fiche ldap, et un nom d'hote au pif ? ou il va créer une fiche a ce moment la ?

              Bah la j'ai créé une fiche correspondant a une machine, apres, pour ce que j'avais survolé de la conf DHCP en général, et de son report dans un LDAP, y'a moyen de créer des fiches "génériques", exactement de la meme facon qu'on crée des zones dans le dhcpd.conf.
          • [^] # Re: Ajout du support LDAP pour DHCP

            Posté par  . Évalué à 0.

            Ok je comprends mieux mais quelque chose me turlupine encore. Sachant que la machine va recevoir ses infos réseaux via le ldap, comment elle va faire pour y accéder si elle n'a pas encore son adresse ip par exemple ? C'est un peu l'oeuf ou la poule non ?

            Question pertinente ou alors j'ai toujours rien compris ? =)
            • [^] # Re: Ajout du support LDAP pour DHCP

              Posté par  . Évalué à 2.

              T'as rien compris :-)

              En fait, le poste client va emettre une requete DHCP "normale", qui va etre prise en compte par le serveur DHCP, qui va interroger le LDAP pour connaitre la conf a renvoyer, et va la renvoyer au client.

              C'est donc Client DHCP <=> Serveur DHCP <=> Serveur LDAP.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.