Nach vielen Versuchen Bindgraph zum laufen zu bekommen ist es mir endlich gelungen. Das Problem war, dass
a) die Berechtigungen auf /var/lib/bindgraph falsch gesetzt waren (root:adm und es muss daemon:adm sein)
b) das in der /usr/lib/cgi-bin/bindgraph.cgi Zeile 108, 109 & 110 Fehler verursachten
Die Installation funktionerte bei mir nach folgenden Schritten. Als erstes das Paket mittels apt-get installieren.
apt-get install bindgraph
Anschließend das logging für die bind aktivieren:
/etc/bind/named.conf logging {channel "querylog" { file "/var/log/bind9-query.log"; print-time yes; };category queries { querylog; }; };
Bind9 neustarten:
/etc/init.d/bind9 restart
Die Berechtigungen auf die Verzeichnise anpassen:
chmod 666 /var/log/bind9-query.log chown daemon:adm /var/log/bind9-query.log chown daemon:adm /var/lib/bindgraph/ -R
In der /usr/lib/cgi-bin/bindgraph.cgi die Zeilen 108, 109, 110 auskommentieren:
... @rrprint, # 'COMMENT:s', # 'COMMENT:last update: ' . localtime(last_update($rrd)) # . ' graph created on ' . localtime(time) . 'r', ); my $err = RRDs::error; die_fatal("RRDs::graph($file, ...): $err") if $err; ...
Die Werte der /etc/default/bindgraph kontrollieren. Bei einer Installation stand das LOG_FORMAT auf bind92 und nicht bind93:
DNS_LOG=/var/log/bind9-query.log LOG_FORMAT=bind93
Bei nicht auskommentierten Zeilen der /usr/lib/cgi-bin/bindgraph.cgi kam folgende Fehlermeldung
ERROR: RRDs::graph(/var/cache/bindgraph/,bindgraph.cgi/bindgraph_0.png.tmp, ...): Garbage ': Mon Nov 26 08:15:00 2007 graph created on Mon Nov 26 08:17:44 2007r' after command: COMMENT:last update: Mon Nov 26 08:15:00 2007 graph created on Mon Nov 26 08:17:44 2007r
Vergessen Sie nicht, die Datei bind9-query.log durch logrotate regelmäßig „archivieren“ zu lassen:
/etc/logrotate.d/bind9-query
/var/log/bind9-query.log { daily missingok rotate 10 postrotate /etc/init.d/bind9 reload > /dev/null endscript create 666 daemon adm compress delaycompress notifempty }
Anschließend noch sysklogd neustarten:
/etc/init.d/sysklogd restart