#9177 SSHA passwords hashes not worked after import user in migration mode
Closed: fixed by seek5cee. Opened by seek5cee.

Request for enhancement

As , I want so that .
I'm admin of freeipa instanse.
Old freeipa server has been lost, but backups (from ipa-backup cli) exists.
I want import from REALM-userRoot.ldif file, accounts, groups and passwords.

Issue

[description of the issue]

My userRoot.ldif has password hashes in SSHA
From userRoot.ldif i've created csv file with needed fields for create new users with command like this:

Input file format "shindy.a|1619601813|1619601813|Ana|SHindy|AV|Ana SHindy|Ana SHidy|Ana SHindya|/home/shindy.a|+12345678901|{SSHA}ajTQcBdxcyUFQWUgQV/7G+qpvGYjpy5bhxt2NA==|mail,non_bel|В данный момент работает."

while IFS='|' read -r name uid gid givenname sn initials displayname cn gecos description homedirectory mobile passwd user_groups description
do
ipa user-add "$name" \
--first="$givenname" \
--last="$sn" \
--initials="$initials" \
--displayname="$displayname" \
--cn="$cn" \
--gecos="$gecos" \
--uid="$uid" \
--gidnumber="$gid" \
--addattr=description="$description" \
--setattr userPassword="$passwd";

User created with success, I see the same password hash via:

ldapsearch -LLL -D "cn=Directory Manager" -W -b "uid=shindy.a,cn=users,cn=accounts,dc=domain,dc=com" | grep userPassword

but user can't login via web, that say "...password incorrect"

Steps to Reproduce

  1. switch freeipa to migration mode
  2. create user with {SSHA}..hash with command ipa user-add ...
  3. login to web interface

Actual behavior

(what happens)
password incorrect, user can't login on freeipa web interface after user migration

Expected behavior

(what do you expect to happen)
user should login via freeipa web interface

Version/Release/Distribution

$ rpm -q freeipa-server freeipa-client ipa-server ipa-client 389-ds-base pki-ca krb5-server
пакет freeipa-server не установлен
пакет freeipa-client не установлен
ipa-server-4.6.8-5.el7.centos.10.x86_64
ipa-client-4.6.8-5.el7.centos.10.x86_64
389-ds-base-1.3.10.2-15.el7_9.x86_64
pki-ca-10.5.18-19.el7_9.noarch
krb5-server-1.15.1-51.el7_9.x86_64

cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)

Additional info:

Any additional information, configuration, data or log snippets that is needed for reproduction or investigation of the issue.

Log file locations: https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Linux_Domain_Identity_Authentication_and_Policy_Guide/config-files-logs.html
Troubleshooting guide: https://www.freeipa.org/page/Troubleshooting


Did you go to https://yourserver/ipa/migration/ to migrate the password first?

Yes, it's works.
But is there a simpler way that does not require additional actions from users? This is a scientific enterprise, there are many people of respectable age, for example, 93 years old

Migration consists of two steps:
1. Migrating the raw entries into IPA, including the LDAP password hash
2. Authenticating with that password which will generate Kerberos keys

For step 2 there are two ways to generate the Kerberos keys:
1. Using the migration web page
2. Log in to an IPA enrolled system using a password

It is a one-time step for each user. There is no way around it.

Thank you Rob, for detailed explanation!

I will try integrate IPA with Zimbra by kerberos, and i think Zimbra web interface will do this task (generate Kerberos keys) instead of /ipa/migration/ link.
Right?

Any LDAP bind with the password while the server is in migration mode will generate the Kerberos keys.

Cool, thanks you!

Metadata Update from @seek5cee:
- Issue close_status updated to: fixed
- Issue status updated to: Closed (was: Open)

Metadata