-
-
Notifications
You must be signed in to change notification settings - Fork 5
Add signzone command. #8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
bal-e
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good work, @ximon18! We'll have to see whether the argument parsing needs to be changed to separate ldns / dnst, but the code generally looks good.
|
dnst-signzone currently allows not specifying a key to sign with. In that case it just copies the original zone over into the .signed file (with no signatures ofc). |
That's a bug. Update: Fixed in 907a634. |
… private keys else fall back to loading public keys.
…sting LDNS option.
…n test failure. (#63)
* Remove -M option. * Fallout of merging.
- Add a test of '-u' that sets the SOA SERIAL to the Epoch time now if ahead of the SOA SERIAL, or increments the SOA SERIAL otherwise. - Change the code that determines the serial now to do so with its own mockable source of time from the environment, instead of using Serial::now() which hard-codes use of the real system clock. - Extend the concept of Env to support seconds since the epoch which can be overridden when using FakeEnv. --------- Co-authored-by: Philip-NLnetLabs <[email protected]>
* Add missing arguments and re-order arguments to match -h output, plus some argument re-ordering to better group related arguments together in -h output. * Remove orphaned comment. * Note that we don't attempt to detect a zone file origin if not defined, unlike ldns-signzone which will use the owner of the first SOA RR as the origin. To support this would require a change in the `domain` zonefile parser which we are not convinced would be right, but may revisit this if there appears to be actual users out there depending on and wanting this detection logic.
- Be consistent with trailing periods (not shown in -h but the inconsistencies are visible via --help). - Document in --help output arguments that have dependencies on other arguments. - Encode some inter-argument dependencies via Clap rules. - Also makes LDNS mode error message the same as the real ldns-signzone.
- Require `-o` for `dnst signzone`, but for `ldns-signzone` allow it to be missing and then use the owner name first SOA found as the apex. This avoids unreliable apex detection in `dnst`, while keeping maximum backward compatibility with `ldns`. - Removed the no longer necessary separation of `execute()` into an extra `go_further()` fn, which was previously needed as a workaround for using the right generic values. - Did some cleanup in affected/related code, e.g. bump the SOA SERIAL and use only that bumped SOA RR rather than use two different SOA RRs, refer to `new_default_rr_ttl` instead of `soa_rr.ttl()` to make it clear that it's not per se the SOA RR TTL we are interested in, this is just the default we choose to use, and make more use of the `apex` variable. - Improved an error message. - Added some tests for the case of early glue showing that the wrong apex is no longer searched for a SOA by the signer.
…::into_path`: use TempDir::keep()".
…esn't have this option.
|
We agreed to ignore the Windows CI failures for the moment for this PR and so are ready to merge this as is. |
Currently depends on
domainbranchinitial-nsec3-generation, which has had multiple branches/PRs merged into it (see NLnetLabs/domain#416)Supports:
zonefile key [key [key]]and the NSEC3 arguments-n,-a,-t,-sand-p.-o,-i,d,-e,-f,-u,-A,-Uand-v.-zand-Zfor ZONEMDPartially supports:
-b(support for Bubble Babble DS comment output is not planned at present).Lacks but should have support for:
domainlibrary. See:Lacks and do not plan to add support for:
Other:
dnstremoves DNSSEC records on loading already signed zonefiles.-Uoption causes a warning fromdnssec-verify(it also does so for the originalldns-signzonewhen using-Uso I think this is fine). We should think do we want to support the-Uoption fordnst signzone?ldns-signzoneas the behaviour is determined by thedomaincrate. (seeldns_rr2buffer_str_fmt()in LDNS). Known differences are:Additional related DRAFT PRs:
This PR adds automated tests but has also been tested manually against the original
ldns-signzoneanddnssec-signzone.