#!/bin/sh # # pdns_recursor munin plugin. # Written by Sean Reifschneider 2009-12-03 # Placed in the public domain # # Requires running as root: # # echo '[pdns_rec_*]' >/etc/munin/plugin-conf.d/pdns_rec # echo 'user root' >>/etc/munin/plugin-conf.d/pdns_rec rec_control="/usr/bin/rec_control" if [ "$1" = "autoconf" ]; then if [ -e "$rec_control" ]; then echo yes exit 0 else echo "no (missing $rec_control)" exit 0 fi fi if [ "$1" = "config" ]; then echo 'graph_title PDNS Recursor Unauthorized' echo 'graph_order tcp udp unexpected' echo 'graph_vlabel queries' echo 'graph_info Unauthorized requests' echo 'graph_category dns' echo 'tcp.label tcp' echo 'tcp.min 0' echo 'tcp.max 100000' echo 'tcp.type COUNTER' echo 'tcp.info Unauthorized TCP queries' echo 'udp.label udp' echo 'udp.min 0' echo 'udp.max 100000' echo 'udp.type COUNTER' echo 'udp.info Unauthorized UDP queries' echo 'unexpected.label unexpected' echo 'unexpected.min 0' echo 'unexpected.max 100000' echo 'unexpected.type COUNTER' echo 'unexpected.info Unexpected queries (may indicate spoofing)' exit 0 fi echo tcp.value "$($rec_control get unauthorized-tcp)" echo udp.value "$($rec_control get unauthorized-udp)" echo unexpected.value "$($rec_control get unexpected-packets)" exit 0