DNSSECReport.com
Free DNS Reports, Key Monitoring, Software and Alerts
A new DNSSEC component that must be purchased, upgraded, or outsourced is the DNSSEC Recursive Validator. This is an instance of Bind, Unbound, or equivalent software that is capable of validating public keys with DNS servers that have signed the zone with a corresponding private key. Existing recursive validators may be upgraded, but first the OS must be upgraded with the latest security patches, hardened using FIPS PUB 800-81R1, and finally reconfigured to validate public/private keys.
DNSSEC will be deployed in the USA during 2009 and will become a standard means for establishing trust among organizations. There will be a handful of DNS servers for each large government agency or corporation that will be specifically configured to validate the DNSSEC keys and cache the DNS results. These servers will need to capture the successful and unsuccessful key validations and assist system administrators with the diagnosis of failed keys and halted email and web traffic as a result.
During these times of organization panic, it will be helpful to have configured your Recursive Validators with the proper settings to minimize potential problems and speed the diagnosis of trouble. Below is a set of configuration settings for Bind 9.6.x that attempts to meet these goals.
Step #1 - Enable recursive validation
Use the following in named.conf to enable recursive validation in bind:
options {
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
allow-query { any; };
allow-recursion { any; };
...
}
trusted-keys {
$include /etc/bind/dnssecreport-daily.txt ; scrubbed/tested keys
}
logging {
channel dnssec_log {
file "dnssec.log" size 100m;
print-time yes;
print-category yes;
print-severity yes;
};
channel keycheck_file {
file "validation.log" versions 5;
severity debug 3;
print-category yes;
print-severity yes;
print-time yes;
};
category dnssec {dnssec_log; };
category security {dnssec_log; };
category default {default_syslog; keycheck_file; };
category general {default_syslog; keycheck_file; };
category update {default_syslog; keycheck_file; };
};
cd /etc/bind
wget http://www.dnssecreport.com/DNSSECReport/dnssecreport-daily.txt
/usr/sbin/named restart
dig +dnssec A www.dotgov.gov @localhost
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 1424
grep 'validation failed' dnssec.log > myfailedvalidations.txt
grep success dnssec.log > mysuccessfulvalidations.txt