2010
04.01

Mise en place d’un serveur DHCP/DNS. Le serveur DNS sera dynamique.
Mon serveur a comme nom serveurDebian ( commande hostname ).
Mon ip serveur est 192.168.1.1 ( /etc/network/interfaces ).
Mon domaine est test.intra.
Mon serveur DHCP envoie les ip de 192.168.1.10 -> 20
Vous pouvez récupérer les fichiers finaux ici

1. DHCP classique

aptitude install dhcp3-server
modification du fichier /etc/dhcp3/dhcpd.conf

authoritative;
option domain-name "test.intra";
option domain-name-servers serveurDebian.test.intra;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.20;
option routers 192.168.1.1;
}

modification du fichier /etc/default/dhcp3-server pour ajouter mon interface réseau ( ethX avec ipFixe )
(exemple : INTERFACES= ‘eth1’ )
test des parametres avec la commande dhcp3-server
puis on lance le serveur /etc/init.d/dhcp3-server

2.DNS ( résolution directe et inversée )

2.a Résolution directe

– création d’un fichier /etc/bind/db.domaine à partir du fichier db.localcp db.local db.test.intra
– modification de ce fichier ( remplacer localhost. par nomMachine.domaine.)
– ajout d’une ligne ( fichier d’exemple )
serveurDebian IN A 192.168.1.1
– modification du /etc/bind/named.conf.local : ajout de notre zone
zone "test.intra" {
type master;
file "/etc/bind/db.test.intra";
};

Vérifiez dans le fichier /etc/resolv.conf que vous avez
domain test.intra
search test.intra
nameserver IPdeVotre machine

Redémarrez le service ( /etc/init.d/bind9 restart )
test avec nslookup nomMachine

2.b Résolution inversée

– création d’un fichier /etc/bind/db.ipRéseau à partir du fichier db.127lcp db.127 db.192.168.1
– modification de ce fichier ( remplacer localhost. par nomMachine.domaine.)
– ajout d’une ligne ( fichier exemple )
1 IN PTR serveurDebian.test.intra
– modification du /etc/bind/named.conf.local : ajout de notre zone
zone "1.168.192.in-addr.arpa" {
type master;
file "/etc/bind/db.192.168.1";
};

Redémarrez le service ( /etc/init.d/bind9 restart )
test avec nslookup IPServeur

3.Ajout de la mise à jour dynamique

3.a Création de la clé DNS

rndc-confgen>/etc/bind/rncd.key
recuperation des éléments pour le fichier named.conf
tail /etc/bind/rndc.key>>named.conf
Commenter le bloc options dans le fichier rndc.key

3.b définition des zones qui utilisent la clé

/etc/bind/named.conf.local
ajout pour les 2 zones de la ligne
allow-update key{rndc-key;};
( fichier named.conf et named.conf.local)

3.c mise à jour du dhcp

Dans le fichier /etc/dhcp3/dhcpd.conf

ajout des lignes au début du fichier:

ddns-updates on;
ddns-update-style interim;
ddns-domainname "test.intra";
ddns-rev-domainname "in-addr.arpa";
allow client-updates;

ajout des lignes dans mon subnet :

include "/etc/bind/rndc.key";
zone test.intra. {
primary 192.168.1.1;
key rndc-key;
}
zone 1.168.192.in-addr.arpa. {
primary 192.168.1.1;
key rndc-key;
}

( fichier dhcpd.conf )
Enfin
Modifier les droits sur /etc/bind ( chown -R bind:bind /etc/bind )
test : redémarrage du serveur DNS et du serveur DHCP.
Vérification des logs ( tail -f /var/log/syslog )

tester sur XP avec ipconfig /release puis /renew puis ipconfig /all pour vérifier l’adresse IP DNS
nslookup votre nomXP doit marcher !

23 commentaires pour le moment

Ajoutez votre commentaire
  1. […] samba : /etc/init.d/samba restart Et voilà votre serveur de domaine est prêt ! Associez au tutoriel DHCP/DNS dynamique, votre serveur est pratiquement parfait…. reste plus que les comptes […]

  2. bonjour g voudrais avoir
    si on peut installer un dns ou dhcp une machine virtuellle (os debian ) tournant sur wmware ou virtual box ?
    et ensuite si on ne doit pas configurer le domaine avec SAMBa avant de passer a l’installation du dns et dhcp

  3. c’est bel et bien possible d’installer debian sur une machine virtuelle. ca e qui est le cas pour moi à présent car je prépare un projet.
    Samba se configure après le dns et le dhcp.

  4. j’arrive pas à redémarrer le service bind sur mon serveur debian en machine virtuel vmware

  5. @reeda > il faut bien penser à mettre les bons droits sur le repertoire /etc/bind

    Modifier les droits sur /etc/bind ( chown -R bind:bind /etc/bind )

  6. sudo /etc/init.d/dhcp3-server start
    dhcpd self-test failed. Please fix the config file.
    The error was:
    Internet Systems Consortium DHCP Server V3.1.3
    Copyright 2004-2009 Internet Systems Consortium.
    All rights reserved.
    For info, please visit https://www.isc.org/software/dhcp/
    Can’t open /etc/bind/rndc.key: Permission denied

    J’ai bien accordé les droit sur rndc.key avec la cmd « chmod 777 rcnd.key »
    je n’arrive pas à trouver mon erreur ????

  7. @dada > as tu bien les bons droits sur le répertoire /etc/bind ?

    chown -R bind:bind /etc/bind

  8. Oui j’ai accordé les bons droits sur /etc/bind, c’est vraiment l’utilisateur dhcpd qui n’a aucun droit sur le repertoire /etc/bind.
    j’ai réussi a « feinter » en copiant le fichier rndc.key dans le répertoire /etc/dhcp3/ mais je retombe toujours sur la même erreur de permission d’écriture dans /etc/bind, comme ci-dessous :

    Mar 22 11:36:55 ubuntu dhcpd: Wrote 2 leases to leases file.
    Mar 22 11:37:05 ubuntu named[1815]: client 192.168.1.205#39403: signer « rndc-key » approved
    Mar 22 11:37:05 ubuntu named[1815]: client 192.168.1.205#39403: updating zone ‘dada.lan/IN’: adding an RR at ‘ubuntu-client.dada.lan’ A
    Mar 22 11:37:05 ubuntu named[1815]: client 192.168.1.205#39403: updating zone ‘dada.lan/IN’: adding an RR at ‘ubuntu-client.dada.lan’ TXT
    Mar 22 11:37:05 ubuntu named[1815]: /etc/bind/db.dada.lan.jnl: create: permission denied
    Mar 22 11:37:05 ubuntu named[1815]: client 192.168.1.205#39403: updating zone ‘dada.lan/IN’: error: journal open failed: unexpected error
    Mar 22 11:37:05 ubuntu dhcpd: Unable to add forward map from ubuntu-client.dada.lan to 192.168.1.210: timed out
    Mar 22 11:37:05 ubuntu kernel: [ 6280.768042] type=1503 audit(1300819025.730:25): operation= »mknod » pid=1816 parent=1 profile= »/usr/sbin/named » requested_mask= »c:: » denied_mask= »c:: » fsuid=103 ouid=103 name= »/etc/bind/db.dada.lan.jnl »

  9. Même problème que « dada » ……… pourtant j’ai suivi ton tuto à la lettre……………… help me!!!!!!!!

  10. @marko + @dada> vous êtes sur quelle version de Debian / Ubuntu ?
    Par rapport à la log :
    le problème vient des droits sur /etc/bind
    Mar 22 11:37:05 ubuntu named[1815]: /etc/bind/db.dada.lan.jnl: create: permission denied

    Le fichiers jnl lui permet de les mises à jour dynamique ( nouvelle attribution de l’adresse IP, expiration du bail / reverse etc … )
    2 possibilités : les droits sur /etc et les droits sur /etc/bind ainsi que le propriétaire du répertoire. Le client DHCP ne fait que lire le fichier rndc.key. Mettez les droits 755 sur le répertoire /etc/bind ainsi que sur ses fichiers ( chmod -R 755 /etc/bind )

  11. Merci de te réponse mais j’avais exactement fait cela, juste avant de te poster le dernier message. C’est un problème de droit d’écriture sur le dossier /etc/bind mais j’ai beau tout essayer il n’y a rien à faire, j’ai toujours la même erreur.
    j’ai fait : chmod -R 777 /etc/bind
    ajouter le login dhcpd dans le groupe bind et root

    /etc/bind/db.dada.lan.jnl: create: permission denied
    updating zone ‘dada.lan/IN’: error: journal open failed: unexpected error

    mais il y a toujours cette même maudite et incompréhensible erreur.

  12. mon name.conf
    include « /etc/bind/named.conf.options »;
    include « /etc/bind/named.conf.local »;
    include « /etc/bind/named.conf.default-zones »;
    key « rndc-key » {
    algorithm hmac-md5;
    secret « XXXXXXXXXXXXX »;
    };

    controls {
    inet 127.0.0.1 port 953
    allow { 127.0.0.1; } keys { « rndc-key »; };
    };

    mon name.conf.local

    zone « dada.lan » {
    type master;
    file « /etc/bind/db.dada.lan »;
    allow-update {key rndc-key;};
    };

    zone « 1.168.192.in-addr.arpa » {
    type master;
    notify no;
    file « /etc/bind/db.192.168.1 »;
    allow-update {key rndc-key;};
    };

    mon dhcpd.conf

    ddns-updates on;
    ddns-update-style interim;
    ddns-domainname « dada.lan »;
    ddns-rev-domainname « in-addr.arpa »;
    allow client-updates;

    # option definitions common to all supported networks…
    option domain-name « dada.lan »;
    option domain-name-servers ubuntu.dada.lan;

    default-lease-time 600;
    max-lease-time 7200;

    # If this DHCP server is the official DHCP server for the local
    # network, the authoritative directive should be uncommented.
    authoritative;

    # Use this to send dhcp log messages to a different log file (you also
    # have to hack syslog.conf to complete the redirection).
    log-facility local7;

    # No service will be given on this subnet, but declaring it helps the
    # DHCP server to understand the network topology.

    subnet 192.168.1.0 netmask 255.255.255.0 {
    range 192.168.1.210 192.168.1.220;
    include « /etc/dhcp3/rndc.key »;
    zone dada.lan {
    primary 192.168.1.205;
    key rndc-key;
    }
    zone 1.168.192.in-addr.arpa.{
    primary 192.168.1.205;
    key rndc-key;
    }
    }

  13. @dada > est ce que ton fichier n’existe pas deja? Quelle version d’Ubuntu utilises tu ?
    quelles sont les droits sur /etc ?

  14. Non le fichier .jnl n’existe pas déja et la version de mon ubuntu est la 10.04 LTS.
    les droits sur le etc sont :
    drwxrwxrwx 84 0 0 4096 2011-03-24 12:05 etc

    Cette erreur de « permission denied » est vraiment illogique car le login dhcpd fait parti du groupe root et lui autorise des droits d’administrations plus que suffisant.

  15. Je me souviens avoir le même souci une fois, et si mes souvenirs sont exacts ( ce qui n’est pas assuré ) , c’était un problème de droits.
    De plus, le fichier JNL est modifier par bind, esayer en mettant les propritétaires bind:bind , ou root:bind ou root:root. C’est que c’est sensible rndc …

  16. That’s a mold-breaker. Great thinking!

  17. Pour tout ceux qui ont le message d’erreur au redémmarage du serveur dhcp

    « dhcpd self-test failed. Please fix the config file.
    The error was:
    Internet Systems Consortium DHCP Server V3.1.1
    Copyright 2004-2008 Internet Systems Consortium.
    All rights reserved.
    For info, please visit http://www.isc.org/sw/dhcp/
    Can’t open /etc/bind/rndc.key: Permission denied »

    il faut ouvrir le fichier « /etc/apparmor.d/usr.sbin.dhcpd3 »

    rajouter ces deux lignes:

    /etc/bind/ rw,
    /etc/bind/** rw,

    puis redémmarer grace a la commande « /etc/init.d/apparmor restart ou reload

    redémmarer le serveur DHCP et ….. =D

  18. bonjour

    pour les personnes qui ont cette erreur :
    /etc/bind/db.dada.lan.jnl: create: permission denied
    updating zone ‘dada.lan/IN’: error: journal open failed: unexpected error

    aller dans le fichier /etc/bind/named.conf.local et changer

    file « /etc/bind/db.test.intra »; par file « /var/cache/bind/db.test.intra »;
    file « /etc/bind/db.192.168.1 »; par file « /var/cache/bind/db.192.168.1 »;

    et créer vos fichiers de zones dans la répertoire : /var/cache

  19. Ceci est alternative aux problèmes des droits d’accès au répertoire, qui ne corrigent pas vraiment le problème initial ….

  20. merci pour le tuto et merci pour bakabk de votre intervation ki a resolu mon blm

  21. j’ai configuré mon serveur dhcp, mais je ne sais comment faire pour qu’une machine cliente reçoive une @ ip de mon serveur?????!!!

  22. si ta machine cliente est une windows :
    Démarrez->Executer->cmd
    ipconfig /release
    ipconfig /renew
    Si ta machine cliente est du Linux :
    /etc/init.d/network ( ou networking ) restart
    après ça dépend des distributions.

  23. Fantastic! Nizza Post, sind Blog meine No.1!
    brautkleider

%d blogueurs aiment cette page :