Bug 1576485 - Upgrade script doesn't enable PBKDF password storage plug-in
Summary: Upgrade script doesn't enable PBKDF password storage plug-in
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: 389-ds-base
Version: 7.0
Hardware: All
OS: Linux
high
high
Target Milestone: pre-dev-freeze
: 7.6
Assignee: mreynolds
QA Contact: RHDS QE
Marc Muehlfeld
URL:
Whiteboard:
Keywords: ZStream
Depends On:
Blocks: 1579700
TreeView+ depends on / blocked
 
Reported: 2018-05-09 15:09 UTC by Marc Muehlfeld
Modified: 2018-10-30 10:14 UTC (History)
4 users (show)

(edit)
The "PBKDF2_SHA256" password storage scheme can now be used in Directory Server

If a Red Hat Directory Server instance was installed using version 10.1.0 or earlier and subsequently updated, the update script did not enable the Password-Based Key Derivation Function version 2 (PBKDF2) plug-in. As a consequence, the "PBKDF2_SHA256" password storage scheme could not be used in the "nsslapd-rootpwstoragescheme" and "passwordStorageScheme" parameter. This update automatically enables the plug-in. As a result, administrators can now use the "PBKDF2_SHA256" password storage scheme.
Clone Of:
: 1579700 (view as bug list)
(edit)
Last Closed: 2018-10-30 10:13:48 UTC


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2018:3127 None None None 2018-10-30 10:14 UTC

Description Marc Muehlfeld 2018-05-09 15:09:46 UTC
Description of problem:
If RHDS was installed using version 10.1.0 or earlier and you later upgrade to RHDS 10.1.1 or 10.2, the upgrade script does not enable the PBKDF plug-in. Also manually running "setup-ds.pl --update" (online and offline) mode doesn't fix the problem. 



Version-Release number of selected component (if applicable):
389-ds-base-1.3.7.5-19.el7_5.x86_64



Steps to Reproduce:
1. Install RHDS 10.1.0 (or earlier)
2. Use yum to update to the latest version
3. Try using the storage scheme.



Actual results:
cn=PBKDF2_SHA256,cn=Password Storage Schemes,cn=plugins,cn=config doesn't exist and you also can't use the password storage scheme:

# ldapmodify -D "cn=Directory Manager" -w password -x
dn: cn=config
changetype: modify
replace: passwordStorageScheme
passwordStorageScheme: PBKDF2_SHA256

modifying entry "cn=config"
ldap_modify: Operations error (1)
	additional info: passwordStorageScheme: invalid scheme - PBKDF2_SHA256. Valid schemes are: CLEAR, CRYPT, MD5, SHA, SHA256, SHA384, SHA512, SMD5, SSHA, SSHA256, SSHA384, SSHA512



Expected results:
cn=PBKDF2_SHA256,cn=Password Storage Schemes,cn=plugins,cn=config should exist and users should be able to use the password storage scheme.



Additional info:
I tried this on a machine which was initially installed with 1.3.5, then upgraded to several 1.3.6 version, and recently to 1.3.7:
Jun 14 09:50:11 Installed: 389-ds-base-1.3.5.10-21.el7_3.x86_64
Aug 02 08:49:52 Updated: 389-ds-base-1.3.6.1-16.el7.x86_64
Oct 16 18:02:08 Updated: 389-ds-base-1.3.6.1-19.el7_4.x86_64
Nov 10 14:28:09 Updated: 389-ds-base-1.3.6.1-21.el7_4.x86_64
Dec 04 13:59:03 Updated: 389-ds-base-1.3.6.1-24.el7_4.x86_64
Feb 01 13:13:14 Updated: 389-ds-base-1.3.6.1-26.el7_4.x86_64
Apr 10 10:42:54 Updated: 389-ds-base-1.3.7.5-18.el7.x86_64
Apr 10 11:00:44 Updated: 389-ds-base-1.3.7.5-19.el7_5.x86_64
None of these updates enabled the plug-in.

Comment 2 mreynolds 2018-05-09 18:31:09 UTC
We are missing an upgrade script for this new storage scheme.

Comment 3 mreynolds 2018-05-09 18:32:31 UTC
Upstream ticket:
https://pagure.io/389-ds-base/issue/49665

Comment 4 mreynolds 2018-05-10 12:06:25 UTC
Fixed upstream

Comment 7 Viktor Ashirov 2018-06-13 22:07:35 UTC
Build tested: 389-ds-base-1.3.8.2-1.el7.x86_64

RHEL 7.3.z:
# rpm -q 389-ds-base
389-ds-base-1.3.5.10-21.el7_3.x86_64

# ldapsearch -LLL -D "cn=Directory Manager" -w Secret123 -b 'cn=Password Storage Schemes,cn=plugins,cn=config' nsslapd-pluginDescription | grep nsslapd-pluginDescription
nsslapd-pluginDescription: AES storage scheme plugin
nsslapd-pluginDescription: No encryption (CLEAR)
nsslapd-pluginDescription: Unix crypt algorithm (CRYPT)
nsslapd-pluginDescription: DES storage scheme plugin
nsslapd-pluginDescription: MD5 hash algorithm (MD5)
nsslapd-pluginDescription: Netscape MD5 (NS-MTA-MD5)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA256)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA384)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA512)
nsslapd-pluginDescription: Salted MD5 hash algorithm (SMD5)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA256)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA384)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA512)


Update to RHEL 7.4:
# rpm -q 389-ds-base
389-ds-base-1.3.6.1-16.el7.x86_64

# ldapsearch -LLL -D "cn=Directory Manager" -w Secret123 -b 'cn=Password Storage Schemes,cn=plugins,cn=config' nsslapd-pluginDescription | grep nsslapd-pluginDescription
nsslapd-pluginDescription: AES storage scheme plugin
nsslapd-pluginDescription: No encryption (CLEAR)
nsslapd-pluginDescription: Unix crypt algorithm (CRYPT)
nsslapd-pluginDescription: DES storage scheme plugin
nsslapd-pluginDescription: MD5 hash algorithm (MD5)
nsslapd-pluginDescription: Netscape MD5 (NS-MTA-MD5)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA256)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA384)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA512)
nsslapd-pluginDescription: Salted MD5 hash algorithm (SMD5)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA256)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA384)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA512)


Update to RHEL 7.5:
# rpm -q 389-ds-base
389-ds-base-1.3.7.5-18.el7.x86_64

# ldapsearch -LLL -D "cn=Directory Manager" -w Secret123 -b 'cn=Password Storage Schemes,cn=plugins,cn=config' nsslapd-pluginDescription | grep nsslapd-pluginDescription
nsslapd-pluginDescription: AES storage scheme plugin
nsslapd-pluginDescription: No encryption (CLEAR)
nsslapd-pluginDescription: Unix crypt algorithm (CRYPT)
nsslapd-pluginDescription: DES storage scheme plugin
nsslapd-pluginDescription: MD5 hash algorithm (MD5)
nsslapd-pluginDescription: Netscape MD5 (NS-MTA-MD5)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA256)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA384)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA512)
nsslapd-pluginDescription: Salted MD5 hash algorithm (SMD5)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA256)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA384)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA512)


Update to 7.6:
# rpm -q 389-ds-base 
389-ds-base-1.3.8.2-1.el7.x86_64

# ldapsearch -LLL -D "cn=Directory Manager" -w Secret123 -b 'cn=Password Storage Schemes,cn=plugins,cn=config' nsslapd-pluginDescription | grep nsslapd-pluginDescription
nsslapd-pluginDescription: AES storage scheme plugin
nsslapd-pluginDescription: No encryption (CLEAR)
nsslapd-pluginDescription: Unix crypt algorithm (CRYPT)
nsslapd-pluginDescription: Unix crypt algorithm (CRYPT-MD5)
nsslapd-pluginDescription: Unix crypt algorithm (CRYPT-SHA256)
nsslapd-pluginDescription: Unix crypt algorithm (CRYPT-SHA512)
nsslapd-pluginDescription: DES storage scheme plugin
nsslapd-pluginDescription: MD5 hash algorithm (MD5)
nsslapd-pluginDescription: Netscape MD5 (NS-MTA-MD5)
nsslapd-pluginDescription: Salted PBKDF2 SHA256 hash algorithm (PBKDF2_SHA256)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA256)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA384)
nsslapd-pluginDescription: Secure Hashing Algorithm (SHA512)
nsslapd-pluginDescription: Salted MD5 hash algorithm (SMD5)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA256)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA384)
nsslapd-pluginDescription: Salted Secure Hashing Algorithm (SSHA512)


CRYPT-* and PBKDF2 plugins have appeared after upgrade.

Marking as VERIFIED.

Comment 9 errata-xmlrpc 2018-10-30 10:13:48 UTC
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://access.redhat.com/errata/RHSA-2018:3127


Note You need to log in before you can comment on or make changes to this bug.