Ces derniers jours j'ai eu besoin de mettre en place rapidement une petite architecture DNS en place pour des besoins internes. Les critères pour la mise en place du serveur DNS étaient les suivants :
- simple
- possibilité de configuration via un annuaire LDAP
- et surtout, la possibilité de l'installer facilement via apt.
A coup de apt-cache search je suis tombé sur PowerDNS et aprés un tour sur le site Web du projet ma foi celui ci semblait répondre à tous mes critères de recherches - Bind ne semblait pas fournir de support LDAP sans patch.
$ sudo aptitude install pdns-server pdns-recursor pdns-backend-ldap
Dans mon cas à moi l'installation du packet pdns-recursor est important car cela va permettre à PowerDNS d'interroger d'autres serveurs DNS pour des requêtes qu'il n'est pas capable de gérer.
Je passe sur la configuration LDAP, assez simple ma foi, pour me concentrer sur celle du récursor. En effet la documentation en ligne ne m'a pas bcp aidé à ce sujet même si au final le principe est simple :
- faire fonctionner PowerDNS comme un serveur DNS
- autoriser la récursivité sur les interfaces locales. Le pourquoi ici : http://alternc.org/marchives/dev/2006-March/002151.html
- préciser à PowerDNS l'IP et le port du récursor
- démarrer le recursor.
Dans le fichier /etc/powerdns/pdns.conf
allow-recursion=127.0.0.1 10.1.10.0/24 allow-recursion-override=on recursor=127.0.0.1:5353
Ensuite pour /etc/powerdns/recursor.conf
allow-from=127.0.0.0/8 local-port=5353 local-address=127.0.0.1
Manque plus qu'à rédémarrer le bazar
$ sudo /etc/init.d/pdns restartRestarting PowerDNS authoritative nameserver: stopping and waiting..done Starting PowerDNS authoritative nameserver: started $ sudo /etc/init.d/pdns-recursor restart Restarting PowerDNS recursor: pdns-recursorFeb 19 23:17:12 PowerDNS recursor 3.1.4 (C) 2001-2006 PowerDNS.COM BV (Nov 12 2006, 23:19:09, gcc 4.1.2 20061028 (prerelease) (Debian 4.1.1-19)) starting up Feb 19 23:17:12 PowerDNS comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it according to the terms of the GPL version 2. Feb 19 23:17:12 Operating in 32 bits mode Feb 19 23:17:12 Only allowing queries from: 127.0.0.0/8 Feb 19 23:17:12 Inserting rfc 1918 private space zones Feb 19 23:17:12 Listening for UDP queries on 127.0.0.1:5353 Feb 19 23:17:12 Listening for TCP queries on 127.0.0.1:5353 Feb 19 23:17:12 Done priming cache with root hints Feb 19 23:17:12 Calling daemonize, going to background
