Linux下怎么安装并配置LDAP

发布时间:2022-03-11 17:06:32 作者:iii
来源:亿速云 阅读:818
# Linux下怎么安装并配置LDAP

## 目录
1. [LDAP简介](#ldap简介)
2. [安装前准备](#安装前准备)
3. [安装OpenLDAP](#安装openldap)
4. [配置OpenLDAP服务](#配置openldap服务)
5. [创建基础目录结构](#创建基础目录结构)
6. [管理LDAP条目](#管理ldap条目)
7. [配置TLS加密](#配置tls加密)
8. [客户端配置](#客户端配置)
9. [常见问题排查](#常见问题排查)

---

## LDAP简介
轻量级目录访问协议(LDAP)是用于访问和维护分布式目录信息服务的开放标准协议。它常用于:
- 集中式用户认证
- 企业通讯录管理
- 网络资源目录服务

---

## 安装前准备
### 系统要求
- Linux服务器(本文以Ubuntu 20.04/Debian 11为例)
- root或sudo权限
- 至少2GB可用内存

### 网络配置
```bash
hostnamectl set-hostname ldap.example.com
echo "192.168.1.100 ldap.example.com" >> /etc/hosts

安装依赖

sudo apt update
sudo apt install -y slapd ldap-utils libnss-ldap libpam-ldap

安装OpenLDAP

交互式安装(推荐初次使用)

sudo dpkg-reconfigure slapd

按提示配置: 1. 选择”No”跳过初始配置 2. 设置域名(如:example.com) 3. 设置组织名称 4. 设置管理员密码(建议12位以上) 5. 选择MDB作为后端数据库

验证安装

sudo systemctl status slapd
ldapsearch -x -LLL -H ldap:/// -b "" namingContexts

配置OpenLDAP服务

主配置文件

/etc/ldap/ldap.conf 基础配置:

BASE    dc=example,dc=com
URI     ldap://localhost

服务端配置

编辑 /etc/ldap/slapd.conf(或使用动态配置):

dn: cn=config
changetype: modify
replace: olcLogLevel
olcLogLevel: 256

应用配置:

sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f loglevel.ldif

创建基础目录结构

基础域配置

创建 base.ldif 文件:

dn: dc=example,dc=com
objectClass: top
objectClass: dcObject
objectClass: organization
o: Example Organization
dc: example

导入配置:

ldapadd -x -D "cn=admin,dc=example,dc=com" -W -f base.ldif

创建组织单元

dn: ou=people,dc=example,dc=com
objectClass: organizationalUnit
ou: people

管理LDAP条目

添加用户

user.ldif 示例:

dn: uid=jdoe,ou=people,dc=example,dc=com
objectClass: inetOrgPerson
uid: jdoe
cn: John Doe
sn: Doe
givenName: John
mail: jdoe@example.com
userPassword: {SSHA}hashed_password

常用命令

# 添加条目
ldapadd -x -D "cn=admin,dc=example,dc=com" -W -f entry.ldif

# 查询条目
ldapsearch -x -b "dc=example,dc=com" "(objectClass=*)"

# 修改条目
ldapmodify -x -D "cn=admin,dc=example,dc=com" -W -f modify.ldif

# 删除条目
ldapdelete -x -D "cn=admin,dc=example,dc=com" -W "uid=jdoe,ou=people,dc=example,dc=com"

配置TLS加密

生成证书

sudo openssl req -new -x509 -nodes -out /etc/ldap/certs/ldap.crt \
-keyout /etc/ldap/certs/ldap.key -days 365

配置SLAPD

dn: cn=config
add: olcTLSCertificateFile
olcTLSCertificateFile: /etc/ldap/certs/ldap.crt
-
add: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile: /etc/ldap/certs/ldap.key

强制TLS

sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f tls.ldif
sudo systemctl restart slapd

客户端配置

安装客户端工具

sudo apt install -y ldap-utils libnss-ldap libpam-ldap

PAM配置

编辑 /etc/pam.d/common-session

session required pam_mkhomedir.so skel=/etc/skel umask=0022

测试认证

getent passwd jdoe
ldapwhoami -x -D "uid=jdoe,ou=people,dc=example,dc=com" -W

常见问题排查

连接问题

# 检查服务状态
sudo slapcat -b cn=config | grep -i tls

# 查看日志
journalctl -u slapd -f

密码策略

dn: cn=default,ou=policies,dc=example,dc=com
objectClass: pwdPolicy
pwdAttribute: userPassword
pwdMinAge: 1
pwdMaxAge: 90
pwdInHistory: 5

备份与恢复

# 备份
slapcat -n 0 > config.ldif
slapcat -n 1 > data.ldif

# 恢复
slapadd -n 0 -l config.ldif
slapadd -n 1 -l data.ldif

提示:生产环境建议使用phpLDAPadmin或Apache Directory Studio等GUI工具管理LDAP “`

这篇文章涵盖了LDAP从安装到基础配置的全流程,包含约1600字的技术内容,采用Markdown格式编写,包含代码块、配置示例和结构化标题。可根据实际需求进一步扩展特定章节的细节。

推荐阅读:
  1. 如何安装配置linux php ldap
  2. linux php ldap如何安装配置

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux ldap

上一篇:windows重装系统文件丢失怎么恢复

下一篇:GC垃圾回收的三色标记是什么

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》