openldap 是否支持 pbkdf2 哈希算法?

openldap 是否支持 pbkdf2 哈希算法?

由于 pbkdf2(基于密码的密钥派生函数 2)是一种更安全的哈希函数,所以我想知道当前 openldap 实现是否支持 pbkdf2(例如 pbkdf2_sha256)?

我在 Google 上找到了一些关于 openldap 中 pbkdf2 支持的信息,但我不确定它适用于哪个 openldap 版本,或者我没有以正确的方式执行:

我在 ubuntu 12.04 上搭建了一个版本 2.4.28 的 openldap 服务器,使用 python lib 生成一个 PBKDF2-SHA256 哈希密码,然后我把这个 PBKDF2-SHA256 密码放入一个新的 ldap 用户的 userPassword 字段中,如下所示:

userPassword: '{PBKDF2-SHA256}10000$LBwTpUPGqxdH$8pDqhAruY94IhhuCZLost471pGImy//wH0pS25LO/YI='

这不起作用。ldap 日志中没有报告错误,但仍然无法使用原始纯文本密码登录。

如果有人能给我一些评论或指导我将不胜感激!!

答案1

目前,OpenLDAP PBKDF2 模块仅支持 PBKDF2-SHA1。模式名称为 {PBKDF2}。可能它与 Python Passlib 兼容。我有 PBKDF2-SHA256 和 PBKDF2-SHA512 的路线图。但尚未实施。

编辑:现在支持 PBKDF2-SHA256 和 PBKDF2-SHA512。https://github.com/hamano/openldap-pbkdf2

答案2

为了确保万无一失,请检查以下内容:

  • 您是否在您的中包含了指令moduleload pw-pbkdf2.so和?password-hash {PBKDF2}slapd.conf

  • 根据您的日志文件,模块是否正确加载?

  • 您可以通过输入来生成 pbkdf2-hashed 密码吗slappasswd

  • 您的日志文件中是否有关于失败的身份验证尝试的任何条目?

相关内容