Website-Icon .: blog cscholz.io :.

Debian: bindgraph unter Debian 4.0 installieren

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
Die mobile Version verlassen