OpenLDAP 2.4的配置
2017-06-15
本篇整理一下OpenLDAP 2.4的配置。 OpenLDAP 2.4有两种配置方式:
- 通过配置文件
slapd.conf
进行配置,这是旧版本的配置方式 - 通过修改配置数据库(cn=config),这是新的推荐的配置方式
这里我们学习cn=config的方式。cn=config实际上是将slapd.conf中的内容转换成ldif格式,并组成以cn=config
为根的目录树,这棵树会有很多节点,如下图所示:
cn=config节点是Global config options。
cn=module{0}节点是动态加载的模块,只有在用--enable-modules
选项配置的软件才会使用。
cn=schema节点,cn=schema,cn=config
条目包含了系统的schema定义。cn=schema,cn=config
的子条目包含的是从配置文件加载或在运行时加载的用户的schema。
配置cn=config
是一种动态配置的方式,不需要重启slapd进程。可以在/etc/openldap/slapd.d目录下找到文本格式的ldif文件:
1tree slapd.d/
2slapd.d/
3├── cn=config
4│ ├── cn=schema
5│ │ ├── cn={0}core.ldif
6│ │ ├── cn={10}openldap.ldif
7│ │ ├── cn={11}pmi.ldif
8│ │ ├── cn={12}ppolicy.ldif
9│ │ ├── cn={1}collective.ldif
10│ │ ├── cn={2}corba.ldif
11│ │ ├── cn={3}cosine.ldif
12│ │ ├── cn={4}duaconf.ldif
13│ │ ├── cn={5}dyngroup.ldif
14│ │ ├── cn={6}inetorgperson.ldif
15│ │ ├── cn={7}java.ldif
16│ │ ├── cn={8}misc.ldif
17│ │ └── cn={9}nis.ldif
18│ ├── cn=schema.ldif
19│ ├── olcDatabase={0}config.ldif
20│ ├── olcDatabase={-1}frontend.ldif
21│ ├── olcDatabase={1}monitor.ldif
22│ └── olcDatabase={2}hdb.ldif
23└── cn=config.ldif
我们在前面时使用ls /etc/openldap/schema/*.ldif | while read f; do ldapadd -Y EXTERNAL -H ldapi:/// -f $f; done
命令导入了用户schema,可以看到在cn=schema,cn=config下。