Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
BIND
BIND
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 627
    • Issues 627
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 116
    • Merge Requests 116
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • ISC Open Source Projects
  • BINDBIND
  • Issues
  • #1709

Closed
Open
Created Mar 27, 2020 by Håkan Lindqvist@hlindqvist

dnssec-policy implicitly enables inline-signing

Summary

Zones with dnssec-policy seem to implicitly have inline-signing enabled.
It was indicated to me on bind-users that these settings should be independent and that this behavior is a bug: https://lists.isc.org/pipermail/bind-users/2020-March/102831.html

BIND version used

$ named -V
BIND 9.16.1 (Stable Release) <id:d497c32>
running on Linux x86_64 5.3.0-42-generic #34-Ubuntu SMP Fri Feb 28 05:49:40 UTC 2020
built by make with '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=/usr/include' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-silent-rules' '--libdir=/usr/lib/x86_64-linux-gnu' '--libexecdir=/usr/lib/x86_64-linux-gnu' '--disable-maintainer-mode' '--disable-dependency-tracking' '--libdir=/usr/lib/x86_64-linux-gnu' '--sysconfdir=/etc/bind' '--with-python=python3' '--localstatedir=/' '--enable-threads' '--enable-largefile' '--with-libtool' '--enable-shared' '--enable-static' '--with-gost=no' '--with-openssl=/usr' '--with-gssapi=/usr' '--with-libidn2' '--with-libjson-c' '--with-lmdb=/usr' '--with-gnu-ld' '--with-maxminddb' '--with-atf=no' '--enable-ipv6' '--enable-rrl' '--enable-filter-aaaa' '--disable-native-pkcs11' '--enable-dnstap' 'build_alias=x86_64-linux-gnu' 'CFLAGS=-g -O2 -fdebug-prefix-map=/build/bind9-4Ash1G/bind9-9.16.1=. -fstack-protector-strong -Wformat -Werror=format-security -fno-strict-aliasing -fno-delete-null-pointer-checks -DNO_VERSION_DATE -DDIG_SIGCHASE' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2'
compiled by GCC 9.2.1 20191008
compiled with OpenSSL version: OpenSSL 1.1.1c  28 May 2019
linked to OpenSSL version: OpenSSL 1.1.1c  28 May 2019
compiled with libxml2 version: 2.9.4
linked to libxml2 version: 20904
compiled with json-c version: 0.13.1
linked to json-c version: 0.13.1
compiled with zlib version: 1.2.11
linked to zlib version: 1.2.11
linked to maxminddb version: 1.3.2
compiled with protobuf-c version: 1.3.1
linked to protobuf-c version: 1.3.1
threads support is enabled

default paths:
  named configuration:  /etc/bind/named.conf
  rndc configuration:   /etc/bind/rndc.conf
  DNSSEC root key:      /etc/bind/bind.keys
  nsupdate session key: //run/named/session.key
  named PID file:       //run/named/named.pid
  named lock file:      //run/named/named.lock
  geoip-directory:      /usr/share/GeoIP
$

Steps to reproduce

  • Specify dnssec-policy x but no inline-signing yes.
  • Restart/reload.

What is the current bug behavior?

The zone has inline signing enabled, without inline-signing yes in the config.

What is the expected correct behavior?

The zone should only have inline signing enabled if inline-signing yes is specified.

Relevant configuration files

zone "zone.example" {
        notify yes;
        type master;
        allow-transfer { x; };
        also-notify { x; };
        file "/var/lib/bind/dynamic/zone.example/db.zone.example";
        update-policy { grant local-ddns zonesub any; grant edit-x. zonesub any; };
        key-directory "/var/lib/bind/dynamic/zone.example";
      #  auto-dnssec maintain;
        dnssec-policy alg13-ksk-unlimited-zsk-60day;
};

Relevant logs and/or screenshots

rndc zonestatus indicates that inline signing is enabled. Also .signed and .signed.jnl files are created.

# rndc zonestatus zone.example
name: zone.example
type: master
files: /var/lib/bind/dynamic/zone.example/db.zone.example
serial: 2008092550
signed serial: 2008092553
nodes: 1
last loaded: Fri, 27 Mar 2020 09:11:29 GMT
secure: yes
inline signing: yes
key maintenance: automatic
next key event: Fri, 27 Mar 2020 11:16:29 GMT
next resign node: zone.example/CAA
next resign time: Thu, 02 Apr 2020 04:12:40 GMT
dynamic: yes
frozen: no
reconfigurable via modzone: no
#

Possible fixes

None known.
Explicitly configuring inline-signing no; crossed my mind but that does not work:

parser.c:2836: REQUIRE(obj != ((void *)0) && *obj == ((void *)0)) 
failed, back trace
#0 0x55ec613030a3 in ??
#1 0x7f598d6eda90 in ??
#2 0x7f598d77d9ba in ??
#3 0x55ec6130a23c in ??
#4 0x55ec6130f398 in ??
#5 0x55ec61323adc in ??
#6 0x55ec61324b2e in ??
#7 0x7f598d714e51 in ??
#8 0x7f598d1c2669 in ??
#9 0x7f598d0e4323 in ??
exiting (due to assertion failure)
Assignee
Assign to
May 2020 (9.11.19, 9.11.19-S1, 9.14.12, 9.16.3)
Milestone
May 2020 (9.11.19, 9.11.19-S1, 9.14.12, 9.16.3) (Past due)
Assign milestone
Time tracking
None
Due date
None