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:51:44 +0200
commit08ec4b0ddf0a6c8278d13d162345bc0f6821f993 (patch)
tree8e953a69896ddf06f320557b76bd28475cb32030 /install
parent84744a25915f4a6ff84809f17daae95d170d3b98 (diff)
downloadfreeipa-08ec4b0ddf0a6c8278d13d162345bc0f6821f993.tar.gz
freeipa-08ec4b0ddf0a6c8278d13d162345bc0f6821f993.tar.xz
freeipa-08ec4b0ddf0a6c8278d13d162345bc0f6821f993.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 d4031e435..05115ac3c 100755
--- a/install/tools/ipa-replica-prepare
+++ b/install/tools/ipa-replica-prepare
@@ -245,6 +245,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: