Roberto Cornacchia wrote: > Hi, > > I just wanted thank Rob for the help and give a conclusion to this > thread, in case anyone else needs to replicate from some old version > like 4.2 > > I first wanted to replicate from 4.2.4 to 4.8.4 (provided by CentOS 8). > Just not possible (4.8 doesn't support replication from level 0). > So I decided to first replicate from 4.2 to 4.6.6 (provided by CentOS > 7). I got almost at the end, but I found too many incompatibilities. Not > worth the effort. > My next attempt was from 4.2.4 to 4.4.4 (provided by FC25). This > succeeded, but had to upgrade nss to get > past https://pagure.io/freeipa/issue/4676 > > Lesson learned: don't try to skip too many releases.
That's great news, I'm glad you got it working. rob > > On Fri, 24 Jul 2020 at 15:33, Roberto Cornacchia > <[email protected] <mailto:[email protected]>> wrote: > > I actually went further - I'm really close now. > > Hinted by https://bugzilla.redhat.com/show_bug.cgi?id=1158410, I > adjusted > /usr/share/pki/server/conf/ciphers.info <http://ciphers.info> > /usr/lib/python2.7/site-packages/pki/server/deployment/pkiparser.py > to use the same ciphers as ipa01. > > This worked, and it got almost to the end (with one step in between > - I needed to open port 8443 on ipa01): > > [root@ipa02 ~]# ipa-ca-install replica-info-ipa02.hq.spinque.com.gpg > Password for [email protected] <mailto:[email protected]>: > Directory Manager (existing master) password: > > Run connection check to master > Connection check OK > Configuring certificate server (pki-tomcatd). Estimated time: 3 minutes > [1/27]: configuring certificate server instance > [2/27]: reindex attributes > [3/27]: exporting Dogtag certificate store pin > [4/27]: stopping certificate server instance to update CS.cfg > [5/27]: backing up CS.cfg > [6/27]: disabling nonces > [7/27]: set up CRL publishing > [8/27]: enable PKIX certificate path discovery and validation > [9/27]: starting certificate server instance > [10/27]: setting audit signing renewal to 2 years > [11/27]: restarting certificate server > [12/27]: authorizing RA to modify profiles > [13/27]: authorizing RA to manage lightweight CAs > [14/27]: Ensure lightweight CAs container exists > [15/27]: Ensuring backward compatibility > [16/27]: configure certificate renewals > [17/27]: configure Server-Cert certificate renewal > [18/27]: Configure HTTP to proxy connections > [19/27]: restarting certificate server > [20/27]: updating IPA configuration > [21/27]: enabling CA instance > [22/27]: exposing CA instance on LDAP > [23/27]: migrating certificate profiles to LDAP > [24/27]: importing IPA certificate profiles > [25/27]: adding default CA ACL > [26/27]: adding 'ipa' CA entry > [error] HTTPRequestError: Request failed with status 404: Non-2xx > response from CA REST API: 404. > > The failing call was > https://ipa01.hq.spinque.com:8443/ca/rest/authorities/host-authority. > This comes after a successful POST > > https://ipa01.hq.spinque.com:8443/ca/rest/profiles/KDCs_PKINIT_Certs?action=enable > > The subpath /authorities doesn't seem to exist on ipa01 - probably > it changed. > > Is there a workaround here? > > If not: it was almost at the end. Is it missing crucial steps or can > I get away with it? > > The CA is up, I'm just not sure if it is safe to use. > Can I check its health further than the following? > > [root@ipa02 ~]# ipa server-role-find --role "CA server" > ---------------------- > 2 server roles matched > ---------------------- > Server name: ipa02.hq.spinque.com <http://ipa02.hq.spinque.com> > Role name: CA server > Role status: enabled > > Server name: ipa01.hq.spinque.com <http://ipa01.hq.spinque.com> > Role name: CA server > Role status: enabled > ---------------------------- > Number of entries returned 2 > ---------------------------- > > > > On Fri, 24 Jul 2020 at 13:20, Roberto Cornacchia > <[email protected] <mailto:[email protected]>> > wrote: > > Thanks Rob. > > Skipping the key checks got me past that error. So the > connection test passes! > > Unfortunately now I have a cipher issue. > > [root@ipa02 ~]# ipa-ca-install > replica-info-ipa02.hq.spinque.com.gpg > Directory Manager (existing master) password: > > Run connection check to master > Connection check OK > Configuring certificate server (pki-tomcatd). Estimated time: 3 > minutes > [1/27]: configuring certificate server instance > ipaserver.install.dogtaginstance: CRITICAL Failed to configure > CA instance: Command '/usr/sbin/pkispawn -s CA -f > /tmp/tmpkUNbPC' returned non-zero exit status 1 > ipaserver.install.dogtaginstance: CRITICAL See the installation > logs and the following files/directories for more information: > ipaserver.install.dogtaginstance: CRITICAL /var/log/pki/pki-tomcat > > /var/log/pki/pki-tomcat/ca/debug > > [http-bio-8443-exec-3]: ConfigurationUtils: GET > https://ipa01.hq.spinque.com:443/ca/admin/ca/getCertChain > javax.ws.rs.ProcessingException: Unable to invoke request > at > > org.jboss.resteasy.client.jaxrs.engines.ApacheHttpClient4Engine.invoke(ApacheHttpClient4Engine.java:287) > ... > Caused by: java.io.IOException: SocketException cannot write on > socket > at org.mozilla.jss.ssl.SSLSocket.write(SSLSocket.java:1503) > > ipa01:/var/log/httpd/error_log says: > [:error] [pid 18129] SSL Library Error: -12286 No common > encryption algorithm(s) with client > > I guess it makes sense, old ciphers have been disabled in the > newer release. > > Testing with openssl from ipa02 against ipa01, I found only > these being accepted: > AES128-SHA > DES-CBC3-SHA > RC4-SHA > RC4-MD5 > > How can I temporarily make ipa-ca-install accept old ciphers? > Before running ipa-ca-install there is even no pki-tomcat > configured on ipa02, but running it fails. > > Any idea? > > On Fri, 24 Jul 2020 at 00:46, Rob Crittenden > <[email protected] <mailto:[email protected]>> wrote: > > Roberto Cornacchia via FreeIPA-users wrote: > > Hi Rob, > > > > Thanks for the tip. > > > > I don't see errors that I've found before, but quite some > errors. > > > > In attachment is the result of > > grep -v SUCCESS /var/log/httpd/error_log > > for today. > > IPA stopped using memcached in I think version 4.5.0. I > guess the key > size in the session grew since then. > > I'm not sure what the best workaround is. On the 4.2 servers > you could > try to modify > /usr/lib/python*/site-packages/ipaserver/session.py and find: > > self.mc <http://self.mc> = memcache.Client(self.servers, > debug=0) > > Add check_keys=False to that initialization to not check > sizing. That > could have other unintended consequences that I'm not aware of. > > Restart httpd after making this change. > > > I've also tried to replicate the error that I got with > > ipa-replica-install, during the server upgrade step. > > I ran ipa-server-upgrade -v on ipa02, and got the same error > > "ipaserver.install.ldapupdate: ERROR Add failure > attribute "cn" not > > allowed". > > /var/log/ipaserver-upgrade.log should have more context. > > > > > I also see something else that is strane in the output > > of ipa-server-upgrade -v: > > > > Failed to check CA status: cannot connect to > > 'http://ipa01.hq.spinque.com:8080/ca/admin/ca/getStatus': > [Errno 113] No > > route to host > > > > I wonder why 8080. Shouldn't this be on 80? > > Try opening port 8080. It tries to contact the CA directly > and not > through the Apache proxy. > > > > > [root@ipa02 ~]# curl > > 'http://ipa01.hq.spinque.com:8080/ca/admin/ca/getStatus' > > curl: (7) Failed connect to ipa01.hq.spinque.com:8080 > <http://ipa01.hq.spinque.com:8080> > > <http://ipa01.hq.spinque.com:8080>; No route to host > > > > [root@ipa02 ~]# curl > 'http://ipa01.hq.spinque.com/ca/admin/ca/getStatus' > > <?xml version="1.0" encoding="UTF-8" > > > > standalone="no"?><XMLResponse><State>1</State><Type>CA</Type><Status>running</Status><Version>10.2.6-20.fc23</Version></XMLResponse> > > > > Roberto > > > > On Thu, 23 Jul 2020 at 19:08, Rob Crittenden > <[email protected] <mailto:[email protected]> > > <mailto:[email protected] <mailto:[email protected]>>> > wrote: > > > > Roberto Cornacchia via FreeIPA-users wrote: > > > ipa-replica-conncheck fails with --auto-master-check > (used by > > > ipa-ca-install), but not without: > > > > > > > > > [root@ipa02 ~]# /usr/sbin/ipa-replica-conncheck --master > > > ipa01.hq.spinque.com <http://ipa01.hq.spinque.com> > <http://ipa01.hq.spinque.com> > > <http://ipa01.hq.spinque.com> --auto-master-check > > > --realm HQ.SPINQUE.COM <http://HQ.SPINQUE.COM> > <http://HQ.SPINQUE.COM> > > <http://HQ.SPINQUE.COM> --hostname > > > ipa02.hq.spinque.com <http://ipa02.hq.spinque.com> > <http://ipa02.hq.spinque.com> > > <http://ipa02.hq.spinque.com> > > > Check connection from replica to remote master > > 'ipa01.hq.spinque.com <http://ipa01.hq.spinque.com> > <http://ipa01.hq.spinque.com> > > > <http://ipa01.hq.spinque.com>': > > > 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 > > > > > > The following list of ports use UDP protocoland > 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 > > > 389 tcp: Failed to bind > > > 636 tcp: Failed to bind > > > 88 tcp: Failed to bind > > > 88 udp: Failed to bind > > > 464 tcp: Failed to bind > > > 464 udp: Failed to bind > > > 80 tcp: Failed to bind > > > 443 tcp: Failed to bind > > > Get credentials to log in to remote master > > > Check RPC connection to remote master > > > trying https://ipa01.hq.spinque.com/ipa/session/json > > > *Connection to > https://ipa01.hq.spinque.com/ipa/session/json > > failed with > > > <ProtocolError for > ipa01.hq.spinque.com/ipa/session/json > <http://ipa01.hq.spinque.com/ipa/session/json> > > <http://ipa01.hq.spinque.com/ipa/session/json> > > > <http://ipa01.hq.spinque.com/ipa/session/json>: 500 > Internal > > Server Error>* > > > trying https://ipa02.hq.spinque.com/ipa/session/json > > > [try 1]: Forwarding 'schema' to json server > > > 'https://ipa02.hq.spinque.com/ipa/session/json' > > > trying https://ipa01.hq.spinque.com/ipa/session/json > > > Connection to > https://ipa01.hq.spinque.com/ipa/session/json failed > > with > > > <ProtocolError for > ipa01.hq.spinque.com/ipa/session/json > <http://ipa01.hq.spinque.com/ipa/session/json> > > <http://ipa01.hq.spinque.com/ipa/session/json> > > > <http://ipa01.hq.spinque.com/ipa/session/json>: 500 > Internal > > Server Error> > > > trying https://ipa02.hq.spinque.com/ipa/session/json > > > [try 1]: Forwarding 'ping/1' to json server > > > 'https://ipa02.hq.spinque.com/ipa/session/json' > > > Execute check on remote master > > > [try 1]: Forwarding 'server_conncheck' to json server > > > 'https://ipa02.hq.spinque.com/ipa/session/json' > > > *ERROR: Remote master check failed with following > error message(s): > > > invalid 'cn': must be "ipa02.hq.spinque.com > <http://ipa02.hq.spinque.com> > > <http://ipa02.hq.spinque.com> > <http://ipa02.hq.spinque.com>"* > > > > > > > > > Now, without --auto-master-check: > > > > > > On ipa02 (I suppose the many "Failed to bind" below > are expected?): > > > [root@ipa02 ~]# /usr/sbin/ipa-replica-conncheck --master > > > ipa01.hq.spinque.com <http://ipa01.hq.spinque.com> > <http://ipa01.hq.spinque.com> > > <http://ipa01.hq.spinque.com> --realm > > > HQ.SPINQUE.COM <http://HQ.SPINQUE.COM> > <http://HQ.SPINQUE.COM> <http://HQ.SPINQUE.COM> > > --hostname ipa02.hq.spinque.com > <http://ipa02.hq.spinque.com> <http://ipa02.hq.spinque.com> > > > <http://ipa02.hq.spinque.com> > > > Check connection from replica to remote master > > 'ipa01.hq.spinque.com <http://ipa01.hq.spinque.com> > <http://ipa01.hq.spinque.com> > > > <http://ipa01.hq.spinque.com>': > > > 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 > > > > > > The following list of ports use UDP protocoland > 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 > > > 389 tcp: Failed to bind > > > 636 tcp: Failed to bind > > > 88 tcp: Failed to bind > > > 88 udp: Failed to bind > > > 464 tcp: Failed to bind > > > 464 udp: Failed to bind > > > 80 tcp: Failed to bind > > > 443 tcp: Failed to bind > > > Listeners are started. Use CTRL+C to terminate the > listening part > > after > > > the test. > > > > > > Please run the following command on remote master: > > > /usr/sbin/ipa-replica-conncheck --replica > ipa02.hq.spinque.com <http://ipa02.hq.spinque.com> > > <http://ipa02.hq.spinque.com> > > > <http://ipa02.hq.spinque.com> > > > ^C > > > Cleaning up... > > > > > > On ipa01: > > > [root@ipa01 ~]# /usr/sbin/ipa-replica-conncheck > --replica > > > ipa02.hq.spinque.com <http://ipa02.hq.spinque.com> > <http://ipa02.hq.spinque.com> > > <http://ipa02.hq.spinque.com> > > > Check connection from master to remote replica > > 'ipa02.hq.spinque.com <http://ipa02.hq.spinque.com> > <http://ipa02.hq.spinque.com> > > > <http://ipa02.hq.spinque.com>': > > > Directory Service: Unsecure port (389): OK > > > Directory Service: Secure port (636): OK > > > Kerberos KDC: TCP (88): OK > > > Kerberos KDC: UDP (88): WARNING > > > Kerberos Kpasswd: TCP (464): OK > > > Kerberos Kpasswd: UDP (464): WARNING > > > HTTP Server: Unsecure port (80): OK > > > HTTP Server: Secure port (443): OK > > > The following UDP ports could not be verified as > open: 88, 464 > > > This can happen if they are already bound to an > application > > > and ipa-replica-conncheck cannot attach own UDP > responder. > > > > > > Connection from master to replica is OK. > > > > > > > > > > > > On Thu, 23 Jul 2020 at 15:15, Roberto Cornacchia > > > <[email protected] > <mailto:[email protected]> > > <mailto:[email protected] > <mailto:[email protected]>> > > <mailto:[email protected] > <mailto:[email protected]> > > <mailto:[email protected] > <mailto:[email protected]>>>> wrote: > > > > > > Hi, > > > > > > I have successfully created a replica from a > 4.2.4 master (ipa01) > > > into a new 4.6.6 master (ipa02). > > > > > > I did it without --setup-ca option (because it > had failed), so the > > > only CA is still on the 4.2.4 server (ipa01). > > > > > > When I try to setup theCA on ipa02 (the same > replica file was used > > > with ipa-replica-install), this fails: > > > > > > $ ipa-ca-install > replica-info-ipa02.hq.spinque.com.gpg > > > Directory Manager (existing master) password: > > > > > > Run connection check to master > > > > > > Your system may be partly configured. > > > Run /usr/sbin/ipa-server-install --uninstall to > clean up. > > > > > > Connection check failed! > > > See /var/log/ipareplica-conncheck.log for more > information. > > > If the check results are not valid it can be > skipped with > > > --skip-conncheck parameter. > > > > > > The log of conncheck (generated by > ipa-ca-install) is in > > attachment. > > > In there, I can see a couple of things going wrong: > > > > > > ProtocolError: <ProtocolError for > > > ipa01.hq.spinque.com/ipa/session/json > <http://ipa01.hq.spinque.com/ipa/session/json> > > <http://ipa01.hq.spinque.com/ipa/session/json> > > > <http://ipa01.hq.spinque.com/ipa/session/json>: > 500 Internal > > Server > > > Error> > > > ... > > > 2020-07-23T12:20:50Z ERROR ERROR: Remote master > check failed with > > > following error message(s): > > > invalid 'cn': must be "ipa02.hq.spinque.com > <http://ipa02.hq.spinque.com> > > <http://ipa02.hq.spinque.com> > > > <http://ipa02.hq.spinque.com>" > > > > > > Not sure if relevant, but also > ipa-replica-install, though it > > > completed successfully, gave this error: > > > > > > Upgrading IPA:. Estimated time: 1 minute 30 seconds > > > [1/10]: stopping directory server > > > [2/10]: saving configuration > > > [3/10]: disabling listeners > > > [4/10]: enabling DS global lock > > > [5/10]: disabling Schema Compat > > > [6/10]: starting directory server > > > [7/10]: upgrading server > > > ipaserver.install.ldapupdate: ERROR Add > failure attribute "cn" > > > not allowed > > > [8/10]: stopping directory server > > > [9/10]: restoring configuration > > > [10/10]: starting directory server > > > > > > > > > Could you please help me find the issue? > > > > Look on ipa01.hq.spinque.com > <http://ipa01.hq.spinque.com> <http://ipa01.hq.spinque.com> in > > /var/log/httpd/error_log for those > > internal errors. > > > > rob > > > > > > _______________________________________________ > > FreeIPA-users mailing list -- > [email protected] > <mailto:[email protected]> > > To unsubscribe send an email to > [email protected] > <mailto:[email protected]> > > Fedora Code of Conduct: > https://docs.fedoraproject.org/en-US/project/code-of-conduct/ > > List Guidelines: > https://fedoraproject.org/wiki/Mailing_list_guidelines > > List Archives: > > https://lists.fedorahosted.org/archives/list/[email protected] > > > _______________________________________________ FreeIPA-users mailing list -- [email protected] To unsubscribe send an email to [email protected] Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedorahosted.org/archives/list/[email protected]
