diff options
| author | Brian Somers <brian@FreeBSD.org> | 2001-07-26 02:37:12 +0000 |
|---|---|---|
| committer | Brian Somers <brian@FreeBSD.org> | 2001-07-26 02:37:12 +0000 |
| commit | c5f947aa7ffed6b37085ba2ca3d7522fd0252093 (patch) | |
| tree | 971b4171db1907d3abb9a747a734ce289555abd6 | |
| parent | b964f385bb624a15a9a0109d76d3cab2ddf8b030 (diff) | |
Notes
| -rw-r--r-- | etc/defaults/periodic.conf | 1 | ||||
| -rwxr-xr-x | etc/periodic/daily/470.status-named | 79 | ||||
| -rw-r--r-- | share/man/man5/periodic.conf.5 | 4 |
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 |
