Ubuntu 安装openldap
安装参考http://www.unixmen.com/openldap-installation-configuration-ubuntu-12-1013-0413-10-debian-67-2/
1、# sudo apt-get install slapd ldap-utils
安装完查看端口以及 执行ldapsearch -x -LLL
wjp123
2、# chown -Rf openldap:openldap /etc/ldap/
修改用户属主 属组
sudo dpkg-reconfigure slapd
3、# cp /usr/share/slapd/slapd.conf /etc/ldap/slapd.conf
4、# touch /var/log/slapd.log
chown openldap.openldap /var/log/slapd.log
mkdir /var/log/slapd
chmod 755 /var/log/slapd/
chown openldap:openldap /var/log/slapd
root@cldap:~# cat << EOF | ldapadd -x -D cn=admin,dc=wjp,dc=com -W
> dn: ou=people, dc=wjp, dc=com
> ou: people
> objectClass: top
> objectClass: organizationalUnit
> EOF
ldapsearch -x -LLL 如果能正常查出数据则搭建ok。
如果有xx.ldif 文件可以导入:
ldapadd -x -W -D "cn=admin,dc=wjp,dc=com" -f people.ldif
测试slapd.conf
slaptest -f /etc/ldap/slapd.conf -F /etc/ldap/slapd.d/
如果测试失败表面slapd.conf 文件配置错误可以参考这个链接的配置:https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=243261
错误解决方法:
hosts 配置文件需要配置解析127.0.0.1 haha.wjp.com
hostname:
5、OpenLdap 索引
提高用户查询速度 减轻openldap 服务器的压力,提高性能。
5.1 查询索引: ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// -b cn=config '(olcDatabase={1}hdb)' olcDbIndex
查询到 数据库没建立索引“dn: olcDatabase={1}hdb,cn=config”
创建ldif 文件存放索引命令。copy如下内容
dn: olcDatabase={1}hdb,cn=config
changetype: modify
add: olcDbIndex
olcDbIndex: sn pres,eq,sub
dn: olcDatabase={1}hdb,cn=config
changetype: modify
add: olcDbIndex
olcDbIndex: cn pres,eq,sub
dn: olcDatabase={1}hdb,cn=config
changetype: modify
add: olcDbIndex
olcDbIndex: uid pres,eq,sub
angetype: modify
add: olcDbIndex
olcDbIndex: uidNumber pres,eq
dn: olcDatabase={1}hdb,cn=config
changetype: modify
add: olcDbIndex
olcDbIndex: gidNumber pres,eq
dn: olcDatabase={1}hdb,cn=config
changetype: modify
add: olcDbIndex
olcDbIndex: loginShell pres,eq
dn: olcDatabase={1}hdb,cn=config
changetype: modify
add: olcDbIndex
olcDbIndex: ou pres,eq,sub
dn: olcDatabase={1}hdb,cn=config
changetype: modify
add: olcDbIndex
olcDbIndex: givenName pres,eq,sub
dn: olcDatabase={1}hdb,cn=config
changetype: modify
add: olcDbIndex
olcDbIndex: memberUid pres,eq,sub
dn: olcDatabase={1}hdb,cn=config
changetype: modify
add: olcDbIndex
olcDbIndex: nisMapName pres,eq,sub
dn: olcDatabase={1}hdb,cn=config
changetype: modify
add: olcDbIndex
olcDbIndex: nisMapEntry pres,eq,sub
通过ldapmodify 添加索引条目
ldapmodify -Q -Y EXTERNAL -H ldapi:/// -f hdb-index.ldif
访问控制策略:
通过slpad.conf实现。
验证客户端
本实列ubuntu 做为服务器端,centos6.9 作为客户端。
centos: yum install nss-pam-ldapd pam_ldap -y
然后在setup 配置下ldap 就可以了
验证是否能获取到用户使用:getent passwd wangjianping
ubuntu: apt-get libpam-ldap libnss-ldap
sudo apt-get install libpam-ldap nscd
参考链接: http://wiki.ubuntu.org.cn/LDAPClientAuthentication#Installing_and_configuring_LDAP_authentication.EF.BC.88.E5.AE.89.E8.A3.85.E9.85.8D.E7.BD.AE_LDAP_.E8.AE.A4.E8.AF.81.EF.BC.89
重新安装LAM 管理客户端链接: http://blog.youkuaiyun.com/zfpnuc/article/details/4516327
$sudo apt-get install ldap-account-manager
OpenLdap 修改管理员密码
1、获取加密的方式
ldapsearch -LLL -Y EXTERNAL -H ldapi:/// -b cn=config olcRootDN=cn=admin,dc=ldapserver,dc=com dn olcRootDN olcRootPW
此命令可以查到RootDN olcRootPW 其中rootpw 的加密方式为SSHA
2、使用slappasswd 生成密码
slappasswd -h {SSHA}
3、使用ldapmodify 修改条目
ldapmodify -Y EXTERNAL -H ldapi:///
进入交互模式按照提示一步步来
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
dn: olcDatabase={1}hdb,cn=config
replace: olcRootPW
olcRootPW: {SSHA}HNBElaZ488HkGgPq7fn7imkX7g14fhLJ
modifying entry "olcDatabase={1}hdb,cn=config"
4、重启服务使修改生效
重启slapd
/etc/init.d/slapd restart
至此密码修改成功。
可以参考这个哦http://blog.youkuaiyun.com/developerinit/article/details/76141065
转载于:https://blog.51cto.com/crabfamily/1979556