Centos7安装LDAP
LDAP:Lightweight Directory Access Protocol 轻型目录访问协议
LDAP安装与使用
安装与配置LDAP
- 安装OpenLDAP
yum install -y openldap.x86_64 openldap-clients.x86_64 openldap-servers.x86_64 openldap-devel.x86_64 migrationtools.noarch compat-openldap.x86_64
- 配置LDAP Server
vim /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{2\}hdb.ldif
# 修改第8、9行,添加第10行
olcSuffix: dc=bloodzer0,dc=com
olcRootDN: cn=Manager,dc=bloodzer0,dc=com
olcRootPW: bloodzer0
- 配置Monitoring Database
vim /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{1\}monitor.ldif
# 修改第7行
olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=extern
al,cn=auth" read by dn.base="cn=Manager,dc=bloodzer0,dc=com" read by * none
- 配置LDAP数据库
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown -R ldap.ldap /var/lib/ldap/
- 测试并启动服务
slaptest -u
- 启动服务
# 启动之前记得关闭selinux
systemctl enable slapd.service
systemctl start slapd.service
- 导入schemas
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/cosine.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/nis.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/collective.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/corba.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/core.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/duaconf.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/dyngroup.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/inetorgperson.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/java.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/misc.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/openldap.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/pmi.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/ppolicy.ldif
- 配置basedomain文件
vim /usr/share/migrationtools/migrate_common.ph
# 修改第71、74、90行
$DEFAULT_MAIL_DOMAIN = "bloodzer0.com";
$DEFAULT_BASE = "dc=bloodzer0,dc=com";
$EXTENDED_SCHEMA = 1;
/usr/share/migrationtools/migrate_base.pl > /etc/openldap/basedomain.ldif
# 导入文件
ldapadd -x -D cn=Manager,dc=bloodzer0,dc=com -W -f /etc/openldap/basedomain.ldif
# 输入之前配置olcRootPW密码
安装phpldapadmin
- 安装phpldapadmin
yum install epel-release -y
yum install phpldapadmin.noarch -y
systemctl enable httpd.service
systemctl start httpd.service
- 修改配置
# 修改httpd配置
vim /etc/httpd/conf.d/phpldapadmin.conf
# 添加Require all granted
# 重启服务http服务
# 访问:http://10.10.10.5/phpldapadmin/cmd.php
# 此时是不能登录的
# 修改phpldapadmin配置
vim /etc/phpldapadmin/config.php
# 注释398,取消注释397
# 登录
# 用户名:cn=Manager,dc=bloodzer0,dc=com 密码:你设置的密码
踩坑
- LDAP+phpldapadmin 是很麻烦的方式,推荐使用freeipa,下一篇文章将讲freeipa安装与使用。