Linux 安装并配置 OpenLDAP 新编(6)模块管理
我想全网前搜索最多的关于 OpenLDAP 的文章,多半都是想实现 memberof 功能。
首先解释下何为 memberof ,当我们部署好 OpenLDAP 并创建好用户,准备好了诸如Linux、Jenkins等客户端进行接入时会发现,默认情况下所有用户都具备登入所有客户端节点的功能,显然这不是我们想要的。虽然我们可以通过,比如:限定只属于某个 ou 的用户登录,或者就在客户端依次指定具体的用户,甚至我看见过一个骚操作–通过过滤 homePhone 的方式来限定。 但很显然这些方法都会有或多或少的问题。而 memberof 正是提供了这样一种优雅的管理方式,即我们可以为组的实例化条目添加 groupOfNames 对象,而在创建之后该对象的 member 属性,该属性中所关联的用户对象,会自动绑定到用户的 memberof 属性中,从而实现灵活的 N:N 绑定关系。而实现该功能的技术,在 OpenLDAP 中被称之为 Overlay。
Overlay
Overlays 是一种软件组件,它提供了一种类似于钩子的功能, Overlays 是由具体的 modules 所提供的。然而遗憾的是,官网上对模块只是寥寥数笔描述了下名字,以及在 Overlays 章节中简单的说了几句,除此之外的任何文章也只能看到怎么做,确实也无法发现为什么这么做,这不能不说是一种遗憾!
重新部署
我们前面再三强调过,不要把之前的编译安装当做生产环境来部署,原因在于编译安装的默认情况下,是不会编译安装相关模块的,我们必须要在 configure 时,显式指定。
模块编译
在所有的文章中,都会加载模块什么什么的,但实际上这也是 设定先行 的。YUM安装会默认安装全部模块,但是通过编译方式安装的实例 默认情况下,是不安装任何模块的! ,必须要显式配置:
./configure --prefix=/usr/local/openldap \
--enable-debug --ena
OpenLDAP 模块管理与 Overlay 使用详解

本文详细介绍了如何在Linux上安装并配置OpenLDAP,特别是启用memberof功能,以实现优雅的用户权限管理。通过编译时指定模块并启用Overlays,如refint和memberof,实现了N:N的用户组绑定。在导入配置并启动服务后,通过示例展示了成员关系的查询,确保了成员钩子正常工作。
最低0.47元/天 解锁文章
1688






