Build OpenLDAP pw-argon2 module for Argon2 key derivation function#117
Build OpenLDAP pw-argon2 module for Argon2 key derivation function#117umagmrit merged 23 commits intoZimbra:ZBUG-3120from
Conversation
…function. See https://en.wikipedia.org/wiki/Argon2 for more information, and contrib/slapd-modules/passwd/argon2/README for OpenLDAP specific notes. Requires OpenLDAP >= 2.4.50 and libsodium >= 1.0.9. olcPasswordHash can be set to {ARGON2} (from current {SSHA512}) to use argon2 password hashes by default.
|
OpenLDAP 2.4.50 is not safe to use with replication, update must be to 2.4.56 or later. See my pull request for updating to 2.4.56. |
|
I was simply updating the multival patch. I assume the Zimbra developers can maintain the rest of the system, which is what I was told when I quit 4 years ago. |
|
For clarity, this pull request is a complete upgrade to OpenLDAP to 2.4.56, with Argon2 support added (which requires newer libsodium as well). |
|
You may want to change the default password hash in the configs to argon2 as well, so as passwords change they automatically make use of it. The SSHA2 pw module will continue to need to be loaded, but doesn't need to be the default. |
Update for OpenLDAP 2.4.56
…ackages into Zimbra-feature/openldap-2.4.56 Conflicts: thirdparty/openldap/patches/ITS7683.patch thirdparty/openldap/patches/multival.patch thirdparty/openldap/zimbra-openldap/rpm/SPECS/openldap.spec
|
Prashantsurana seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account. You have signed the CLA already but the status is still pending? Let us recheck it. |
24ef9c0 to
b922dcd
Compare
c9904b1 to
4172dae
Compare
…dule. debian version not tested.
|
PR has been updated for OpenLDAP 2.5.13, where pw-argon2 is now a standard release module, no longer a contrib module. Only needs --with-argon2 (and more recent libsodium). |
|
@ghen2 if we add pw-argon2 module, what will be the default password hash ? We don't want to change the current password hash. Could you please also share impacted areas and testing scope of this new module ? |
|
This PR only builds the argon2 module, it is not loaded or used by default. SSHA512 is still the default password hash. OpenLDAP See the |
|
It would be necessary to ensure that the SSHA512 module continues to be loaded in slapd so the existing hashes continue to function, but I agree switching to ARGON2 is critical. I would note that the argon2 library (vs libsodium) offers more configuration options for the hashes, which may be desirable, but adds another library to the zimbra buildout. |
) * Update libsodium to 1.0.18 for argon2 support. * Update OpenLDAP to 2.4.50 (for new pw-argon2 password module). * Build OpenLDAP pw-argon2 module to support the Argon2 key derivation function. See https://en.wikipedia.org/wiki/Argon2 for more information, and contrib/slapd-modules/passwd/argon2/README for OpenLDAP specific notes. Requires OpenLDAP >= 2.4.50 and libsodium >= 1.0.9. olcPasswordHash can be set to {ARGON2} (from current {SSHA512}) to use argon2 password hashes by default. * Update for OpenLDAP 2.4.56 * This bit was already there. * 2.4.56 * Fix compilation error 2.4.56 * Fix compilation * Upgrade openldap-2.4.56. * Openldap upgraded to 2.4.59 * Require libsodium >= 1.0.18 * The argon2 module is now part of OpenLDAP 2.5, no longer a contrib module. * The argon2 module is now part of OpenLDAP 2.5, no longer a contrib module. debian version not tested. Co-authored-by: Quanah Gibson-Mount <quanah@symas.com> Co-authored-by: Prashantsurana <prashant.surana@synacor.com> Co-authored-by: Prashant Surana <p.k.surana@gmail.com> Co-authored-by: Umashankar Avagadda <umagmrit@gmail.com>
Update libsodium to 1.0.18 and OpenLDAP to 2.4.50 to include argon2 support.
See https://en.wikipedia.org/wiki/Argon2 for more information, and contrib/slapd-modules/passwd/argon2/README for OpenLDAP specific notes.
olcPasswordHash can be set to {ARGON2} (from current {SSHA512}) to use argon2 password hashes by default.
Tested on Centos 7. Debian build scripts adjusted but not validated.