OpenLDAP认证

| 有什么方法可以定义自己的加密/解密,而不是使用纯文本密码存储?您是否可以拥有自己的算法并将其作为流程的一部分单独运行?我是新手,在线文档尽管详细,但没有指定执行此操作的任何具体方法。这特定于OpenLDAP和用于身份验证的当前方法。     
已邀请:
为了能够让服务器默认为您哈希密码,您必须添加密码策略覆盖和指令。 如果使用在线cn = config方法,则将覆盖子条目添加到olcDatabase对象。
dn: olcOverlay={0}ppolicy,olcDatabase={2}hdb,cn=config
objectClass: olcPPolicyConfig
olcOverlay: {0}ppolicy
olcPPolicyHashCleartext: TRUE
Slapd.conf方法:
database bdb
suffix \"dc=example,dc=com\"
...
# invokes password policies for this DIT only
overlay ppolicy
ppolicy_hash_cleartext
然后,当您以纯文本格式添加具有userpassword属性的新用户时,它将存储散列的密码。我相信默认设置是盐腌sha1,它非常安全。您还应该研究限制对userpassword属性的访问。
olcAccess: to attrs=userPassword by self write by * auth
    
apache directory studio可以为您完成此任务 该ldap浏览器检测到用户密码OID,并提供用于哈希密码的接口。 如: userPassword :: e01ENX1Lc25MZmNBclBBQ0Q2M0NKamxTYll3PT0 = (它起作用,因为它是内置的) 阅读Openldap自述文件以获取更多信息: 此目录包含用于密码机制的本机slapd插件, 没有得到项目的积极支持。目前,这包括 Kerberos,Netscape MTA-MD5和RADIUS密码机制。阿帕奇 还包括APR1 MD5和BSD / Paul Henning Kamp MD5机制。 要使用Kerberos插件,请添加: moduleload pw-kerberos.so 到您的slapd配置文件。 亚达亚达亚达     
如果您使用密码进行身份验证,则永远不要以可逆加密方式存储密码! 您应该使用一种单向哈希函数存储密码:MD5,SHA1,SHA256。如果您绝对不需要以某种旧的特定格式存储它,则应始终对其加盐。盐腌SHA1是OpenLDAP的默认默认设置。 问题是,您需要使用LDAP扩展操作来更改密码,而不是常规的ldapmodify更新,才能使其正常工作。最好使用
ppolicy
这样实际执行密码设置。如果需要的话,您可能需要进行密码质量检查和老化。     

要回复问题请先登录注册