前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >OpenLDAP 安装初体验

OpenLDAP 安装初体验

作者头像
zhonger
发布2022-10-28 11:00:22
5480
发布2022-10-28 11:00:22
举报
文章被收录于专栏:仲儿的专栏

LDAP 协议入门

  LDAP 是一种通讯协议,支持 TCP/IP 。在这套标准下,有多种的实现方式,比如 OpenLDAP、微软大佬的 AD (Active Directory)。拿 AD 来举例子,LDAP 有点像是数据库一样,但是又不完全是,读起来非常快、写起来慢一点。同时它也有 Server 端和 Client 端,其中 Server 端用来存放资源,Client 端用来操作增删改查等操作,即 AD = LDAP服务器 + LDAP 应用。

  与数据库不同的地方是,数据库是按照记录一条条存放在表中,而 LDAP 数据库是树结构的,数据存储在叶子节点上。下面举个例子来说明一下树结构上的一条记录是如何定义的。

代码语言:javascript
复制
# 描述:苹果是在树的东边那个分叉上的靠西边那个分叉的再靠北边的分叉上的半红半绿的。

树 (dc=tree)
分叉 (ou=bei,ou=xi,ou=dong)
苹果 (cn=redApple)

# 综合起来描述为
dn:cn=redApple,ou=bei,ou=xi,ou=dong,dc=tree

一个完整的 LDAP 树形结构数据库应包含以下几个因素:

代码语言:javascript
复制
dn: 一条记录的详细位置
dc: 一条记录所属的区域(即哪一棵树)
ou: 一条记录所属的组织(即哪一个分支)
cn/uid: 一条记录的名字/ID (即哪一个苹果名字)
LDAP 目录树的最顶部就是根,也就是所谓的"基准 DN"

小提示

为什么要用 LDAP 目录树来存储数据,用 MySQL 不行吗?

  用树形结构存储数据,查询效率更高。在某些特定的场景下,使用树形数据库更理想。比如,需要存储大量的数据,而且数据不是经常更改的,需要很快速的查找。

  把 LDAP 与传统的数据库相比,LDAP 除了快速查找的特点,它还有很多的运用场景,比如域验证等。

如何操作 LDAP 服务器?

  LDAP 服务器的客户端操作方式有很多种,常见的有 JDBC 、 JNDI 、 phpLDAPadmin 等。由于本人不怎么用 Java,所以首选 phpLDAPadmin 来进行实战操作。

采用 Docker 快速部署

  其实在 Ubuntu 上安装 OpenLDAP 和 phpLDAPadmin 两个软件是比较简单的,使用 sudo apt install openldap phpldapadmin -y 即可完成,但是配置起来就有点小麻烦了,不大适合对 LDAP 没有深入了解的人使用,最简单的方式就是使用别人已经封装好的 Docker 镜像进行快速部署。docker-compose.yml 文件内容如下:

代码语言:javascript
复制
version: '2'

services:
    phpldapadmin:
      image: osixia/phpldapadmin
      environment:
        PHPLDAPADMIN_LDAP_HOSTS: openldap
      links:
        - openldap
      ports:
        - 6443:443
      restart: always
    openldap:
      image: osixia/openldap
      environment:
        LDAP_ORGANISATION: "example"
        LDAP_DOMAIN: example.org
        LDAP_ADMIN_PASSWORD: admin
      volumes:
        - ./data/slapd/database:/var/lib/ldap
        - ./data/slapd/config:/etc/ldap/slapd.d
      restart: always
      ports:
        - 389:389
        - 689:689

访问

  安装完成之后使用 https://localhost:6443 即可访问 phpLDAPadmin ,Login DN 为 cn=admin,dc=example,dc=org,Password 为 admin

参考资料

版权声明:如无特别声明,本文版权归 仲儿的自留地 所有,转载请注明本文链接。

(采用 CC BY-NC-SA 4.0 许可协议进行授权)

本文标题:《 OpenLDAP 安装初体验 》

本文链接:https://cloud.tencent.com/developer/article/2142957

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • LDAP 协议入门
    • 如何操作 LDAP 服务器?
    • 采用 Docker 快速部署
    • 访问
    • 参考资料
    相关产品与服务
    对象存储
    对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档