Blog Topics
| Development ( 16 ) |
| DNS ( 17 ) |
| Javascript ( 6 ) |
| Linux ( 8 ) |
| MySQL ( 4 ) |
| Oracle ( 4 ) |
| Perl ( 9 ) |
| PHP ( 6 ) |
| Solaris ( 10 ) |
| Sybase ( 8 ) |
| VitalQIP ( 7 ) |
| Windows Server ( 2 ) |
What's Popular?

| Bind 9.7.0 - Part 2, New DNSSEC key metadata |
|
|
|
| Written by Patrick H. Piper | ||||||||||||||||
|
A different approach has been taken by the BIND development team to implement DNSSEC key lifecycle management through the storage of metadata directly in DNSSEC keys, represented by all those K* files that get generated with the dnssec-keygen utility. Which BIND-provided tools now support and implement the DNSSEC key metadata? The following utilities now implement and handle the metadata of DNSSEC keys:
What metadata is stored in the keys? The tools named above all support a new set of arguments for controlling the metadata that is supplied to DNSSEC keys. The following metadata is now supported:
How is the metadata stored? When DNSSEC keys are generated to files, a key pair is built, consisting of a private key and a public key. In particular, when KSKs are built, they can be built with the aforementioned publish, activate, revoke, inactivate, and delete "timers" to set that DNSSEC key's lifecycle. A human-readable description of the metadata is also provided commented out in the public key for informational purposes. Example: Kexample.com.+005+63982.key ; This is a key-signing key, keyid 63982, for example.com. ; Created: Tue Jan 12 16:57:25 2010 ; Publish: Tue Jan 12 16:57:25 2010 ; Activate: Tue Jan 12 16:57:25 2010 ; Revoke: Tue Jan 19 16:57:25 2010 ; Inactive: Tue Jan 19 16:59:05 2010 ; Delete: Tue Jan 19 17:00:45 2010 example.com. IN DNSKEY 257 3 5 AwEAAbop12N73aBYNiU7gvgty/QqQbYwcKhtVfBn4YOzYY0tuBOeUqWu Example: Kexample.com.+005+63982.private Private-key-format: v1.3 Algorithm: 5 (RSASHA1) Modulus: uinXY3vdoFg2JTuC+C3L9CpBtjBwqG1V8Gfhg7NhjS24E55Spa4IrLHqaGd2tqtabiwqxdowkHx+2h How is the metadata used in DNSSEC key lifecycle management? BIND 9.7.0 introduces a new mechanism for automatically signing a zone. This is implemented with the auto-dnssec directive, which can be added to the zone statement of the named.conf file. Enabling auto-dnssec supports two (2) modes of automatic zone signing:
We will provide a more in-depth information on how to implement auto-dnssec in a later article in this series. NOTE: BIND 9.7.0 currently doesn't fully support KSK rollovers. This means that with auto-dnssec maintain; enabled, new KSKs will not be created,and your current KSKs in use may become obsoleted and ultimately removed, breaking the chain of trust. How does DNSSEC key lifecycle management differ between BIND, DNSSEC-TOOLS, and OpenDNSSEC? This question is best answered by defining the three (3) main aspects of DNSSEC Key maintenance, including DNSSEC key lifecycle, DNSSEC zone signing operations, and DNSSEC key rollover. The following table summarizes at a high level how BIND 9.7.0 compares to the other DNSSEC frameworks that exist:
Although BIND 9.7.0 has automatic zone signing, it's currently lacking the ability to generate new KSKs during KSK rollovers. In other words, current KSKs will be revoked, marked inactive, and ultimately removed from the zone, but NO new KSK will be generated in its place. According to the ISC, this is a feature or enhancement that will show up in BIND 9.7.1 or later. In the mean time, a shell script and cron job would be needed to fill that gap in support. Does the inclusion of new metadata in DNSSEC keys break other implementations? BIND 9.7.0 can generate "old-style" DNSSEC keys without any metadata. This is done by passing the -C or compatibility mode command line argument when executing the utilities. By default, however, this new metadata will be included directly in the DNSSEC ZSK and KSK file(s). The compatibility mode suppresses the key timing metadata, ensuring backwards compatibility with many of the other existing DNSSEC tools and frameworks that exist. What's next? In this fist post, we've covered how BIND 9.7.0 performs DNSSEC key lifecycle and how it stores metadata directly in the DNSSEC keys. Next, we'll cover the automatic signing support in BIND 9.7.0. |
||||||||||||||||
| Last Updated on Thursday, 18 February 2010 17:16 |










