aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Somers <brian@FreeBSD.org>2001-07-26 02:37:12 +0000
committerBrian Somers <brian@FreeBSD.org>2001-07-26 02:37:12 +0000
commitc5f947aa7ffed6b37085ba2ca3d7522fd0252093 (patch)
tree971b4171db1907d3abb9a747a734ce289555abd6
parentb964f385bb624a15a9a0109d76d3cab2ddf8b030 (diff)
Notes
-rw-r--r--etc/defaults/periodic.conf1
-rwxr-xr-xetc/periodic/daily/470.status-named79
-rw-r--r--share/man/man5/periodic.conf.54
3 files changed, 33 insertions, 51 deletions
diff --git a/etc/defaults/periodic.conf b/etc/defaults/periodic.conf
index 8780ba55e84e6..f4b2ff728a048 100644
--- a/etc/defaults/periodic.conf
+++ b/etc/defaults/periodic.conf
@@ -121,7 +121,6 @@ daily_status_mail_rejects_logs=3 # How many logs to check
# 470.status-named
daily_status_named_enable="YES"
-daily_status_named_logs=3 # How many logs to check
daily_status_named_usedns="YES" # DNS lookups are ok
# 500.queuerun
diff --git a/etc/periodic/daily/470.status-named b/etc/periodic/daily/470.status-named
index d3396fa2f415c..e8e1365cf0e93 100755
--- a/etc/periodic/daily/470.status-named
+++ b/etc/periodic/daily/470.status-named
@@ -11,59 +11,46 @@ then
source_periodic_confs
fi
+catmsgs() {
+ find /var/log -name 'messages.*' -mtime -2 |
+ sort -t. -r -n +1 -2 |
+ xargs zcat -f
+ [ -f /var/log/messages ] && cat /var/log/messages
+}
+
case "$daily_status_named_enable" in
[Yy][Ee][Ss])
- if [ "$daily_status_named_logs" -le 0 ]
- then
- echo '$daily_status_named_enable is set but ' \
- '$daily_status_named_logs is not greater than zero'
- rc=2
- else
- echo
- echo 'Checking for denied zone transfers (AXFR and IXFR):'
+ echo
+ echo 'Checking for denied zone transfers (AXFR and IXFR):'
- start=`date -v-1d '+%b %d' | sed 's/0\(.\)$/ \1/'`
- n=$(($daily_status_named_logs - 2))
- rc=$({
- while [ $n -ge 0 ]
- do
- if [ -f /var/log/messages.$n ]
- then
- cat /var/log/messages.$n
- elif [ -f /var/log/messages.$n.gz ]
- then
- zcat -fc /var/log/messages.$n.gz
- fi
- n=$(($n - 1))
- done
- cat /var/log/messages
- } |
- perl -ne 'print "$2 from $1\n"
- if (/$start.*named\[\d+\]: denied [AI]XFR from \[(.*)\]\.\d+ for "(.*)"/);' |
- sort -f | uniq -ic |
- perl -e '
- use Socket;
+ start=`date -v-1d '+%b %d' | sed 's/0\(.\)$/ \1/'`
+ rc=$(catmsgs |
+ perl -ne 'print "$2 from $1\n"
+ if (/^'"$start"'.*named\[\d+\]: denied [AI]XFR from \[(.*)\]\.\d+ for "(.*)"/);' |
+ sort -f | uniq -ic |
+ perl -e '
+ use Socket;
- while (<STDIN>) {
- if (/^.*from (.*)$/) {
- $ip_addr = $1;
- chomp;
- if ($ARGV[0] =~ /^yes$/i) {
- ($host) = gethostbyaddr(inet_aton($ip_addr), AF_INET);
- } else {
- $host = "";
- }
+ while (<STDIN>) {
+ if (/^.*from (.*)$/) {
+ $ip_addr = $1;
+ chomp;
+ if ($ARGV[0] =~ /^yes$/i) {
+ ($host) = gethostbyaddr(inet_aton($ip_addr), AF_INET);
+ } else {
+ $host = "";
+ }
- if ($host) {
- print "$_ ($host)\n";
- } else {
- print "$_\n";
- }
+ if ($host) {
+ print "$_ ($host)\n";
+ } else {
+ print "$_\n";
}
}
- ' $daily_status_named_usedns | tee /dev/stderr | wc -l)
- [ $rc -gt 0 ] && rc=1
- fi;;
+ }
+ ' $daily_status_named_usedns | tee /dev/stderr | wc -l)
+ [ $rc -gt 0 ] && rc=1
+ ;;
*) rc=0;;
esac
diff --git a/share/man/man5/periodic.conf.5 b/share/man/man5/periodic.conf.5
index 8f211f71c97f7..b30ad8fd0f2bc 100644
--- a/share/man/man5/periodic.conf.5
+++ b/share/man/man5/periodic.conf.5
@@ -462,10 +462,6 @@ Set to
.Dq YES
if you want to summarise denied zone transfers (AXFR and IXFR)
for the previious day.
-.It Va daily_status_named_logs
-.Pq Vt num
-Set to the number of log files that should be checked for
-yesterday's rejected zone transfers.
.It Va daily_status_named_usedns
.Pq Vt bool
Set to