Bug 1256039
| Summary: | Unable to clone IPA with external CA | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | Daniel Riek <riek> | ||||||||
| Component: | pki-core | Assignee: | Endi Sukma Dewata <edewata> | ||||||||
| Status: | CLOSED ERRATA | QA Contact: | Asha Akkiangady <aakkiang> | ||||||||
| Severity: | urgent | Docs Contact: | Aneta Šteflová Petrová <apetrova> | ||||||||
| Priority: | urgent | ||||||||||
| Version: | 6.7 | CC: | aakkiang, alee, awestbro, ccoursey, cww, dkupka, edewata, ekeck, enewland, ftweedal, ksiddiqu, lmiksik, mharmsen, mkosek, nkinder, pvoborni, rcritten, riek, spoore | ||||||||
| Target Milestone: | rc | Keywords: | ZStream | ||||||||
| Target Release: | 6.8 | ||||||||||
| Hardware: | Unspecified | ||||||||||
| OS: | Unspecified | ||||||||||
| Whiteboard: | |||||||||||
| Fixed In Version: | pki-core-9.0.3-47.el6 | Doc Type: | Bug Fix | ||||||||
| Doc Text: |
Cloning a PKI server with an externally-signed CA certificate to Red Hat Enterprise Linux 7 no longer fails
Previously, when a Red Hat Enterprise Linux 6 public key infrastructure (PKI) server was installed with an externally-signed certificate authority (CA) certificate, the subsystem user was not created properly. Consequently, cloning to Red Hat Enterprise Linux 7 failed.
For new Red Hat Enterprise Linux 6 installations, the code has been fixed to create the subsystem user, add it to the subsystem group, and map the subsystem certificate to the user properly. For existing Red Hat Enterprise Linux 6 installations, the code has been modified to automatically restore the subsystem user to the correct configuration on restart.
As a result, cloning to Red Hat Enterprise Linux 7 now succeeds in the described situation.
|
Story Points: | --- | ||||||||
| Clone Of: | |||||||||||
| : | 1291747 (view as bug list) | Environment: | |||||||||
| Last Closed: | 2016-05-11 00:32:23 UTC | Type: | Bug | ||||||||
| Regression: | --- | Mount Type: | --- | ||||||||
| Documentation: | --- | CRM: | |||||||||
| Verified Versions: | Category: | --- | |||||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||||
| Embargoed: | |||||||||||
| Bug Depends On: | |||||||||||
| Bug Blocks: | 1172231, 1272422, 1291747 | ||||||||||
| Attachments: |
|
||||||||||
|
Description
Daniel Riek
2015-08-23 14:41:39 UTC
Daniel, did this fail occur after you applied the patch from bug 1256038 ? (In reply to Petr Vobornik from comment #2) > Daniel, did this fail occur after you applied the patch from bug 1256038 ? Yes, this is after that workaround. This failure happens during the CA setup. I think this may be the issue described here: https://www.redhat.com/archives/freeipa-users/2015-July/msg00359.html """ The problem is in pki-* packages. The old version that is used with freeipa-3.0 does not have REST API and the one that is used in freeipa-4.1 does not expect that. The issue is fixed in pki 10.2.6 but I'm not sure if it is available in CentOS, yet. """ pki 10.2.6 is not available in RHEL yet as far as I can see. I am confused, does it mean pki-core in RHEL-6 is again incompatible with the one in RHEL-7 and we cannot create RHEL-7 clone out of it? CCing PKI folks. The Dogtag issue for this is https://fedorahosted.org/pki/ticket/1495 and I have verified that this fix has not been backported to the 10.1 branch. Still trying to figure out how the need for this fix was introduced. Basically it means that some async update broke migration, necessitating this fix. We need to start testing IPA migration with async updates. Assuming this is in fact the issue - and I'd like to see logs to verify this - we should attempt backporting the fix in 1495. Please attach logs --> clone: /var/log/pki/pki-tomcat/ca/debug journalctl -u pki-tomcatd logs under /var/log/pki/pki-tomcat master: logs under: /var/log/pki-ca so we can be sure this is the real issue. Hi, Matt created a scratch build that contains the backport of the fix for ticket #1495 for RHEL 7.1: https://brewweb.devel.redhat.com/taskinfo?taskID=9759387 Please save the current logs as Ade requested in comment #5, then please try installing the scratch build on the replica and try the migration again. If the problem still happens after installing the scratch build, please post the logs. Thanks. Update: to add to the confusion, I just tried the same with a freshly installed instance of IPA 3 from RHEL 6.7 and I *was* able to create the 7.1 replica. The only difference is (other than that this is a fresh install), that the new installation does not use an external Root CA. I will try the fix later today and report back. (In reply to Daniel Riek from comment #9) > Update: to add to the confusion, I just tried the same with a freshly > installed instance of IPA 3 from RHEL 6.7 and I *was* able to create the 7.1 > replica. The only difference is (other than that this is a fresh install), > that the new installation does not use an external Root CA. > Actually, another difference was, that on the fresh install the CA never was manually renewed. > I will try the fix later today and report back. The new packages did not fix the issue. [root@ipaserver2 ~]# rpm -qa pki\* pki-tools-10.1.2-8.scratch.el7_1.x86_64 pki-javadoc-10.1.2-8.scratch.el7_1.noarch pki-tks-10.1.2-8.scratch.el7_1.noarch pki-symkey-10.1.2-8.scratch.el7_1.x86_64 pki-ca-10.1.2-8.scratch.el7_1.noarch pki-server-10.1.2-8.scratch.el7_1.noarch pki-ocsp-10.1.2-8.scratch.el7_1.noarch pki-kra-10.1.2-8.scratch.el7_1.noarch pki-base-10.1.2-8.scratch.el7_1.noarch pki-tps-tomcat-10.1.2-8.scratch.el7_1.noarch ----- 2015-08-29T15:02:08Z DEBUG stderr=/usr/lib/python2.7/site-packages/urllib3/connectionpool.py:769: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html InsecureRequestWarning) pkispawn : WARNING ....... unable to validate security domain user/password through REST interface. Interface not available pkispawn : ERROR ....... Exception from Java Configuration Servlet: Failed to obtain installation token from security domain: org.jboss.resteasy.client.ClientResponseFailure: Error status 404 Not Found returned I am attaching the log. Endi, FYI, I was able to reproduce the same way David did on RHEL6.7. So, this is a RHEL6 issue not a RHEL7 replica issue right? And the ipa-server-install failure was mostly a result of the missing subsystem user that can be restored with the tool you mentioned? Shouldn't something in the ipa-server-install process make sure that user exists? Thanks, Scott I regard the missing subsystem users as PKI upgrade issue on RHEL 6. As such I don't think it would clean to fix it in ipa-server-install which is run on different host. Creating workarounds in other components instead of fixing bugs does not scale. Product in this bug should be changed to RHEL 6. I'm not sure I understand how this is an upgrade issue. I was unable to see the subsystem user after a fresh IPA install on RHEL6.7 (with the patch for bug #1263703) finished. Is PKI being upgraded in some way during an ipa-server-install that's causing the user to not be in place? So where exactly is the bug? Should the PKI install/config have created the user? That would make sense I guess. So should this bug then handle creating that subsystem user instead of requiring the restore script workaround? Endi, isn't it possible to run check for missing subsystem user and then its restore on pki package update? I would say that smooth migration path is very important. Petr, we may be able to call the restore script automatically from PKI server startup script. That way we know that the DS is running so the script can perform the changes in the database. I'd rather not call the script during package update (i.e. in RPM spec) because there's no guarantee the DS will be running at that time. Does IPA require the admin to restart the server during upgrade? Or is it done automatically? If there are multiple replicas are they upgraded & restarted in certain order? IPA on update of ipa-server package runs /usr/sbin/ipa-ldap-updater --upgrade Which performs various update tasks and restarts DS other services couple of times. `ipacatl restart` doesn't need to be run. In theory ipa can run restore-subsystem-user.py but I don't think it belongs to there. Replicas are updated as admins run the rpm update. Should be one at a time. Verified.
Version ::
ipa-server-3.0.0-50.el6.x86_64
pki-ca-9.0.3-44.el6.noarch
python-nss-0.16.0-1.el6.x86_64
Results ::
[root@vm6 ~]# ipa-server-install -a Secret123 -p Secret123 -r EXAMPLE.TEST --external-ca -U
The log file for this installation can be found in /var/log/ipaserver-install.log
==============================================================================
This program will set up the IPA Server.
This includes:
* Configure a stand-alone CA (dogtag) for certificate management
* Configure the Network Time Daemon (ntpd)
* Create and configure an instance of Directory Server
* Create and configure a Kerberos Key Distribution Center (KDC)
* Configure Apache (httpd)
To accept the default shown in brackets, press the Enter key.
The domain name has been determined based on the host name.
The IPA Master Server will be configured with:
Hostname: vm6.example.test
IP address: 192.168.122.156
Domain name: example.test
Realm name: EXAMPLE.TEST
Configuring NTP daemon (ntpd)
[1/4]: stopping ntpd
[2/4]: writing configuration
[3/4]: configuring ntpd to start on boot
[4/4]: starting ntpd
Done configuring NTP daemon (ntpd).
Configuring directory server for the CA (pkids): Estimated time 30 seconds
[1/3]: creating directory server user
[2/3]: creating directory server instance
[3/3]: restarting directory server
Done configuring directory server for the CA (pkids).
Configuring certificate server (pki-cad): Estimated time 3 minutes 30 seconds
[1/4]: creating certificate server user
[2/4]: creating pki-ca instance
[3/4]: configuring certificate server instance
The next step is to get /root/ipa.csr signed by your CA and re-run ipa-server-install as:
ipa-server-install --external_cert_file=/path/to/signed_certificate --external_ca_file=/path/to/external_ca_certificate
[root@vm6 ~]# CADIR=/root/RootCA
[root@vm6 ~]# mkdir $CADIR
[root@vm6 ~]# cd $CADIR
[root@vm6 RootCA]# rm -f *
[root@vm6 RootCA]# echo Secret123 > $CADIR/mypass1
[root@vm6 RootCA]# certutil -N -d $CADIR -f $CADIR/mypass1
[root@vm6 RootCA]# SERNUM=$RANDOM
[root@vm6 RootCA]# SERNUM=$(( SERNUM += 1 ))
[root@vm6 RootCA]# echo -e "y\n10\ny\n" | \
> certutil -S -d $CADIR \
> -n RootCA \
> -s "CN=MyRootCA, O=fakerealm1" \
> -x \
> -t "CTu,CTu,CTu" \
> -g 2048 \
> -m $SERNUM\
> -v 60 \
> -z /etc/group \
> -2 \
> --keyUsage certSigning \
> --nsCertType sslCA,smimeCA,objectSigningCA \
> -f $CADIR/mypass1
Generating key. This may take a few moments...
Is this a CA certificate [y/N]?
Enter the path length constraint, enter to skip [<0 for unlimited path]: > Is this a critical extension [y/N]?
Notice: Trust flag u is set automatically if the private key is present.
[root@vm6 RootCA]#
[root@vm6 RootCA]#
[root@vm6 RootCA]# certutil -L -d $CADIR -n "RootCA" -a >> /root/ipacacert.asc
[root@vm6 RootCA]#
[root@vm6 RootCA]#
[root@vm6 RootCA]#
[root@vm6 RootCA]# certutil -d $CADIR -C -m $RANDOM -a -i /root/ipa.csr -o /root/ipa.crt -c RootCA -1 -2
0 - Digital Signature
1 - Non-repudiation
2 - Key encipherment
3 - Data encipherment
4 - Key agreement
5 - Cert signing key
6 - CRL signing key
Other to finish
> 0
0 - Digital Signature
1 - Non-repudiation
2 - Key encipherment
3 - Data encipherment
4 - Key agreement
5 - Cert signing key
6 - CRL signing key
Other to finish
> 1
0 - Digital Signature
1 - Non-repudiation
2 - Key encipherment
3 - Data encipherment
4 - Key agreement
5 - Cert signing key
6 - CRL signing key
Other to finish
> 5
0 - Digital Signature
1 - Non-repudiation
2 - Key encipherment
3 - Data encipherment
4 - Key agreement
5 - Cert signing key
6 - CRL signing key
Other to finish
> 6
0 - Digital Signature
1 - Non-repudiation
2 - Key encipherment
3 - Data encipherment
4 - Key agreement
5 - Cert signing key
6 - CRL signing key
Other to finish
> 9
Is this a critical extension [y/N]?
y
Is this a CA certificate [y/N]?
y
Enter the path length constraint, enter to skip [<0 for unlimited path]: >
Is this a critical extension [y/N]?
y
Enter Password or Pin for "NSS Certificate DB":
[root@vm6 RootCA]# ipa-server-install -p Secret123 --external_cert_file /root/ipa.crt --external_ca_file /root/ipacacert.asc
The log file for this installation can be found in /var/log/ipaserver-install.log
==============================================================================
This program will set up the IPA Server.
This includes:
* Configure a stand-alone CA (dogtag) for certificate management
* Configure the Network Time Daemon (ntpd)
* Create and configure an instance of Directory Server
* Create and configure a Kerberos Key Distribution Center (KDC)
* Configure Apache (httpd)
To accept the default shown in brackets, press the Enter key.
The IPA Master Server will be configured with:
Hostname: vm6.example.test
IP address: 192.168.122.156
Domain name: example.test
Realm name: EXAMPLE.TEST
Configuring certificate server (pki-cad): Estimated time 3 minutes 30 seconds
[1/20]: creating certificate server user
[2/20]: configuring certificate server instance
[3/20]: disabling nonces
[4/20]: creating CA agent PKCS#12 file in /root
[5/20]: creating RA agent certificate database
[6/20]: importing CA chain to RA certificate database
[7/20]: fixing RA database permissions
[8/20]: setting up signing cert profile
[9/20]: set up CRL publishing
[10/20]: set certificate subject base
[11/20]: enabling Subject Key Identifier
[12/20]: setting audit signing renewal to 2 years
[13/20]: configuring certificate server to start on boot
[14/20]: restarting certificate server
[15/20]: requesting RA certificate from CA
[16/20]: issuing RA agent certificate
[17/20]: adding RA agent as a trusted user
[18/20]: configure certificate renewals
[19/20]: configure Server-Cert certificate renewal
[20/20]: Configure HTTP to proxy connections
Done configuring certificate server (pki-cad).
Configuring directory server (dirsrv): Estimated time 1 minute
[1/38]: creating directory server user
[2/38]: creating directory server instance
[3/38]: adding default schema
[4/38]: enabling memberof plugin
[5/38]: enabling winsync plugin
[6/38]: configuring replication version plugin
[7/38]: enabling IPA enrollment plugin
[8/38]: enabling ldapi
[9/38]: disabling betxn plugins
[10/38]: configuring uniqueness plugin
[11/38]: configuring uuid plugin
[12/38]: configuring modrdn plugin
[13/38]: enabling entryUSN plugin
[14/38]: configuring lockout plugin
[15/38]: creating indices
[16/38]: enabling referential integrity plugin
[17/38]: configuring ssl for ds instance
[18/38]: configuring certmap.conf
[19/38]: configure autobind for root
[20/38]: configure new location for managed entries
[21/38]: restarting directory server
[22/38]: adding default layout
[23/38]: adding delegation layout
[24/38]: adding replication acis
[25/38]: creating container for managed entries
[26/38]: configuring user private groups
[27/38]: configuring netgroups from hostgroups
[28/38]: creating default Sudo bind user
[29/38]: creating default Auto Member layout
[30/38]: adding range check plugin
[31/38]: creating default HBAC rule allow_all
[32/38]: Upload CA cert to the directory
[33/38]: initializing group membership
[34/38]: adding master entry
[35/38]: configuring Posix uid/gid generation
[36/38]: enabling compatibility plugin
[37/38]: tuning directory server
[38/38]: configuring directory to start on boot
Done configuring directory server (dirsrv).
Configuring Kerberos KDC (krb5kdc): Estimated time 30 seconds
[1/10]: adding sasl mappings to the directory
[2/10]: adding kerberos container to the directory
[3/10]: configuring KDC
[4/10]: initialize kerberos container
[5/10]: adding default ACIs
[6/10]: creating a keytab for the directory
[7/10]: creating a keytab for the machine
[8/10]: adding the password extension to the directory
[9/10]: starting the KDC
[10/10]: configuring KDC to start on boot
Done configuring Kerberos KDC (krb5kdc).
Configuring kadmin
[1/2]: starting kadmin
[2/2]: configuring kadmin to start on boot
Done configuring kadmin.
Configuring ipa_memcached
[1/2]: starting ipa_memcached
[2/2]: configuring ipa_memcached to start on boot
Done configuring ipa_memcached.
Configuring the web interface (httpd): Estimated time 1 minute
[1/14]: setting mod_nss port to 443
[2/14]: setting mod_nss protocol list to TLSv1.0 - TLSv1.2
[3/14]: setting mod_nss password file
[4/14]: enabling mod_nss renegotiate
[5/14]: adding URL rewriting rules
[6/14]: configuring httpd
[7/14]: setting up ssl
[8/14]: setting up browser autoconfig
[9/14]: publish CA cert
[10/14]: creating a keytab for httpd
[11/14]: clean up any existing httpd ccache
[12/14]: configuring SELinux for httpd
[13/14]: restarting httpd
[14/14]: configuring httpd to start on boot
Done configuring the web interface (httpd).
Applying LDAP updates
Restarting the directory server
Restarting the KDC
Sample zone file for bind has been created in /tmp/sample.zone.C0SFm7.db
Restarting the web server
==============================================================================
Setup complete
Next steps:
1. You must make sure these network ports are open:
TCP Ports:
* 80, 443: HTTP/HTTPS
* 389, 636: LDAP/LDAPS
* 88, 464: kerberos
UDP Ports:
* 88, 464: kerberos
* 123: ntp
2. You can now obtain a kerberos ticket using the command: 'kinit admin'
This ticket will allow you to use the IPA tools (e.g., ipa user-add)
and the web user interface.
Be sure to back up the CA certificate stored in /root/cacert.p12
This file is required to create replicas. The password for this
file is the Directory Manager password
It looks like the patch was applied incorrectly and the verification was incomplete. Reopening the bug. Created attachment 1118909 [details] pki-core-9.0.3-bz1256039.patch This is the correct patch that has been rebased. Created attachment 1118910 [details]
pki-core.spec
The spec file has been updated to remove the incorrect patch and to add the correct and rebased patch to the bottom.
Created attachment 1118911 [details] pki-core-9.0.3-bz1256039.patch Fixed rebase issue. The proper verification is described in comment #29 (execute all steps except 10-11) which basically: 1. Install IPA on RHEL 6 with externally signed CA (you can use NSS database) 2. Clone IPA to another RHEL 6. To fix existing installation, this fix need to be installed on both master and clone. Make sure the master is restarted after installation, then retry the cloning process. Correction, in comment #70 the second step should have said "Clone IPA to RHEL 7." Endi, Just to confirm, from my incomplete verification in comment #64, I'm missing the replica prepare and install on a RHEL7 host right? Is there anything I specifically need to check other than master and replica installs as expected? Thanks, Scott Yes, you only need to add cloning to RHEL 7. This is basically a RHEL 6 to 7 migration bug. If the clone is installed successfully the bug is verified. Verified. Version :: On RHEL 6.8 IPA Master: ipa-server-3.0.0-50.el6.x86_64 pki-ca-9.0.3-47.el6.noarch python-nss-0.16.0-1.el6.x86_64 On RHEL 7.2 IPA Replica: ipa-server-4.2.0-15.el7_2.5.x86_64 pki-ca-10.2.5-6.el7.noarch python-nss-0.16.0-3.el7.x86_64 Results :: ########################### RHEL 6.8 IPA MASTER ########################### [root@vm6 ~]# ipa-server-install -a Secret123 -p Secret123 -r EXAMPLE.TEST --external-ca -U The log file for this installation can be found in /var/log/ipaserver-install.log ============================================================================== This program will set up the IPA Server. This includes: * Configure a stand-alone CA (dogtag) for certificate management * Configure the Network Time Daemon (ntpd) * Create and configure an instance of Directory Server * Create and configure a Kerberos Key Distribution Center (KDC) * Configure Apache (httpd) To accept the default shown in brackets, press the Enter key. The domain name has been determined based on the host name. The IPA Master Server will be configured with: Hostname: vm6.example.test IP address: 192.168.122.156 Domain name: example.test Realm name: EXAMPLE.TEST Configuring NTP daemon (ntpd) [1/4]: stopping ntpd [2/4]: writing configuration [3/4]: configuring ntpd to start on boot [4/4]: starting ntpd Done configuring NTP daemon (ntpd). Configuring directory server for the CA (pkids): Estimated time 30 seconds [1/3]: creating directory server user [2/3]: creating directory server instance [3/3]: restarting directory server Done configuring directory server for the CA (pkids). Configuring certificate server (pki-cad): Estimated time 3 minutes 30 seconds [1/4]: creating certificate server user [2/4]: creating pki-ca instance [3/4]: configuring certificate server instance The next step is to get /root/ipa.csr signed by your CA and re-run ipa-server-install as: ipa-server-install --external_cert_file=/path/to/signed_certificate --external_ca_file=/path/to/external_ca_certificate [root@vm6 ~]# [root@vm6 ~]# [root@vm6 ~]# [root@vm6 ~]# CADIR=/root/RootCA [root@vm6 ~]# mkdir $CADIR [root@vm6 ~]# cd $CADIR [root@vm6 RootCA]# rm -f * [root@vm6 RootCA]# echo Secret123 > $CADIR/mypass1 [root@vm6 RootCA]# certutil -N -d $CADIR -f $CADIR/mypass1 [root@vm6 RootCA]# SERNUM=$RANDOM [root@vm6 RootCA]# SERNUM=$(( SERNUM += 1 )) [root@vm6 RootCA]# [root@vm6 RootCA]# [root@vm6 RootCA]# [root@vm6 RootCA]# echo -e "y\n10\ny\n" | \ > certutil -S -d $CADIR \ > -n RootCA \ > -s "CN=MyRootCA, O=fakerealm1" \ > -x \ > -t "CTu,CTu,CTu" \ > -g 2048 \ > -m $SERNUM\ > -v 60 \ > -z /etc/group \ > -2 \ > --keyUsage certSigning \ > --nsCertType sslCA,smimeCA,objectSigningCA \ > -f $CADIR/mypass1 Generating key. This may take a few moments... Is this a CA certificate [y/N]? Enter the path length constraint, enter to skip [<0 for unlimited path]: > Is this a critical extension [y/N]? Notice: Trust flag u is set automatically if the private key is present. [root@vm6 RootCA]# [root@vm6 RootCA]# [root@vm6 RootCA]# [root@vm6 RootCA]# [root@vm6 RootCA]# certutil -L -d $CADIR -n "RootCA" -a >> /root/ipacacert.asc [root@vm6 RootCA]# [root@vm6 RootCA]# [root@vm6 RootCA]# [root@vm6 RootCA]# certutil -d $CADIR -C -m $RANDOM -a -i /root/ipa.csr -o /root/ipa.crt -c RootCA -1 -2 0 - Digital Signature 1 - Non-repudiation 2 - Key encipherment 3 - Data encipherment 4 - Key agreement 5 - Cert signing key 6 - CRL signing key Other to finish > 0 0 - Digital Signature 1 - Non-repudiation 2 - Key encipherment 3 - Data encipherment 4 - Key agreement 5 - Cert signing key 6 - CRL signing key Other to finish > 1 0 - Digital Signature 1 - Non-repudiation 2 - Key encipherment 3 - Data encipherment 4 - Key agreement 5 - Cert signing key 6 - CRL signing key Other to finish > 5 0 - Digital Signature 1 - Non-repudiation 2 - Key encipherment 3 - Data encipherment 4 - Key agreement 5 - Cert signing key 6 - CRL signing key Other to finish > 6 0 - Digital Signature 1 - Non-repudiation 2 - Key encipherment 3 - Data encipherment 4 - Key agreement 5 - Cert signing key 6 - CRL signing key Other to finish > 9 Is this a critical extension [y/N]? y Is this a CA certificate [y/N]? y Enter the path length constraint, enter to skip [<0 for unlimited path]: > Is this a critical extension [y/N]? y Enter Password or Pin for "NSS Certificate DB": [root@vm6 RootCA]# ls /root/ anaconda-ks.cfg install.log install.log.syslog ipacacert.asc ipa.crt ipa.csr RootCA [root@vm6 RootCA]# [root@vm6 RootCA]# [root@vm6 RootCA]# [root@vm6 RootCA]# [root@vm6 RootCA]# ipa-server-install -p Secret123 --external_cert_file /root/ipa.crt \ > --external_ca_file /root/ipacacert.asc The log file for this installation can be found in /var/log/ipaserver-install.log ============================================================================== This program will set up the IPA Server. This includes: * Configure a stand-alone CA (dogtag) for certificate management * Configure the Network Time Daemon (ntpd) * Create and configure an instance of Directory Server * Create and configure a Kerberos Key Distribution Center (KDC) * Configure Apache (httpd) To accept the default shown in brackets, press the Enter key. The IPA Master Server will be configured with: Hostname: vm6.example.test IP address: 192.168.122.156 Domain name: example.test Realm name: EXAMPLE.TEST Configuring certificate server (pki-cad): Estimated time 3 minutes 30 seconds [1/20]: creating certificate server user [2/20]: configuring certificate server instance [3/20]: disabling nonces [4/20]: creating CA agent PKCS#12 file in /root [5/20]: creating RA agent certificate database [6/20]: importing CA chain to RA certificate database [7/20]: fixing RA database permissions [8/20]: setting up signing cert profile [9/20]: set up CRL publishing [10/20]: set certificate subject base [11/20]: enabling Subject Key Identifier [12/20]: setting audit signing renewal to 2 years [13/20]: configuring certificate server to start on boot [14/20]: restarting certificate server [15/20]: requesting RA certificate from CA [16/20]: issuing RA agent certificate [17/20]: adding RA agent as a trusted user [18/20]: configure certificate renewals [19/20]: configure Server-Cert certificate renewal [20/20]: Configure HTTP to proxy connections Done configuring certificate server (pki-cad). Configuring directory server (dirsrv): Estimated time 1 minute [1/38]: creating directory server user [2/38]: creating directory server instance [3/38]: adding default schema [4/38]: enabling memberof plugin [5/38]: enabling winsync plugin [6/38]: configuring replication version plugin [7/38]: enabling IPA enrollment plugin [8/38]: enabling ldapi [9/38]: disabling betxn plugins [10/38]: configuring uniqueness plugin [11/38]: configuring uuid plugin [12/38]: configuring modrdn plugin [13/38]: enabling entryUSN plugin [14/38]: configuring lockout plugin [15/38]: creating indices [16/38]: enabling referential integrity plugin [17/38]: configuring ssl for ds instance [18/38]: configuring certmap.conf [19/38]: configure autobind for root [20/38]: configure new location for managed entries [21/38]: restarting directory server [22/38]: adding default layout [23/38]: adding delegation layout [24/38]: adding replication acis [25/38]: creating container for managed entries [26/38]: configuring user private groups [27/38]: configuring netgroups from hostgroups [28/38]: creating default Sudo bind user [29/38]: creating default Auto Member layout [30/38]: adding range check plugin [31/38]: creating default HBAC rule allow_all [32/38]: Upload CA cert to the directory [33/38]: initializing group membership [34/38]: adding master entry [35/38]: configuring Posix uid/gid generation [36/38]: enabling compatibility plugin [37/38]: tuning directory server [38/38]: configuring directory to start on boot Done configuring directory server (dirsrv). Configuring Kerberos KDC (krb5kdc): Estimated time 30 seconds [1/10]: adding sasl mappings to the directory [2/10]: adding kerberos container to the directory [3/10]: configuring KDC [4/10]: initialize kerberos container [5/10]: adding default ACIs [6/10]: creating a keytab for the directory [7/10]: creating a keytab for the machine [8/10]: adding the password extension to the directory [9/10]: starting the KDC [10/10]: configuring KDC to start on boot Done configuring Kerberos KDC (krb5kdc). Configuring kadmin [1/2]: starting kadmin [2/2]: configuring kadmin to start on boot Done configuring kadmin. Configuring ipa_memcached [1/2]: starting ipa_memcached [2/2]: configuring ipa_memcached to start on boot Done configuring ipa_memcached. Configuring the web interface (httpd): Estimated time 1 minute [1/14]: setting mod_nss port to 443 [2/14]: setting mod_nss protocol list to TLSv1.0 - TLSv1.2 [3/14]: setting mod_nss password file [4/14]: enabling mod_nss renegotiate [5/14]: adding URL rewriting rules [6/14]: configuring httpd [7/14]: setting up ssl [8/14]: setting up browser autoconfig [9/14]: publish CA cert [10/14]: creating a keytab for httpd [11/14]: clean up any existing httpd ccache [12/14]: configuring SELinux for httpd [13/14]: restarting httpd [14/14]: configuring httpd to start on boot Done configuring the web interface (httpd). Applying LDAP updates Restarting the directory server Restarting the KDC Sample zone file for bind has been created in /tmp/sample.zone.CMq0Oz.db Restarting the web server ============================================================================== Setup complete Next steps: 1. You must make sure these network ports are open: TCP Ports: * 80, 443: HTTP/HTTPS * 389, 636: LDAP/LDAPS * 88, 464: kerberos UDP Ports: * 88, 464: kerberos * 123: ntp 2. You can now obtain a kerberos ticket using the command: 'kinit admin' This ticket will allow you to use the IPA tools (e.g., ipa user-add) and the web user interface. Be sure to back up the CA certificate stored in /root/cacert.p12 This file is required to create replicas. The password for this file is the Directory Manager password [root@vm6 RootCA]# [root@vm6 RootCA]# [root@vm6 RootCA]# [root@vm6 RootCA]# [root@vm6 RootCA]# cd [root@vm6 ~]# ipa-replica-prepare -p Secret123 vm7.example.test Preparing replica for vm7.example.test from vm6.example.test Creating SSL certificate for the Directory Server Creating SSL certificate for the dogtag Directory Server Creating SSL certificate for the Web Server Exporting RA certificate Copying additional files Finalizing configuration Packaging replica information into /var/lib/ipa/replica-info-vm7.example.test.gpg [root@vm6 ~]# scp /var/lib/ipa/replica-info-vm7.example.test.gpg 192.168.122.157:/root The authenticity of host '192.168.122.157 (<no hostip for proxy command>)' can't be established. RSA key fingerprint is 1d:dd:91:12:62:34:a3:a2:7d:1b:58:c9:5c:c8:d3:77. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.122.157' (RSA) to the list of known hosts. root.122.157's password: replica-info-vm7.example.test.gpg 100% 40KB 40.5KB/s 00:00 [root@vm6 ~]# scp 192.168.122.157:/usr/share/ipa/copy-schema-to-ca.py . root.122.157's password: copy-schema-to-ca.py 100% 3606 3.5KB/s 00:00 [root@vm6 ~]# python /root/copy-schema-to-ca.py ipa : INFO Installed /etc/dirsrv/slapd-PKI-IPA//schema/60kerberos.ldif ipa : INFO Installed /etc/dirsrv/slapd-PKI-IPA//schema/60samba.ldif ipa : INFO Installed /etc/dirsrv/slapd-PKI-IPA//schema/60ipaconfig.ldif ipa : INFO Installed /etc/dirsrv/slapd-PKI-IPA//schema/60basev2.ldif ipa : INFO Installed /etc/dirsrv/slapd-PKI-IPA//schema/60basev3.ldif ipa : INFO Installed /etc/dirsrv/slapd-PKI-IPA//schema/60ipadns.ldif ipa : INFO Installed /etc/dirsrv/slapd-PKI-IPA//schema/61kerberos-ipav3.ldif ipa : INFO Installed /etc/dirsrv/slapd-PKI-IPA//schema/65ipasudo.ldif ipa : INFO Installed /etc/dirsrv/slapd-PKI-IPA//schema/05rfc2247.ldif ipa : INFO Restarting CA DS ipa : INFO Schema updated successfully ########################### RHEL 7.2 IPA MASTER ########################### [root@vm7 ~]# ipa-replica-install --setup-ca -w Secret123 -p Secret123 /root/replica-info-vm7.example.test.gpg Run connection check to master Check connection from replica to remote master 'vm6.example.test': Directory Service: Unsecure port (389): OK Directory Service: Secure port (636): OK Kerberos KDC: TCP (88): OK Kerberos Kpasswd: TCP (464): OK HTTP Server: Unsecure port (80): OK HTTP Server: Secure port (443): OK PKI-CA: Directory Service port (7389): OK The following list of ports use UDP protocol and would need to be checked manually: Kerberos KDC: UDP (88): SKIPPED Kerberos Kpasswd: UDP (464): SKIPPED Connection from replica to master is OK. Start listening on required ports for remote master check Get credentials to log in to remote master Check SSH connection to remote master Execute check on remote master Check connection from master to remote replica 'vm7.example.test': Directory Service: Unsecure port (389): OK Directory Service: Secure port (636): OK Kerberos KDC: TCP (88): OK Kerberos KDC: UDP (88): OK Kerberos Kpasswd: TCP (464): OK Kerberos Kpasswd: UDP (464): OK HTTP Server: Unsecure port (80): OK HTTP Server: Secure port (443): OK Connection from master to replica is OK. Connection check OK Configuring NTP daemon (ntpd) [1/4]: stopping ntpd [2/4]: writing configuration [3/4]: configuring ntpd to start on boot [4/4]: starting ntpd Done configuring NTP daemon (ntpd). Configuring directory server (dirsrv). Estimated time: 1 minute [1/38]: creating directory server user [2/38]: creating directory server instance [3/38]: adding default schema [4/38]: enabling memberof plugin [5/38]: enabling winsync plugin [6/38]: configuring replication version plugin [7/38]: enabling IPA enrollment plugin [8/38]: enabling ldapi [9/38]: configuring uniqueness plugin [10/38]: configuring uuid plugin [11/38]: configuring modrdn plugin [12/38]: configuring DNS plugin [13/38]: enabling entryUSN plugin [14/38]: configuring lockout plugin [15/38]: creating indices [16/38]: enabling referential integrity plugin [17/38]: configuring ssl for ds instance [18/38]: configuring certmap.conf [19/38]: configure autobind for root [20/38]: configure new location for managed entries [21/38]: configure dirsrv ccache [22/38]: enable SASL mapping fallback [23/38]: restarting directory server [24/38]: setting up initial replication Starting replication, please wait until this has completed. Update in progress, 9 seconds elapsed Update succeeded [25/38]: updating schema [26/38]: setting Auto Member configuration [27/38]: enabling S4U2Proxy delegation [28/38]: importing CA certificates from LDAP [29/38]: initializing group membership [30/38]: adding master entry [31/38]: initializing domain level [32/38]: configuring Posix uid/gid generation [33/38]: adding replication acis [34/38]: enabling compatibility plugin [35/38]: activating sidgen plugin [36/38]: activating extdom plugin [37/38]: tuning directory server [38/38]: configuring directory to start on boot Done configuring directory server (dirsrv). Configuring certificate server (pki-tomcatd). Estimated time: 3 minutes 30 seconds [1/23]: creating certificate server user [2/23]: configuring certificate server instance [3/23]: stopping certificate server instance to update CS.cfg [4/23]: backing up CS.cfg [5/23]: disabling nonces [6/23]: set up CRL publishing [7/23]: enable PKIX certificate path discovery and validation [8/23]: starting certificate server instance [9/23]: creating RA agent certificate database [10/23]: importing CA chain to RA certificate database [11/23]: fixing RA database permissions [12/23]: setting up signing cert profile [13/23]: setting audit signing renewal to 2 years [14/23]: importing RA certificate from PKCS #12 file [15/23]: authorizing RA to modify profiles [16/23]: configure certmonger for renewals [17/23]: configure certificate renewals [18/23]: configure Server-Cert certificate renewal [19/23]: Configure HTTP to proxy connections [20/23]: restarting certificate server [21/23]: migrating certificate profiles to LDAP [22/23]: importing IPA certificate profiles [23/23]: adding default CA ACL Done configuring certificate server (pki-tomcatd). Restarting the directory and certificate servers Configuring Kerberos KDC (krb5kdc). Estimated time: 30 seconds [1/8]: adding sasl mappings to the directory [2/8]: configuring KDC [3/8]: creating a keytab for the directory [4/8]: creating a keytab for the machine [5/8]: adding the password extension to the directory [6/8]: enable GSSAPI for replication [7/8]: starting the KDC [8/8]: configuring KDC to start on boot Done configuring Kerberos KDC (krb5kdc). Configuring kadmin [1/2]: starting kadmin [2/2]: configuring kadmin to start on boot Done configuring kadmin. Configuring ipa_memcached [1/2]: starting ipa_memcached [2/2]: configuring ipa_memcached to start on boot Done configuring ipa_memcached. Configuring the web interface (httpd). Estimated time: 1 minute [1/18]: setting mod_nss port to 443 [2/18]: setting mod_nss protocol list to TLSv1.0 - TLSv1.2 [3/18]: setting mod_nss password file [4/18]: enabling mod_nss renegotiate [5/18]: adding URL rewriting rules [6/18]: configuring httpd [7/18]: configure certmonger for renewals [8/18]: setting up ssl [9/18]: importing CA certificates from LDAP [10/18]: publish CA cert [11/18]: creating a keytab for httpd [12/18]: clean up any existing httpd ccache [13/18]: configuring SELinux for httpd [14/18]: create KDC proxy user [15/18]: create KDC proxy config [16/18]: enable KDC proxy [17/18]: restarting httpd [18/18]: configuring httpd to start on boot Done configuring the web interface (httpd). Configuring ipa-otpd [1/2]: starting ipa-otpd [2/2]: configuring ipa-otpd to start on boot Done configuring ipa-otpd. Applying LDAP updates Upgrading IPA: [1/9]: stopping directory server [2/9]: saving configuration [3/9]: disabling listeners [4/9]: enabling DS global lock [5/9]: starting directory server [6/9]: upgrading server [7/9]: stopping directory server [8/9]: restoring configuration [9/9]: starting directory server Done. Restarting the directory server Restarting the KDC Restarting the web server [root@vm7 ~]# ipa cert-find ----------------------- 14 certificates matched ----------------------- Serial number (hex): 0x1 Serial number: 1 Status: VALID Subject: CN=OCSP Subsystem,O=EXAMPLE.TEST Serial number (hex): 0x2 Serial number: 2 Status: VALID Subject: CN=vm6.example.test,O=EXAMPLE.TEST Serial number (hex): 0x3 Serial number: 3 Status: VALID Subject: CN=CA Subsystem,O=EXAMPLE.TEST Serial number (hex): 0x4 Serial number: 4 Status: VALID Subject: CN=CA Audit,O=EXAMPLE.TEST Serial number (hex): 0x5 Serial number: 5 Status: VALID Subject: CN=ipa-ca-agent,O=EXAMPLE.TEST Serial number (hex): 0x6 Serial number: 6 Status: VALID Subject: CN=IPA RA,O=EXAMPLE.TEST Serial number (hex): 0x7 Serial number: 7 Status: VALID Subject: CN=vm6.example.test,O=EXAMPLE.TEST Serial number (hex): 0x8 Serial number: 8 Status: VALID Subject: CN=vm6.example.test,O=EXAMPLE.TEST Serial number (hex): 0x9 Serial number: 9 Status: VALID Subject: CN=vm6.example.test,O=EXAMPLE.TEST Serial number (hex): 0xA Serial number: 10 Status: VALID Subject: CN=Object Signing Cert,O=EXAMPLE.TEST Serial number (hex): 0xB Serial number: 11 Status: VALID Subject: CN=vm7.example.test,O=EXAMPLE.TEST Serial number (hex): 0xC Serial number: 12 Status: VALID Subject: CN=vm7.example.test,O=EXAMPLE.TEST Serial number (hex): 0xD Serial number: 13 Status: VALID Subject: CN=vm7.example.test,O=EXAMPLE.TEST Serial number (hex): 0xE Serial number: 14 Status: VALID Subject: CN=vm7.example.test,O=EXAMPLE.TEST ----------------------------- Number of entries returned 14 ----------------------------- [root@vm7 ~]# Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2016-0909.html |