CentOS Ldap 查询指南

Ldap 简介
Ldap(Lightweight Directory Access Protocol)是一种轻量级的目录访问协议,主要用于存储和检索组织信息,它广泛应用于企业级应用中,如用户认证、邮件地址簿等,CentOS 系统中,Ldap 可以通过 openldap 软件包进行安装和配置。
CentOS 安装 Ldap
安装 openldap
sudo yum install openldap openldap-servers openldap-clients
安装其他依赖
sudo yum install authconfig-gtk
配置 openldap
- 创建 slapd 配置文件
sudo cp /etc/openldap/slapd.conf /etc/openldap/slapd.conf.bak sudo nano /etc/openldap/slapd.conf
- 修改 slapd 配置文件,设置以下参数:
pidfile /var/run/openldap/slapd.pid argsfile /var/run/openldap/slapd.args
- 重新加载 slapd 服务
sudo systemctl restart slapd
创建 Ldap 目录

创建 Ldap 目录结构
sudo mkdir -p /var/lib/ldap sudo chown -R ldap:ldap /var/lib/ldap
创建 Ldap 数据库
sudo slapadd -F /var/lib/ldap -h ldap:/// -f /etc/openldap/slapd.conf -l /var/lib/ldap/ slapd-database.ldif
修改 slapd 配置文件,设置数据库路径
database bdb suffix "dc=example,dc=com" rootdn "cn=admin,dc=example,dc=com" rootpw secret
查询 Ldap 目录
使用 ldapsearch 命令查询 Ldap 目录
sudo ldapsearch -x -LLL -H ldap:/// -b "dc=example,dc=com" -s base "cn=admin,dc=example,dc=com"
查询示例:
dn: cn=admin,dc=example,dc=com cn: admin sn: admin objectClass: inetOrgPerson objectClass: organizationalPerson objectClass: person
FAQs

问题:如何修改 Ldap 目录中的用户密码?
解答: 使用 ldapmodify 命令修改 Ldap 目录中的用户密码,以下是一个示例:
sudo ldapmodify -x -D "cn=admin,dc=example,dc=com" -W -f modify.ldif
modify.ldif 文件内容如下:
dn: uid=user1,dc=example,dc=com changetype: modify replace: userPassword userPassword: newpassword
问题:如何添加一个新的用户到 Ldap 目录?
解答: 使用 ldapadd 命令添加一个新的用户到 Ldap 目录,以下是一个示例:
sudo ldapadd -x -D "cn=admin,dc=example,dc=com" -W -f add.ldif
add.ldif 文件内容如下:
dn: uid=user2,dc=example,dc=com objectClass: inetOrgPerson objectClass: organizationalPerson objectClass: person cn: user2 sn: user2 uid: user2 userPassword: user2password

