Chrooting Bind9

Tutorial rapide pour chrooter bind9. Le but est d’avoir un répertoire /var/lib/named ou se va se chrooter bind9. La configuration va se faire dans le etc relatif au chroot et les zones seront stockées dans le var relatif au chroot. Les manipulation sont faites sur une Debian Lenny. Créons d’abord les répertoires :

mkdir /var/lib/named
mkdir -p /var/lib/named/etc
mkdir /var/lib/named/dev
mkdir -p /var/lib/named/var/cache/bind
mkdir /var/lib/named/var/log
mkdir -p /var/lib/named/var/run/bind/run

On déplace la configuration :

mv /etc/bind /var/lib/named/etc

On fait un lien au cas on voudrait facilement le déchrooté (et aussi pour les upgrades) :

ln -s /var/lib/named/etc/bind /etc/bind

On se crée un socket en écoute dans le chroot pour rsyslog. Dans /etc/rsyslog.conf :

$AddUnixListenSocket /var/lib/named/dev/log

On crée les devices dans le chroot

mknod /var/lib/named/dev/null c 1 3
mknod /var/lib/named/dev/random c 1 8
chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random

On fixe les permissions :

chown -R bind:bind /var/lib/named/var/*
chown -R bind:bind /var/lib/named/etc/bind

Enfin dans /etc/defaults/bind9 :

OPTIONS="-u bind -t /var/lib/named"

Un restart de rsyslogd et bind et c’est parti !

1 Responses to “Chrooting Bind9”


  • A quoi servent les périphériques /dev/null et /dev/random ?

    Ne faudrait il pas définir un /etc/localtime pour avoir les bons timestamps dans les logs ?

Leave a Reply