summaryrefslogtreecommitdiffstats
path: root/ipaserver/install/server/install.py
diff options
context:
space:
mode:
authorSimo Sorce <simo@redhat.com>2016-07-26 11:19:01 -0400
committerSimo Sorce <simo@redhat.com>2016-12-08 19:54:30 -0500
commite17438cca414b1bc7a5c21da502550a520f25a67 (patch)
treee387e32f96a2893a1729a738cf7350b4b5a7611b /ipaserver/install/server/install.py
parentfad87a9962ee33cfebc4fa59aba589e98b076cea (diff)
downloadfreeipa-kdc-pkinit.tar.gz
freeipa-kdc-pkinit.tar.xz
freeipa-kdc-pkinit.zip
Configure Anonymous PKINIT on server installkdc-pkinit
Allow anonymous pkinit to be used so that unenrolled hosts can perform FAST authentication (necessary for 2FA for example) using an anonymous krbtgt obtained via Pkinit. https://fedorahosted.org/freeipa/ticket/5678 Signed-off-by: Simo Sorce <simo@redhat.com>
Diffstat (limited to 'ipaserver/install/server/install.py')
-rw-r--r--ipaserver/install/server/install.py21
1 files changed, 10 insertions, 11 deletions
diff --git a/ipaserver/install/server/install.py b/ipaserver/install/server/install.py
index f81c202cc..b5b9cb48a 100644
--- a/ipaserver/install/server/install.py
+++ b/ipaserver/install/server/install.py
@@ -521,6 +521,11 @@ def install_check(installer):
dirsrv_pkcs12_info = (dirsrv_pkcs12_file.name, dirsrv_pin)
if options.pkinit_cert_files:
+ if not options.no_pkinit:
+ raise ScriptError("Cannot create KDC PKINIT certificate and use "
+ "provided external PKINIT certificate at the "
+ "same time. Please choose one of them.")
+
if options.pkinit_pin is None:
options.pkinit_pin = read_password(
"Enter Kerberos KDC private key unlock",
@@ -792,17 +797,11 @@ def install(installer):
ds.enable_ssl()
krb = krbinstance.KrbInstance(fstore)
- if options.pkinit_cert_files:
- krb.create_instance(realm_name, host_name, domain_name,
- dm_password, master_password,
- setup_pkinit=not options.no_pkinit,
- pkcs12_info=pkinit_pkcs12_info,
- subject_base=options.subject)
- else:
- krb.create_instance(realm_name, host_name, domain_name,
- dm_password, master_password,
- setup_pkinit=not options.no_pkinit,
- subject_base=options.subject)
+ krb.create_instance(realm_name, host_name, domain_name,
+ dm_password, master_password,
+ setup_pkinit=not options.no_pkinit,
+ pkcs12_info=pkinit_pkcs12_info,
+ subject_base=options.subject)
# restart DS to enable ipa-pwd-extop plugin
print("Restarting directory server to enable password extension plugin")