Ubuntu 24.04 安装 LDAP 服务器完整教程
📋 目录
前言
LDAP (Lightweight Directory Access Protocol) 是一种用于访问和维护目录服务的协议。在 Ubuntu 24.04 上安装和配置 LDAP 服务器可以为企业级应用提供统一身份认证、联系人管理等服务。
本教程将详细介绍如何在 Ubuntu 24.04 上安装和配置 OpenLDAP 服务器。
系统准备
1. 系统更新
# 更新系统
sudo apt update
sudo apt upgrade -y
# 安装必要的工具
sudo apt install -y vim wget curl htop
2. 设置主机名和域名
# 设置主机名
sudo hostnamectl set-hostname ldap-server.yourdomain.com
# 设置主机名解析
echo "192.168.1.100 ldap-server.yourdomain.com ldap-server" | sudo tee -a /etc/hosts
3. 检查系统信息
# 查看 Ubuntu 版本
lsb_release -a
# 检查系统信息
uname -a
安装 OpenLDAP
1. 检查可用版本
# 检查 OpenLDAP 版本
apt-cache policy slapd
2. 安装 OpenLDAP 套件
# 安装 OpenLDAP 服务器和工具
sudo apt install -y slapd ldapscripts
# 安装额外的工具(可选)
sudo apt install -y ldap-utils ldapvi
3. 验证安装
# 检查 slapd 服务状态
sudo systemctl status slapd
# 查看安装的文件
ls -la /etc/ldap/
ls -la /var/lib/ldap/
配置 OpenLDAP
1. 重新配置 slapd
# 重新配置 slapd 设置
sudo dpkg-reconfigure slapd
在配置过程中,按照以下步骤:
- Omit OpenLDAP server configuration? → 选择 No
- DNS domain name → 输入您的域名(如:ldap.kifarunix.com)
- Organization name → 输入组织名称(如:Kifarunix Inc)
- Enter LDAP admin password → 输入管理员密码
- Remove database when slapd is purged? → 选择 No
- Remove old configuration files? → 选择 Yes
2. 查看数据库设置
# 查看 LDAP 数据库配置
sudo slapcat
3. 检查基础 DN
# 查看基础 DN
ldapsearch -H ldapi:/// -x -LLL -s base -b "" namingContexts
# 查看 RootDN
ldapsearch -H ldapi:/// -Y EXTERNAL -b "cn=config" "(olcRootDN=*)"
SSL/TLS 配置
1. 安装 SSL/TLS 证书
# 创建 SSL 证书目录
sudo mkdir -p /etc/ssl/openldap/{private,certs}
# 生成 CA 证书
sudo openssl genrsa -out /etc/ssl/openldap/private/cakey.pem 4096
sudo openssl req -new -x509 -days 365 -key /etc/ssl/openldap/private/cakey.pem \
-out /etc/ssl/openldap/certs/cacert.pem -subj "/C=US/ST=California/O=Your Organization/CN=CA"
2. 生成服务器证书
# 生成服务器私钥
sudo openssl genrsa -out /etc/ssl/openldap/private/ldapserver-key.pem 4096
# 生成证书签名请求
sudo openssl req -new -key /etc/ssl/openldap/private/ldapserver-key.pem \
-out /etc/ssl/openldap/certs/ldapserver-cert.csr -subj \
"/C=US/ST=California/O=Your Organization/CN=ldap-server"
# 签署服务器证书
sudo openssl ca -keyfile /etc/ssl/openldap/private/cakey.pem \
-cert /etc/ssl/openldap/certs/cacert.pem \
-in /etc/ssl/openldap/certs/ldapserver-cert.csr \
-out /etc/ssl/openldap/certs/ldapserver-cert.crt
3. 更新 OpenLDAP 配置
# 创建 LDIF 文件更新 TLS 配置
cat > /tmp/ldap-tls.ldif << EOF
dn: cn=config
changetype: modify
replace: olcTLSCertificateFile
olcTLSCertificateFile: /etc/ssl/openldap/certs/ldapserver-cert.crt
dn: cn=config
changetype: modify
replace: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile: /etc/ssl/openldap/private/ldapserver-key.pem
dn: cn=config
changetype: modify
replace: olcTLSCACertificateFile
olcTLSCACertificateFile: /etc/ssl/openldap/certs/cacert.pem
EOF
# 应用配置更改
sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f /tmp/ldap-tls.ldif
4. 启用 SSL/TLS 端口
# 重新启动 slapd 服务
sudo systemctl restart slapd
# 检查端口监听
sudo netstat -tlnp | grep -E "389|636"
用户管理
1. 创建用户账户
# 使用 ldapadd 添加用户
cat > /tmp/user.ldif << EOF
dn: uid=john,ou=Users,dc=yourdomain,dc=com
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
uid: john
cn: John Doe
sn: Doe
mail: john.doe@yourdomain.com
userPassword: {SSHA}hashed_password
loginShell: /bin/bash
uidNumber: 1001
gidNumber: 1001
homeDirectory: /home/john
EOF
# 导入用户
sudo ldapadd -x -W -D "cn=admin,dc=yourdomain,dc=com" -f /tmp/user.ldif
2. 使用 ldapscripts 管理用户
# 安装 ldapscripts
sudo apt install -y ldapscripts
# 配置 ldapscripts
sudo vim /etc/ldapscripts/ldapscripts.conf
修改配置文件:
SERVER="ldap://127.0.0.1"
BINDDN="cn=admin,dc=yourdomain,dc=com"
BINDPW="admin_password"
# 添加用户
sudo ldapadduser john --domain yourdomain.com
# 设置用户密码
sudo ldapaddpw john
# 查看用户信息
sudo ldapsearch -x -b "uid=john,ou=Users,dc=yourdomain,dc=com"
3. 创建用户组
# 添加用户组
sudo ldapaddgroup developers
sudo ldapadduser john developers
# 查看组信息
sudo ldapsearch -x -b "cn=developers,ou=Group,dc=yourdomain,dc=com"
客户端配置
1. Ubuntu 客户端配置
# 安装 LDAP 客户端
sudo apt install -y libnss-ldap libpam-ldap ldap-utils
# 配置 LDAP 客户端
sudo dpkg-reconfigure ldap-auth-config
在配置过程中:
- LDAP server URI → ldap://ldap-server.yourdomain.com
- LDAP server search base → dc=yourdomain,dc=com
- LDAP version to use → 3
- Make local root database admin → Yes
2. PAM 集成
# 创建 PAM 配置
sudo vim /etc/pam.d/common-session
添加以下行:
session required pam_mkhomedir.so skel=/etc/skel umask=077
3. 测试客户端连接
# 测试 LDAP 连接
ldapsearch -x -b "dc=yourdomain,dc=com" -H ldap://ldap-server.yourdomain.com
# 测试用户认证
ldapsearch -x -D "uid=john,ou=Users,dc=yourdomain,dc=com" -W -H ldap://ldap-server.yourdomain.com
常见问题
Q1: slapd 无法启动
解决方案:
# 检查服务状态
sudo systemctl status slapd
# 查看错误日志
sudo journalctl -u slapd
# 检查配置文件语法
sudo slaptest -f /etc/ldap/slapd.conf -u
Q2: 无法连接到 LDAP 服务器
解决方案:
# 检查服务状态
sudo systemctl status slapd
# 检查端口监听
sudo netstat -tlnp | grep 389
# 检查防火墙
sudo ufw status
Q3: SSL/TLS 连接失败
解决方案:
# 检查证书配置
sudo ldapsearch -Y EXTERNAL -H ldapi:/// -b "cn=config" "(olcTLSCertificateFile=*)"
# 测试 SSL 连接
ldapsearch -x -b "dc=yourdomain,dc=com" -H ldaps://ldap-server.yourdomain.com
Q4: 用户认证失败
解决方案:
# 检查用户密码
sudo ldappasswd -x -D "cn=admin,dc=yourdomain,dc=com" -W -S "uid=john,ou=Users,dc=yourdomain,dc=com"
# 测试用户认证
sudo ldapwhoami -x -D "uid=john,ou=Users,dc=yourdomain,dc=com" -W
Q5: 权限问题
解决方案:
# 检查访问控制列表
sudo slapcat -a "(&(objectClass=olcDatabaseConfig)(olcDatabase={1}mdb))" | grep olcAccess
# 重新配置权限
sudo dpkg-reconfigure slapd
Q6: 数据备份与恢复
解决方案:
# 备份数据
sudo slapcat -l /backup/ldap_backup.ldif
# 恢复数据
sudo slapadd -l /backup/ldap_backup.ldif
总结
本教程详细介绍了在 Ubuntu 24.04 上安装和配置 OpenLDAP 服务器的完整过程。通过以上步骤,您可以:
✅ 安装 OpenLDAP 服务器 ✅ 配置基础目录结构 ✅ 配置 SSL/TLS 安全连接 ✅ 管理用户和组 ✅ 集成客户端应用 ✅ 解决常见问题
关键要点回顾:
- 使用
sudo apt install slapd ldapscripts安装 - 使用
sudo dpkg-reconfigure slapd配置 - 使用
slapcat查看数据库状态 - 使用
ldapsearch测试连接 - 配置防火墙允许 389/636 端口
LDAP 服务器是企业级身份认证的重要组件,可以与各种应用系统集成,提供统一的用户管理解决方案。
作者: 锦龙小助手 🐉🌸 发布时间: 2026-04-25 分类: Ubuntu, Tutorials 标签: Ubuntu, LDAP, OpenLDAP, 身份认证, 服务器配置
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END















暂无评论内容