29.3. Scenario 1: Using SSSD as Part of Migration
Important
This is a general migration procedure, but it may not work in every environment.
It is strongly recommended that you set up a test LDAP environment and test the migration process before attempting to migrate the real LDAP environment.
- Set up SSSD. Using SSSD allows the required Kerberos keys and server certificates to be delivered to the clients.
- Install SSSD on every client machine:
# yum install sssd
- Configure an LDAP identity provider in SSSD to use the existing Directory Server for all functions (authentication, identity lookups, access, and password changes). This ensures every client works properly with the existing directory service.
- Install Identity Management, including any custom LDAP directory schema[11], on a different machine from the existing LDAP directory.
- Enable the IdM server to allow migration:
# ipa config-mod --enable-migration=TRUE
- Disable the compat plug-in.
# ipa-compat-manage disable
- Restart the IdM Directory Server instance.
# service dirsrv restart
- Run the IdM migration script,
ipa migrate-ds
. At its most basic, this requires only the LDAP URL of the LDAP directory instance to migrate:# ipa migrate-ds ldap://ldap.example.com:389
Simply passing the LDAP URL migrates all of the directory data using common default settings. The user and group data can be selectively migrated by specifying other options, as covered in Section 29.2, “Examples for Using migrate-ds”.Once the information is exported, the script adds all required IdM object classes and attributes and converts DNs in attributes to match the IdM directory tree. - Re-enable the compat plug-in.
# ipa-compat-manage enable
- Restart the IdM Directory Server instance.
# service dirsrv restart
- Move clients that have SSSD installed from the LDAP backend to the Identity Management backend and enroll them as client with IdM. This downloads the required keys and certificates.On Red Hat Enterprise Linux clients, this can be done using the
ipa-client-install
command. For example:# ipa-client-install --enable-dns-updates
- Have users log into a machine with SSSD and Identity Management backend. This generates the required Kerberos keys for the user.To monitor the user migration process, query the existing LDAP directory to see which user accounts have a password but do not yet have a Kerberos principal key.
$ ldapsearch -LL -x -D 'cn=Directory Manager' -w secret -b 'ou=people,dc=example,dc=com' '(&(!(krbprincipalkey=*))(userpassword=*))' uid
Note
Include the quotes around the filter so that it is not interpreted by the shell. - Once users have been migrated over, configure non-SSSD clients to use the IdM domain, as required.
- When the migration of all clients and users is complete, decommission the LDAP directory.