aptitude install -y rsyslog bind9 bind9-doc dnsutils
После
окончания установки надо убедиться,
что в файле /etc/resolv.conf
первым прописан 127.0.0.1
nameserver 127.0.0.1
Если
нужно, то отключаем ipv6
(/etc/bind/named.conf.options)
listen-on-v6 { none; };
Рестартим демон
сервера:
/etc/init.d/bind9 restart
и проверяем:
root@ns1:~# netstat -tunlp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 192.168.17.2:53 0.0.0.0:* LISTEN 816/named tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 816/named tcp 0 0 127.0.0.1:953 0.0.0.0:* LISTEN 816/named udp 0 0 192.168.17.2:53 0.0.0.0:* 816/named udp 0 0 127.0.0.1:53 0.0.0.0:*
Для полной проверки,
используем команду dig из пакета dnsutils.
root@ns1:~# dig debian.org ; <<>> DiG 9.7.2-P3 <<>> debian.org ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- 127.0.0.1="" 128.31.0.51="" 15="" 194.177.211.209="" 196="" 1="" 2001:648:2ffc:deb::10:10="" 2010="" 206.12.19.7="" 21:47:12="" 2607:f8f0:610:4000:214:38ff:feee:b65a="" 28606="" 2="" 3600="" 3="" 64434="" 96="" a="" aaaa="" additional:="" additional="" answer:="" answer="" authority:="" authority="" debian.org.="" dec="" flags:="" font="" id:="" in="" msec="" msg="" noerror="" ns1.debian.org.="" ns2.debian.org.="" ns4.debian.com.="" ns="" opcode:="" qr="" query:="" query="" question="" ra="" rcvd:="" rd="" section:="" server:="" size="" status:="" time:="" wed="" when:="">->
Защита
bind9.
Из
директории /usr/local/sbin/
запускаем
скрипт chroot-bind9:
#!/bin/bash
/etc/init.d/bind9 stop
mkdir -p /var/chroot/bind9/{etc,dev,var/cache/bind,var/run/bind/run}
chown -R bind:bind /var/chroot/bind9/var/*
mknod /var/chroot/bind9/dev/null c 1 3
mknod /var/chroot/bind9/dev/random c 1 8
chmod 666 /var/chroot/bind9/dev/{null,random}
mv /etc/bind /var/chroot/bind9/etc
ln -s /var/chroot/bind9/etc/bind /etc/bind
chown -R bind:bind /etc/bind/*
chmod -R g+w /etc/bind/
echo "\$AddUnixListenSocket /var/chroot/bind9/dev/log" > /etc/rsyslog.d/bind-chroot.conf
sed -e 's,"-u bind","-u bind -t /var/chroot/bind9",' /etc/default/bind9 > /tmp/x && mv /tmp/x /etc/default/bind9
/etc/init.d/bind9 start
Переключаем
bind9 для использования chroot (/etc/default/bind9)
OPTIONS="-u bind -t /var/chroot/bind9"
В
окончании рестартим rsyslogd
и стартуем bind9
/etc/init.d/rsyslog restart
/etc/init.d/bind9 restart