summaryrefslogtreecommitdiffstats
path: root/install
diff options
context:
space:
mode:
authorRob Crittenden <rcritten@redhat.com>2011-09-27 17:44:20 +0200
committerMartin Kosek <mkosek@redhat.com>2011-09-27 17:50:46 +0200
commita41457ec3a905a68af60c1b359c25679c3c5a7b7 (patch)
tree7b1b8a0a23316ac7e15f80081dbd98b8463ea0e2 /install
parent2028a4095d00054fb2015ab38d1f3720ea105e13 (diff)
downloadfreeipa-a41457ec3a905a68af60c1b359c25679c3c5a7b7.tar.gz
freeipa-a41457ec3a905a68af60c1b359c25679c3c5a7b7.tar.xz
freeipa-a41457ec3a905a68af60c1b359c25679c3c5a7b7.zip
Detect CA installation type in ipa-replica-prepare and ipa-ca-install.
ipa-ca-install can only add a dogtag CA to an IPA install. ipa-replica-prepare can only be run on the initial master with a selfsign backend. https://fedorahosted.org/freeipa/ticket/1756 https://fedorahosted.org/freeipa/ticket/1757
Diffstat (limited to 'install')
-rwxr-xr-xinstall/tools/ipa-ca-install13
-rwxr-xr-xinstall/tools/ipa-replica-prepare3
2 files changed, 9 insertions, 7 deletions
diff --git a/install/tools/ipa-ca-install b/install/tools/ipa-ca-install
index 453877457..37fa6269b 100755
--- a/install/tools/ipa-ca-install
+++ b/install/tools/ipa-ca-install
@@ -83,6 +83,12 @@ def main():
if not dsinstance.DsInstance().is_configured():
sys.exit("IPA server is not configured on this system.\n")
+ api.bootstrap(in_server=True)
+ api.finalize()
+
+ if certs.ipa_self_signed():
+ sys.exit('A selfsign CA can not be added')
+
# get the directory manager password
dirman_password = options.password
if not dirman_password:
@@ -129,16 +135,9 @@ def main():
if not options.skip_conncheck:
replica_conn_check(config.master_host_name, config.host_name, config.realm_name, True, options.admin_password)
- api.bootstrap(in_server=True)
- api.finalize()
-
# Configure the CA if necessary
(CA, cs) = cainstance.install_replica_ca(config, postinstall=True)
- if not CA:
- # not a dogtag CA replica
- sys.exit("Not a dogtag CA installation!")
-
# We need to ldap_enable the CA now that DS is up and running
CA.ldap_enable('CA', config.host_name, config.dirman_password,
util.realm_to_suffix(config.realm_name))
diff --git a/install/tools/ipa-replica-prepare b/install/tools/ipa-replica-prepare
index 16536b378..038fd69c9 100755
--- a/install/tools/ipa-replica-prepare
+++ b/install/tools/ipa-replica-prepare
@@ -243,6 +243,9 @@ def main():
if not options.pkinit_pkcs12 and not certs.ipa_self_signed():
options.setup_pkinit = False
+ if certs.ipa_self_signed_master() == False:
+ sys.exit('A selfsign CA backend can only prepare on the original master')
+
try:
installutils.verify_fqdn(replica_fqdn, system_name_check=False)
except RuntimeError, e: