From 832335c92c7ce21ffb8ea9315837aebc2a085d88 Mon Sep 17 00:00:00 2001 From: Martin Basti Date: Tue, 1 Sep 2015 16:17:16 +0200 Subject: [PATCH] DNSSEC: remove ccache and keytab of ipa-ods-exporter Reusing old ccache after reinstall causes authentication error. And prevents DNSSEC from working. Related to ticket: https://fedorahosted.org/freeipa/ticket/5273 Reviewed-By: Petr Spacek --- daemons/dnssec/ipa-ods-exporter | 2 +- ipaplatform/base/paths.py | 1 + ipaserver/install/odsexporterinstance.py | 7 +++++++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/daemons/dnssec/ipa-ods-exporter b/daemons/dnssec/ipa-ods-exporter index 4d5423797fc9d4bdd0a432bac96b8209bb98c6d8..62eca71da10ee6f3efd4d391a274278875714570 100755 --- a/daemons/dnssec/ipa-ods-exporter +++ b/daemons/dnssec/ipa-ods-exporter @@ -482,7 +482,7 @@ ipalib.api.finalize() # Kerberos initialization PRINCIPAL = str('%s/%s' % (DAEMONNAME, ipalib.api.env.host)) log.debug('Kerberos principal: %s', PRINCIPAL) -ccache_name = os.path.join(WORKDIR, 'ipa-ods-exporter.ccache') +ccache_name = paths.IPA_ODS_EXPORTER_CCACHE try: ipautil.kinit_keytab(PRINCIPAL, paths.IPA_ODS_EXPORTER_KEYTAB, ccache_name, diff --git a/ipaplatform/base/paths.py b/ipaplatform/base/paths.py index 5c8f25d6ef85fab2b9b30a660cd1c0360dbe9931..a407c1273f01b3465bcb1985dd41f2f242346a62 100644 --- a/ipaplatform/base/paths.py +++ b/ipaplatform/base/paths.py @@ -333,6 +333,7 @@ class BasePathNamespace(object): NAMED_RUN = "/var/named/data/named.run" VAR_OPENDNSSEC_DIR = "/var/opendnssec" OPENDNSSEC_KASP_DB = "/var/opendnssec/kasp.db" + IPA_ODS_EXPORTER_CCACHE = "/var/opendnssec/tmp/ipa-ods-exporter.ccache" VAR_RUN_DIRSRV_DIR = "/var/run/dirsrv" KRB5CC_HTTPD = "/var/run/httpd/ipa/krbcache/krb5ccache" IPA_RENEWAL_LOCK = "/var/run/ipa/renewal.lock" diff --git a/ipaserver/install/odsexporterinstance.py b/ipaserver/install/odsexporterinstance.py index 248943d6c0ca4b71815bcf7526d575842f6ce426..db45d2b812ff6d2d56cb8fb326119658bd1f4b7e 100644 --- a/ipaserver/install/odsexporterinstance.py +++ b/ipaserver/install/odsexporterinstance.py @@ -93,6 +93,13 @@ class ODSExporterInstance(service.Service): def __setup_principal(self): assert self.ods_uid is not None + + for f in [paths.IPA_ODS_EXPORTER_CCACHE, paths.IPA_ODS_EXPORTER_KEYTAB]: + try: + os.remove(f) + except OSError: + pass + dns_exporter_principal = "ipa-ods-exporter/" + self.fqdn + "@" + self.realm installutils.kadmin_addprinc(dns_exporter_principal) -- 2.5.1