如何配置LDAP服务器?LDAP服务器配置详细步骤
- 虚拟主机
- 2026-02-12
- 2313
配置LDAP服务器(以OpenLDAP为例)的详细步骤如下:
安装OpenLDAP
Ubuntu/Debian
sudo apt update sudo apt install slapd ldap-utils
CentOS/RHEL
sudo yum install openldap-servers openldap-clients
初始化配置
设置管理员密码
sudo dpkg-reconfigure slapd # Debian/Ubuntu
或手动配置:
sudo slappasswd # 生成加密密码(复制输出的SSHA哈希)
编辑基础配置(LDIF文件)
创建 init.ldif:
dn: olcDatabase={1}mdb,cn=config changetype: modify replace: olcSuffix olcSuffix: dc=example,dc=com replace: olcRootDN olcRootDN: cn=admin,dc=example,dc=com replace: olcRootPW olcRootPW: {SSHA}xxxxxxxx # 替换为生成的密码哈希
应用配置:

创建基础目录结构
创建 base.ldif:

导入结构:
sudo ldapadd -x -D "cn=admin,dc=example,dc=com" -W -f base.ldif
添加用户/组
添加用户(user.ldif)
dn: uid=john,ou=people,dc=example,dc=com objectClass: inetOrgPerson objectClass: posixAccount uid: john cn: John Doe sn: Doe givenName: John userPassword: {SSHA}xxxxxxx # 用slappasswd生成 uidNumber: 1000 gidNumber: 1000 homeDirectory: /home/john
添加组(group.ldif)
dn: cn=developers,ou=groups,dc=example,dc=com objectClass: posixGroup cn: developers gidNumber: 1000 memberUid: john
导入数据:
sudo ldapadd -x -D "cn=admin,dc=example,dc=com" -W -f user.ldif sudo ldapadd -x -D "cn=admin,dc=example,dc=com" -W -f group.ldif
配置TLS加密(可选)
生成自签名证书
sudo openssl req -x509 -newkey rsa:4096 -keyout /etc/ldap/ldap.key -out /etc/ldap/ldap.crt -days 365 -nodes -subj "/CN=ldap.example.com"
设置权限
sudo chown openldap:openldap /etc/ldap/ldap.* sudo chmod 400 /etc/ldap/ldap.key
配置LDAP使用TLS
创建 tls.ldif:

dn: cn=config changetype: modify add: olcTLSCertificateFile olcTLSCertificateFile: /etc/ldap/ldap.crt - add: olcTLSCertificateKeyFile olcTLSCertificateKeyFile: /etc/ldap/ldap.key
应用配置:
sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f tls.ldif
防火墙与启动服务
sudo ufw allow ldap # 默认端口389 sudo ufw allow ldaps # 加密端口636 sudo systemctl restart slapd sudo systemctl enable slapd
验证操作
搜索所有条目
ldapsearch -x -LLL -H ldap:/// -b dc=example,dc=com "(objectClass=*)"
测试用户登录
ldapwhoami -x -D "uid=john,ou=people,dc=example,dc=com" -W
常用管理命令
- 添加条目:ldapadd -x -D "cn=admin,dc=example,dc=com" -W -f file.ldif
- 修改条目:ldapmodify -x -D "cn=admin,dc=example,dc=com" -W -f change.ldif
- 删除条目:ldapdelete -x -D "cn=admin,dc=example,dc=com" -W "uid=john,ou=people,dc=example,dc=com"
客户端配置
Linux客户端(SSSD或libnss-ldap)
sudo apt install libnss-ldap libpam-ldap ldap-utils
配置 /etc/ldap/ldap.conf:
BASE dc=example,dc=com URI ldap://ldap.example.com TLS_CACERT /etc/ssl/certs/ca-certificates.crt
故障排查
- 检查日志:journalctl -u slapd
- 测试配置:slaptest -u
- 强制重建索引:sudo slapindex
注意:生产环境建议使用专业CA证书,并配置ACL控制访问权限,详细文档参考:OpenLDAP官方文档