LDAP 相关名词解释
LDAP:轻量目录访问协议,是一个为只读访问的非关系型数据库,呈树状结构组织数据。 默认监听端口:389 加密监听端口:636
关键字 | 说明 |
---|---|
dc | 将一级域名分成两个部分,如:abc.com就变成 dc=abc,dc=com |
ou | 组织单元,可以包含其他各种对象,最多有四级,可以为中文 |
cn | 用户名,可以为中文 |
dn | 别名,在一个目录树中 dn 是唯一的 |
图示: | |
安装 OpenLDAP
代码语言:javascript复制yum install openldap compat-openldap openldap-clients openldap-servers openldap-servers-sql openldap-devel
创建密码
输入两次密码,记录最后生成的加密后的密码值
配置 OpenLDAP 服务
- 修改 olcDatabase={2}hdb.ldif
- 修改 olcDatabase={1}monitor.ldif
- 配置 OpenLDAP 数据库
- 测试 OpenLDAP 配置,并启动服务
导入 schema
开启日志访问功能
默认 OpenLDAP 是没有开启日志功能的
代码语言:javascript复制yum install rsyslog -y
echo "local4.* /var/log/slapd.log" >> /etc/rsyslog.conf
systemctl restart rsyslog
代码语言:javascript复制vim log.ldif
dn: cn=config
changetype: modify
replace: olcLogLevel
olcLogLevel: stats
ldapmodify -Y EXTERNAL -H ldapi:/// -f log.ldif
安装 phpLDAPadmin 来管理 LDAP
安装
代码语言:javascript复制yum -y install httpd php php-ldap php-gd php-mbstring php-pear php-bcmath php-xml epel-release
yum -y install phpldapadmin
修改配置
代码语言:javascript复制# 取消397行注释
# 添加398行注释
vim /etc/phpldapadmin/config.php
代码语言:javascript复制# 添加一个可访问 phpLDAPadmin 服务的网段
vim /etc/httpd/conf.d/phpldapadmin.conf
启动服务
代码语言:javascript复制systemctl enable --now httpd
创建基本信息
代码语言:javascript复制vim base.ldif
dn: dc=xbd,dc=com # 根节点
dc: xbd
objectClass: top
objectClass: domain
dn: cn=admin,dc=xbd,dc=com # 根节点下的一个管理域
objectClass: organizationalRole
cn: admin
description: LDAP Manager
dn: ou=Jenkins,dc=xbd,dc=com # 组织单元
objectClass: organizationalUnit
ou: Jenkins
ldapadd -x -W -D "cn=admin,dc=xbd,dc=com" -f base.ldif
访问测试