由于pbkdf2(基于密码的密钥推导函数2)是一个更安全的哈希函数,所以我不知道当前的openldap实现是否支持pbkdf2(例如pbkdf2_sha256)?
我已经find了一些有关谷歌关于pbkdf2在openldap支持的信息,但我不确定它适用于哪个openldap版本,或者我不这样做是正确的方式:
我在Ubuntu 12.04上构build了一个版本为2.4.28的openldap服务器,并使用python lib生成一个PBKDF2-SHA256哈希密码。 然后我把这个PBKDF2-SHA256密码放到一个新的ldap用户的userPassword字段中,如下所示:
userPassword: '{PBKDF2-SHA256}10000$LBwTpUPGqxdH$8pDqhAruY94IhhuCZLost471pGImy//wH0pS25LO/YI='
这没有奏效。 在ldap日志中没有报告错误,但仍然无法使用原始的纯文本密码login。
如果有人能给我一些意见或方向,我将不胜感激!
目前,OpenLDAP PBKDF2模块仅支持PBKDF2-SHA1。 模式名称是{PBKDF2}。 可能它与Python Passlib有兼容性。 我有PBKDF2-SHA256和PBKDF2-SHA512的路线图。 但尚未实施。
编辑:现在支持PBKDF2-SHA256和PBKDF2-SHA512。 https://github.com/hamano/openldap-pbkdf2
只是为了确保,请检查以下内容:
你是否在你的slapd.conf包含了指令moduleload pw-pbkdf2.so和password-hash {PBKDF2} ?
根据你的日志文件模块加载正确吗?
你可以通过inputslappasswd生成pbkdf2哈希密码
在日志文件中是否有任何有关Faildauthentication尝试的条目?