gblend-1
Accueil du site > Documentations > Réseau > DNS + LDAP

DNS + LDAP

Publié le jeudi 16 février 2006, mis a jour le samedi 28 juillet 2007, par Stephane MALINET

Cette documentation a pour but la mise en place d’un serveur DNS prenant ses informations dans un annuaire LDAP.


Introduction

Vous m’excuserez de me répeter : mais le gros intéret de ce genre de configuration, via un annuaire LDAP, est la centralisation des données propre à l’administration de vos ressources informatiques.

D’autant qu’un annuaire LDAP est simple à répliquer et permettra la modification des informations du DNS de manière dynamique.

Vous pourriez utiliser le paquet net-dns/bind mais ici il ne sera question que de la configuration pour le paquet net-dns/ldapdns que j’ai retenu pour sa légereté et aussi car il ne nécéssite aucun ajout de schema au paquet net-nds/openldap si ce n’est cosine.schema qui y est inclue.

Installation

Dans ce qui suit nous allons procéder à l’installation du paquet net-dns/djbdns dont nous utiliserons le cache, mais si cette partie ne vous intéresse pas, vous pouvez passer directement à l’installation de net-dns/ldapdns.

Installons donc net-dns/djbdns et net-dns/ldapdns :

# emerge -av net-dns/djbdns net-dns/ldapdns

Vous devriez optenir quelque chose comme ça :

[ebuild  N    ] sys-process/daemontools-0.76-r5  USE="-doc -static" 36 kB
[ebuild  N    ] sys-apps/ucspi-tcp-0.88-r10  USE="-doc -ipv6 ssl" 56 kB
[ebuild  N    ] net-dns/djbdns-1.05-r14  USE="-aliaschain -cnamefix -doc -fwdzone -ipv6 multipleip -roundrobin -semanticfix -static" 96 kB
[ebuild  N    ] net-nds/openldap-2.2.28-r3  USE="berkdb crypt -debug gdbm -ipv6 -kerberos -minimal -odbc perl readline -samba -sasl -slp ssl tcpd" 4,565 kB
[ebuild  N    ] net-dns/ldapdns-2.04

Configuration

Pour la configuration du paquet net-nds/openldap, veuillez vous reporter à la documentation officielle.

Dans les exemples qui suivent, nous utiliserons domaine : gentoofr.org.

ldapdns

Passons donc, dans un premier temps, à la configuration de ldapdns. Il existe un script pour se faire : ldapdns-conf.

Tapez ce qui suit :

# ldapdns-conf
Usage: ldapdns-conf acct logacct /dir myip ldaphost dn [suffix]

acct correspond au compte sous lequel le processus de ldapdns tournera, logacct le compte pour le processus des logs, /dir le repertoire d’installation,myip l’ip d’écoute, ldaphost l’adresse du serveur LDAP, dn le nom complet du compte dont se servira ldapdns pour se connecter au serveur LDAP et enfin [suffix] le contexte de recherche dans l’annuaire.

# ldapdns-conf ldapdns dnslog /var/ldapdns \
127.0.0.1 \
//%2fvar%2frun%2fopenldap%2fsldapd.sock \
cn=Manager,dc=gentoofr,dc=org \
dc=gentoofr,dc=org

Renseignons le mot-de-passe du compte cn=Manager,dc=gentoofr,dc=org :

# echo secret > /var/ldapdns/root/password
# chmod 0400 /var/ldapdns/root/password

Configurons ldapdns pour qu’il s’authentifie avec la methode simple et qu’il utilise le schema LDAP cosine :

# echo simple > /var/ldapdns/env/LDAP_AUTH
# echo cosine > /var/ldapdns/env/SCHEMA

Finalement, instalons ldapdns en tant que service :

# cd /service && ln -s /var/ldapdns ldapdns
# rc-update -a svscan default
# /etc/init.d/svscan start

dnscache

Ensuite, configurons notre serveur cache DNS, dnscache. Il existe deux scripts pour se faire : dnscache-conf et dnscache-setup. Je ne rentrerai pas dans le détail de dnscache-setup puisque chaque étape y est commentée.

Tapez ce qui suit :

# dnscache-conf
dnscache-conf: usage: dnscache-conf acct logacct /dnscache [ myip ]

acct correspond au compte sous lequel le processus de dnscache tournera, logacct le compte pour le processus des logs, /dnscache le repertoire d’installation et enfin l’ip d’écoute.

# dnscache-conf dnscache dnslog /var/dnscache 192.168.0.1

Si vous voulez que dnscache serve de cache pour les serveurs DNS de votre F.A.I., éditez le fichier /var/dnscache/root/servers/@ et mettez-y les ip en question, mais attention une par ligne.

Indiquons à dnscache les requètes auxquelles il devra répondre ainsi que le ou les serveurs qui lui donneront les informations.

# echo 127.0.0.1 > /var/dnscache/root/servers/0.168.192.in-addr.arpa
# echo 127.0.0.1 > /var/dnscache/root/servers/gentoofr.org

Ceci étant fait, installons dnscache en tant que service :

# cd /service && ln -s /var/dnscache dnscache
# /etc/init.d/svscan restart

Conclusion

A ce niveau vos services de cache DNS et DNS fonctionnent, il ne reste donc plus qu’à renseigner l’annuaire. Voici donc un exemple :

Zip - 377 octets
gentoofr.ldif

une fois que vous aurez rentré vos informations dans l’annuaire, vérifiez que votre serveur réponde correctement avec le paquet net-dns/bind-tools.

Liens

- Documentation ldapdns en anglais

- DNS

- LDAP

Répondre à cet article


Suivre la vie du site RSS 2.0 | Plan du site | Espace privé | SPIP | squelette