請教各位先進一個有關 userPassword 的問題
這是小弟的 ldif
dn: cn=test5,ou=employee,dc=ldap,dc=bojack,dc=com,dc=tw
uid: test5
cn: test5
objectClass: account
objectClass: posixAccount
userPassword: password
loginShell: /bin/bash
uidNumber: 2005
gidNumber: 2005
homeDirectory: /home/test5
gecos: Bojack Test 5
當我今天加入到我的 LDAP 後
# ldapadd -x -D "cn=root,dc=ldap,dc=bojack,dc=com,dc=tw" -W -f user.ldif
我再去 slapcat 結果會發現下面的結果
dn: cn=test5,ou=employee,dc=ldap,dc=bojack,dc=com,dc=tw
uid: test5
cn: test5
objectClass: account
objectClass: posixAccount
userPassword:: cGFzc3dvcmQ=
loginShell: /bin/bash
uidNumber: 2005
gidNumber: 2005
homeDirectory: /home/test5
gecos: Bojack Test 5
structuralObjectClass: account
entryUUID: bb94a626-cfc7-102d-80f9-f78d07cf55e8
creatorsName: cn=root,dc=ldap,dc=bojack,dc=com,dc=tw
createTimestamp: 20090508025737Z
entryCSN: 20090508025737Z#000000#00#000000
modifiersName: cn=root,dc=ldap,dc=bojack,dc=com,dc=tw
modifyTimestamp: 20090508025737Z
找了
一篇文章發現 userpassword 是用 base64 編碼顯示
若我用mmencode去處理 "cGFzc3dvcmQ=" 則會帶回我原本輸入的密碼,用 php 去抓 userPassword 也是會抓回原來的明碼密碼
我希望能像各位學長一樣,在輸入 LDAP 時能以 MD5 / SSHA / CRYPT 方式加密,不要讓我去抓回來是原本的明碼
我在 slapd.conf 已經有加入 password-hash {CRYPT}/{MD5}/{SSHA} 這3種
但發現密碼還是沒有經過加密再存入 LDAP 中,不知道有何方式可以解決呢?
謝謝各位學長