]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Add tests for the "tkey-gssapi-credential" option
authorPetr Špaček <pspacek@isc.org>
Fri, 16 Apr 2021 16:05:43 +0000 (18:05 +0200)
committerPetr Špaček <pspacek@isc.org>
Fri, 23 Apr 2021 07:19:45 +0000 (09:19 +0200)
Four named instances in the "nsupdate" system test have GSS-TSIG support
enabled.  All of them currently use "tkey-gssapi-keytab".  Configure two
of them with "tkey-gssapi-credential" to test that option.

As "tkey-gssapi-keytab" and "tkey-gssapi-credential" both provide the
same functionality, no test modifications are required.  The difference
between the two options is that the value of "tkey-gssapi-keytab" is an
explicit path to the keytab file to acquire credentials from, while the
value of "tkey-gssapi-credential" is the name of the principal whose
credentials should be used; those credentials are looked up in the
keytab file expected by the Kerberos library, i.e. /etc/krb5.keytab by
default.  The path to the default keytab file can be overridden using by
setting the KRB5_KTNAME environment variable.  Utilize that variable to
use existing keytab files with the "tkey-gssapi-credential" option.

The KRB5_KTNAME environment variable should not interfere with the
"tkey-gssapi-keytab" option.  Nevertheless, rename one of the keytab
files used with "tkey-gssapi-keytab" to something else than the contents
of the KRB5_KTNAME environment variable in order to make sure that both
"tkey-gssapi-keytab" and "tkey-gssapi-credential" are actually tested.

(cherry picked from commit 1746d2e84acee77ec88bf3f61eaa8f11cc1039a5)

bin/tests/system/conf.sh.common
bin/tests/system/conf.sh.in
bin/tests/system/nsupdate/krb/setup.sh
bin/tests/system/nsupdate/ns10/named.conf.in
bin/tests/system/nsupdate/ns8/dns-other-than-KRB5_KTNAME.keytab [moved from bin/tests/system/nsupdate/ns8/dns.keytab with 100% similarity]
bin/tests/system/nsupdate/ns8/named.conf.in
bin/tests/system/nsupdate/ns9/named.conf.in
util/copyrights

index 154c08d438e7ecc758065db07d16c1240fc33c82..593638ab42de4c7cb064ef27a5284e71155f7d4c 100644 (file)
@@ -720,6 +720,7 @@ export KEYGEN
 export KEYSETTOOL
 export KEYSIGNER
 export KRB5_CONFIG
+export KRB5_KTNAME
 export MAKEJOURNAL
 export MDIG
 export NAMED
index 089779c3b14b580e032f62c3b1042dc2d3dbb809..d7830cfd80d5fc0f81c042a0056052a25450ba45 100644 (file)
@@ -75,6 +75,8 @@ PIPEQUERIES=$TOP/bin/tests/system/pipelined/pipequeries
 
 # we don't want a KRB5_CONFIG setting breaking the tests
 KRB5_CONFIG=/dev/null
+# use local keytab instead of default /etc/krb5.keytab
+KRB5_KTNAME=dns.keytab
 
 #
 # Construct the lists of tests to run
index 3fef030bd1d330d3144cff40a659a76ef4c05973..150b2050f85cd86e3da77ba4900b2da3da25319b 100644 (file)
@@ -101,7 +101,7 @@ kinit -V -k -t krb5-machine.keytab -l ${lifetime}d -c krb5-machine.ccache host/m
 kinit -V -k -t ms-machine.keytab -l ${lifetime}d -c ms-machine.ccache 'machine$@EXAMPLE.COM'
 
 cp ns7-server.keytab ../ns7/dns.keytab
-cp ns8-server.keytab ../ns8/dns.keytab
+cp ns8-server.keytab ../ns8/dns-other-than-KRB5_KTNAME.keytab
 cp ns9-server.keytab ../ns9/dns.keytab
 cp ns10-server.keytab ../ns10/dns.keytab
 
index 457d96b4f89b663fb993567c1a862caf068e9a32..0e2fb067826ea95bd9b9d3a63e809304d05855c9 100644 (file)
@@ -20,7 +20,7 @@ options {
        recursion no;
        notify yes;
        minimal-responses no;
-       tkey-gssapi-keytab "dns.keytab";
+       tkey-gssapi-credential "DNS/ns10.example.com@EXAMPLE.COM";
 };
 
 key rndc_key {
index 92792db68042b26ee3c48d5d9dfe0d6fd771b232..dac45d91419d483e1f669e2e3cda1371833a2761 100644 (file)
@@ -20,7 +20,7 @@ options {
        recursion no;
        notify yes;
        minimal-responses no;
-       tkey-gssapi-keytab "dns.keytab";
+       tkey-gssapi-keytab "dns-other-than-KRB5_KTNAME.keytab";
 };
 
 key rndc_key {
index a65f069ac71b95f0451e1103e9813d59acc7db2d..f95ea4ed26848392e569ee0072ba5e6743945913 100644 (file)
@@ -20,7 +20,7 @@ options {
        recursion no;
        notify yes;
        minimal-responses no;
-       tkey-gssapi-keytab "dns.keytab";
+       tkey-gssapi-credential "DNS/ns9.example.com@EXAMPLE.COM";
 };
 
 key rndc_key {
index b181098a624dfee4f0186a5e819549e353e0ce7a..b6d2cbd44ed840fcbc00f02937c04f5ee18c5b02 100644 (file)
 ./bin/tests/system/nsupdate/ns6/named.args     X       2018,2019,2020,2021
 ./bin/tests/system/nsupdate/ns7/dns.keytab     X       2018,2019,2020,2021
 ./bin/tests/system/nsupdate/ns7/machine.ccache X       2018,2019,2020,2021
-./bin/tests/system/nsupdate/ns8/dns.keytab     X       2018,2019,2020,2021
+./bin/tests/system/nsupdate/ns8/dns-other-than-KRB5_KTNAME.keytab      X       2018,2019,2020,2021
 ./bin/tests/system/nsupdate/ns8/machine.ccache X       2018,2019,2020,2021
 ./bin/tests/system/nsupdate/ns9/dns.keytab     X       2018,2019,2020,2021
 ./bin/tests/system/nsupdate/ns9/machine.ccache X       2018,2019,2020,2021