Dieser Inhalt ist in der von Ihnen ausgewählten Sprache nicht verfügbar.
Chapter 2. Migrating your IdM environment from RHEL 7 servers to RHEL 8 servers
To upgrade a RHEL 7 IdM environment to RHEL 8, you must first add new RHEL 8 IdM replicas to your RHEL 7 IdM environment, and then retire the RHEL 7 servers.
- Performing an in-place upgrade of RHEL 7 IdM servers and IdM server nodes to RHEL 8 is not supported.
Migrating directly to RHEL 8 from RHEL 6 or earlier versions is not supported. To properly update your IdM data, you must perform incremental migrations.
For example, to migrate a RHEL 6 IdM environment to RHEL 8:
- Migrate from RHEL 6 servers to RHEL 7 servers. See Migrating Identity Management from Red Hat Enterprise Linux 6 to Version 7.
- Migrate from RHEL 7 servers to RHEL 8 servers, as described in this section.
RHEL 8 supports SPAKE and IdP pre-authentication, but RHEL 7 does not. Having RHEL 8 servers with SPAKE or IdP enabled in a RHEL 7 IdM deployment may lead to problems such as users not being able to log in. Therefore, migrate all servers in an IdM deployment as quickly as possible.
For more information, see Red Hat Knowledgebase solutions Pre-authentication failures in kerberos and Using 2FA/OTP authentication for AD trust users.
This procedure describes how to migrate all Identity Management (IdM) data and configuration from a Red Hat Enterprise Linux (RHEL) 7 server to a RHEL 8 server. You can also use this procedure to migrate from FreeIPA servers on non-RHEL Linux distributions to IdM on RHEL 8 servers.
The migration procedure includes:
- Configuring a RHEL 8 IdM server and adding it as a replica to your current RHEL 7 IdM environment. For details, see Installing the RHEL 8 Replica.
- Making the RHEL 8 server the certificate authority (CA) renewal server. For details, see Assigning the CA renewal server role to the RHEL 8 IdM server.
- Stopping the generation of the certificate revocation list (CRL) on the RHEL 7 server and redirecting CRL requests to RHEL 8. For details, see Stopping CRL generation on a RHEL 7 IdM CA server.
- Starting the generation of the CRL on the RHEL 8 server. For details, see Starting CRL generation on the new RHEL 8 IdM CA server.
- Stopping and decommissioning the original RHEL 7 CA renewal server. For details, see Stopping and decommissioning the RHEL 7 server.
In the following procedures:
-
rhel8.example.comis the RHEL 8 system that will become the new CA renewal server. rhel7.example.comis the original RHEL 7 CA renewal server. To identify which Red Hat Enterprise Linux 7 server is the CA renewal server, run the following command on any IdM server:ipa config-show | grep "CA renewal"
[root@rhel7 ~]# ipa config-show | grep "CA renewal" IPA CA renewal master: rhel7.example.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow If your IdM deployment does not use a certificate authority (CA), any IdM server running on RHEL 7 can be
rhel7.example.com.
Complete the steps in the following sections only if your IdM deployment uses an embedded CA:
2.1. Preparing for migrating IdM from RHEL 7 to RHEL 8 Link kopierenLink in die Zwischenablage kopiert!
On rhel7.example.com:
- Upgrade the system to the latest RHEL 7 version.
- Ensure that the domain level for your domain is set to 1. For more information, see Displaying and Raising the Domain Level in the Linux Domain Identity, Authentication, and Policy Guide for RHEL 7.
Update the ipa-* packages to their latest version:
yum update ipa-*
[root@rhel7 ~]# yum update ipa-*Copy to Clipboard Copied! Toggle word wrap Toggle overflow WarningWhen upgrading multiple Identity Management (IdM) servers, wait at least 10 minutes between each upgrade.
When two or more servers are upgraded simultaneously or with only short intervals between the upgrades, there is not enough time to replicate the post-upgrade data changes throughout the topology, which can result in conflicting replication events.
On rhel8.example.com:
- Install the latest version of Red Hat Enterprise Linux on the system. For more information, see Interactively installing RHEL from installation media.
Identify the time server
rhel7.example.comis synchronized with:ntpstat
[root@rhel7 ~]# ntpstat synchronised to NTP server (ntp.example.com) at stratum 3 time correct to within 42 ms polling server every 1024 sCopy to Clipboard Copied! Toggle word wrap Toggle overflow ImportantIn RHEL 8, IdM does not provide its own time server: the installation of IdM on
rhel8.example.comdoes not result in the installation of an NTP server on the host. Therefore, you need to use a separate NTP server, for examplentp.example.com. For more information, see Migrating to chrony and Time service requirements for IdM.While
rhel7.example.comcan be used in an NTP server role, you will decommission the server as part of the migration process. Therefore,rhel8.example.comneeds to be synchronized directly withntp.example.cominstead. You can specify this during the client installation process.Enroll the system as an IdM client into the domain for which
rhel7.example.comIdM server is authoritative. For more information, see Installing an IdM client. When installing the client, specify the time server from the previous step:ipa-client-install --mkhomedir --ntp-server ntp.example.com
[root@rhel8]# ipa-client-install --mkhomedir --ntp-server ntp.example.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow If you are using a pool of NTP servers, use the
--ntp-pooloption.If you do not specify an NTP server manually, it will be automatically set from DNS records. This can lead to
rhel8.example.comsynchronizing withrhel7.example.com. This will cause issues when the RHEL 7 server is decommissioned.If the RHEL8 system is already properly configured as an NTP client, you can use the
--no-ntpoption when performing the IdM client installation.ImportantDo not use single-label domain names, for example
.company. Starting with RHEL 8, IDM does not accept single-labeled domain names and the domain name must be composed of one or more subdomains and a top level domain, for exampleexample.comorcompany.example.com.If the existing domain is single-labeled, it is not possible to perform the migration using these instructions. In these cases, use Migrating an LDAP Server to Identity Management.
- Prepare the system for IdM server installation. See Preparing the system for IdM server installation.
- Authorize the system for the installation of an IdM replica. See Authorizing the installation of a replica on an IdM client.
Update the ipa-* packages to their latest version:
yum update ipa-*
[root@rhel7 ~]# yum update ipa-*Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2. Installing the RHEL 8 replica Link kopierenLink in die Zwischenablage kopiert!
List which server roles are present in your RHEL 7 environment:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Optional: If you want to use the same per-server forwarders for
rhel8.example.comthatrhel7.example.comis using, view the per-server forwarders forrhel7.example.com:Copy to Clipboard Copied! Toggle word wrap Toggle overflow Install the IdM server on
rhel8.example.comas a replica of the IdM RHEL 7 server, including all the server roles present on yourrhel7.example.comexcept the NTP server role. To install the roles from the example above, use these options with theipa-replica-installcommand:-
--setup-cato set up the Certificate System component --setup-dnsand--forwarderto configure an integrated DNS server and set a per-server forwarder to take care of DNS queries that go outside the IdM domainNoteAdditionally, if your IdM deployment is in a trust relationship with Active Directory (AD), add the
--setup-adtrustoption to theipa-replica-installcommand to configure AD trust capability onrhel8.example.com.To set up an IdM server with the IP address of 192.0.2.1 that uses a per-server forwarder with the IP address of 192.0.2.20:
ipa-replica-install --setup-ca --ip-address 192.0.2.1 --setup-dns --forwarder 192.0.2.20
[root@rhel8 ~]# ipa-replica-install --setup-ca --ip-address 192.0.2.1 --setup-dns --forwarder 192.0.2.20Copy to Clipboard Copied! Toggle word wrap Toggle overflow You do not need to specify the RHEL 7 IdM server itself because if DNS is working correctly,
rhel8.example.comwill find it using DNS autodiscovery.
-
-
Optional: Add an
_ntp._udpservice (SRV) record for your externalNTPtime server to the DNS of the newly-installed IdM server, rhel8.example.com. Doing this is recommended because IdM in RHEL 8 does not provide its own time service. The presence of the SRV record for the time server in IdM DNS ensures that future RHEL 8 replica and client installations are automatically configured to synchronize with the time server used by rhel8.example.com. This is becauseipa-client-installlooks for the_ntp._udpDNS entry unless--ntp-serveror--ntp-pooloptions are provided on the install command-line interface (CLI).
Verification
Verify that the IdM services are running on
rhel8.example.com:ipactl status
[root@rhel8 ~]# ipactl status Directory Service: RUNNING [... output truncated ...] ipa: INFO: The ipactl command was successfulCopy to Clipboard Copied! Toggle word wrap Toggle overflow Verify that server roles for
rhel8.example.comare the same as forrhel7.example.comexcept the NTP server role:Copy to Clipboard Copied! Toggle word wrap Toggle overflow Optional: Display details about the replication agreement between
rhel7.example.comandrhel8.example.com:Copy to Clipboard Copied! Toggle word wrap Toggle overflow Optional: If your IdM deployment is in a trust relationship with AD, verify that it is working:
- link: Verify the Kerberos configuration
Attempt to resolve an AD user on
rhel8.example.com:id aduser@ad.domain
[root@rhel8 ~]# id aduser@ad.domainCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Verify that
rhel8.example.comis synchronized with theNTPserver:chronyc tracking
[root@rhel8 ~]# chronyc tracking Reference ID : CB00710F (ntp.example.com) Stratum : 3 Ref time (UTC) : Tue Nov 16 09:49:17 2021 [... output truncated ...]Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.3. Assigning the CA renewal server role to the RHEL 8 IdM server Link kopierenLink in die Zwischenablage kopiert!
Follow this procedure to make the RHEL 8 server the certificate authority (CA) renewal server.
Follow these steps only if your IdM deployment uses an embedded certificate authority (CA).
On rhel8.example.com, configure rhel8.example.com as the new CA renewal server:
Configure
rhel8.example.comto handle CA subsystem certificate renewal:Copy to Clipboard Copied! Toggle word wrap Toggle overflow The output confirms that the update was successful.
On
rhel8.example.com, enable the certificate updater task:-
Open the
/etc/pki/pki-tomcat/ca/CS.cfgconfiguration file for editing. -
Remove the
ca.certStatusUpdateIntervalentry, or set it to the desired interval in seconds. The default value is600. -
Save and close the
/etc/pki/pki-tomcat/ca/CS.cfgconfiguration file. Restart IdM services:
ipactl restart
[user@rhel8 ~]$ ipactl restartCopy to Clipboard Copied! Toggle word wrap Toggle overflow
-
Open the
On
rhel7.example.com, disable the certificate updater task:-
Open the
/etc/pki/pki-tomcat/ca/CS.cfgconfiguration file for editing. Change
ca.certStatusUpdateIntervalto0, or add the following entry if it does not exist:ca.certStatusUpdateInterval=0
ca.certStatusUpdateInterval=0Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
Save and close the
/etc/pki/pki-tomcat/ca/CS.cfgconfiguration file. Restart IdM services:
ipactl restart
[user@rhel7 ~]$ ipactl restartCopy to Clipboard Copied! Toggle word wrap Toggle overflow
-
Open the
2.4. Stopping CRL generation on a RHEL 7 IdM CA server Link kopierenLink in die Zwischenablage kopiert!
Follow these steps only if your IdM deployment uses an embedded certificate authority (CA).
Follow this procedure to stop generating the Certificate Revocation List (CRL) on the rhel7.example.com CA server using the ipa-crlgen-manage command.
Prerequisites
- You must be logged in as root.
Procedure
Optional: Check if rhel7.example.com is generating the CRL:
ipa-crlgen-manage status
[root@rhel7 ~]# ipa-crlgen-manage status CRL generation: enabled Last CRL update: 2019-10-31 12:00:00 Last CRL Number: 6 The ipa-crlgen-manage command was successfulCopy to Clipboard Copied! Toggle word wrap Toggle overflow Stop generating the CRL on the rhel7.example.com server:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Verification
Check if the rhel7.example.com server stopped generating the CRL:
ipa-crlgen-manage status
[root@rhel7 ~]# ipa-crlgen-manage statusCopy to Clipboard Copied! Toggle word wrap Toggle overflow
The rhel7.example.com server stopped generating the CRL. The next step is to enable generating the CRL on rhel8.example.com.
2.5. Starting CRL generation on the new RHEL 8 IdM CA server Link kopierenLink in die Zwischenablage kopiert!
Follow these steps only if your IdM deployment uses an embedded certificate authority (CA).
Prerequisites
- You must be logged in as root on the rhel8.example.com machine.
Procedure
To start generating CRL on rhel8.example.com, use the
ipa-crlgen-manage enablecommand:Copy to Clipboard Copied! Toggle word wrap Toggle overflow To check if CRL generation is enabled, use the
ipa-crlgen-manage statuscommand:ipa-crlgen-manage status
[root@rhel8 ~]# ipa-crlgen-manage status CRL generation: enabled Last CRL update: 2019-10-31 12:10:00 Last CRL Number: 7 The ipa-crlgen-manage command was successfulCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.6. Stopping and decommissioning the RHEL 7 server Link kopierenLink in die Zwischenablage kopiert!
Ensure that all data, including the latest changes, have been correctly migrated from
rhel7.example.comtorhel8.example.com. For example:Add a new user on
rhel7.example.com:ipa user-add random_user
[root@rhel7 ~]# ipa user-add random_user First name: random Last name: userCopy to Clipboard Copied! Toggle word wrap Toggle overflow Check that the user has been replicated to
rhel8.example.com:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Ensure that a Distributed Numeric Assignment (DNA) ID range is allocated to
rhel8.example.com. Use one of the following methods:Activate the DNA plug-in on
rhel8.example.comdirectly by creating another test user:ipa user-add another_random_user
[root@rhel8 ~]# ipa user-add another_random_user First name: another Last name: random_userCopy to Clipboard Copied! Toggle word wrap Toggle overflow Assign a specific DNA ID range to
rhel8.example.com:On
rhel7.example.com, display the IdM ID range:Copy to Clipboard Copied! Toggle word wrap Toggle overflow On
rhel7.example.com, display the allocated DNA ID ranges:ipa-replica-manage dnarange-show
[root@rhel7 ~]# ipa-replica-manage dnarange-show rhel7.example.com: 196600026-196799999 rhel8.example.com: No range setCopy to Clipboard Copied! Toggle word wrap Toggle overflow Reduce the DNA ID range allocated to
rhel7.example.comso that a section becomes available torhel8.example.com:ipa-replica-manage dnarange-set rhel7.example.com 196600026-196699999
[root@rhel7 ~]# ipa-replica-manage dnarange-set rhel7.example.com 196600026-196699999Copy to Clipboard Copied! Toggle word wrap Toggle overflow Assign the remaining part of the IdM ID range to
rhel8.example.com:ipa-replica-manage dnarange-set rhel8.example.com 196700000-196799999
[root@rhel7 ~]# ipa-replica-manage dnarange-set rhel8.example.com 196700000-196799999Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Stop all IdM services on
rhel7.example.comto force domain discovery to the newrhel8.example.comserver.Copy to Clipboard Copied! Toggle word wrap Toggle overflow After this, the
ipautility will contact the new server through a remote procedure call (RPC).- Remove the RHEL 7 server from the topology by executing the removal commands on the RHEL 8 server. For details, see Uninstalling an IdM server.
Additional resources