Centos 安装配置LDAP
在安装之前不知道为什么要使用LDAP,因为认证可以使用mysql
去保存数据关系就可以啦,后来知道因为ldap
协议在开源和不开源的软件里面都会实现ldap-client
来对接,这样一套用户系统就可以在多个应该系统中使用
安装OpenLDAP
- 使用YUM 安装OpenLDAP
yum install -y openldap openldap-servers openldap-clients
不建议编译源码包,有依赖比较麻烦
- 拷贝openldap配置文件
cp /usr/share/openldap-servers/slapd.conf.obsolete /etc/openldap/slapd.conf
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
mv /etc/openldap/slapd.d{,.bak}
- 设置目录树的后缀
找到语句:
suffix "dc=my-domain,dc=com"
将其改为:
suffix "dc=example,dc=com"
- 设置LDAP管理员的DN
找到语句:
rootdn "cn=Manager,dc=my-domain,dc=com"
将其改为:
rootdn "cn=Manager,dc=example,dc=com"
- 设置LDAP管理员的口令
生成rootpw密码:
slappasswd
找到语句:
rootpw secret
将其改为:
rootpw {SSHA}NXV9Fl28qCHMmA6P sjhVX0uejTKE6OYr
- 修改ldap相关文件权限
chown ldap.ldap /etc/openldap/*
chown ldap.ldap /var/lib/ldap/*
mkdir /etc/openldap/cacerts
# 创建完目录之后重启服务器
chkconfig --level 35 slapd on
service slapd start
初始化数据
创建base.ldif
文件,再将数据导入到ldap
数据库中ldapadd -x -W -D "cn=Manager,dc=xxx,dc=com" -f base.ldif
dn: dc=xxx,dc=com
objectClass: dcObject
objectClass: organization
dc: zuimeiqidai
o: zuimeiqidai
dn: ou=people,dc=xxx,dc=com
objectClass: organizationalUnit
ou: people
dn: cn=Manager,dc=xxx,dc=com
objectClass: organizationalRole
cn: Manager
dn: ou=groups,dc=xxx,dc=com
objectClass: organizationalUnit
ou: groups