当前位置: 首页 > news >正文

openldap安装 -添加条目

openldap安装

文档

  1. openldap安装 -添加条目
  2. gitlab、jenkins等应用集成ldap

官方文档

  1. 官方网站:https://www.openldap.org/
  2. 下载页面:https://www.openldap.org/software/download/
  3. 下载地址:https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-2.6.10.tgz
  4. 快速开始指南:https://www.openldap.org/doc/admin26/quickstart.html

说明

  1. openldap版本:openldap-2.6.10

本地安装

  1. 可以按照快速指南的步骤,进行安装

  2. 提前下载好openldap-2.6.10.tgz

  3. 解压openldap-2.6.10.tgz

    cd /home/
    gunzip -c openldap-2.6.10.tgz | tar xvfB -
    
  4. 进入到openldap-2.6.10.tgz解压后的文件夹

    cd openldap-2.6.10
    
  5. 配置

    ./configure
    
  6. 编译

    make depend
    make
    
  7. 安装

    make install
    
  8. 编辑数据库配置

    1. 编辑/usr/local/etc/openldap/slapd.ldif文件

    2. 默认配置与快速指南有所区别,用默认配置即可,不需要更改

      dn: olcDatabase=mdb,cn=config
      objectClass: olcDatabaseConfig
      objectClass: olcMdbConfig
      olcDatabase: mdb 
      olcDbMaxSize: 1073741824
      olcSuffix: dc=my-domain,dc=com
      olcRootDN: cn=Manager,dc=my-domain,dc=com
      # Cleartext passwords, especially for the rootdn, should
      # be avoided.  See slappasswd(8) and slapd-config(5) for details.
      # Use of strong authentication encouraged.
      olcRootPW: secret
      # The database directory MUST exist prior to running slapd AND 
      # should only be accessible by the slapd and slap tools.
      # Mode 700 recommended.
      olcDbDirectory: /usr/local/var/openldap-data
      # Indices to maintain
      olcDbIndex: objectClass eq
      
    3. 需要变更的是,需要导入cosine.ldifinetorgperson.ldif,以及其它想要导入的schema,这一步很重要,后面与gitlab等集成时,需要的一些属性,如果不导入这些schema,会报错。在/usr/local/etc/openldap/slapd.ldif文件中,已导入了core.ldif,在配置文件的41行。在此配置后面,追加导入cosine.ldifinetorgperson.ldif

      ...
      include: file:///usr/local/etc/openldap/schema/core.ldif
      include: file:///usr/local/etc/openldap/schema/cosine.ldif
      include: file:///usr/local/etc/openldap/schema/inetorgperson.ldif
      ...
      
    4. 保存退出/usr/local/etc/openldap/slapd.ldif

    5. 创建文件夹:/usr/local/var/openldap-data,就是上面配置中olcDbDirectory属性的值

      mkdir -p /usr/local/var/openldap-data
      
    6. 创建文件夹:/usr/local/etc/slapd.d,后面的配置中需要用到

      mkdir -p /usr/local/etc/slapd.d
      
  9. 导入配置数据库

    /usr/local/sbin/slapadd -n 0 -F /usr/local/etc/slapd.d -l /usr/local/etc/openldap/slapd.ldif
    
  10. 启动服务

    /usr/local/libexec/slapd -F /usr/local/etc/slapd.d
    
  11. 检查服务是否启动成功

    ps -ef | grep slapd
    

添加条目到LDAP目录

  1. 服务启动成功后,添加一些条目到ldap目录中

  2. .ldif文件中编辑条目信息,执行添加命令ldapadd即可将条目添加到ldap目录中

  3. 依次添加组织管理员分组用户

  4. 添加组织

    1. 在任意目录下,编辑add_o_my_org.ldif,例如在/home下编辑

      dn: dc=my-domain,dc=com
      objectClass: top
      objectClass: dcObject
      objectClass: organization
      o: MyOrg
      dc: my-domain
      
    2. 执行ldapadd命令添加

      ldapadd -x -H ldap://localhost:389 -D "cn=Manager,dc=my-domain,dc=com" -W -f add_o_my_org.ldif
      

      返回信息:

      Enter LDAP Password: 
      

      执行后,需要输入密码,密码即为上面配置中olcRootPW的属性值:secret

      返回信息:

      adding new entry "dc=my-domain,dc=com"
      

      返回上面信息,表示添加成功

  5. 添加管理员

    1. 编辑add_cn_manager.ldif

      dn: cn=Manager,dc=my-domain,dc=com
      objectclass: organizationalRole
      cn: Manager
      
    2. 执行ldapadd命令添加

      ldapadd -x -H ldap://localhost:389 -D "cn=Manager,dc=my-domain,dc=com" -W -f add_cn_manager.ldif
      
  6. 添加分组

    1. 编辑add_ou_people.ldif

      # add_ou_people.ldif
      dn: ou=People,dc=my-domain,dc=com
      objectClass: organizationalUnit
      ou: People
      description: All people in the organization
      
    2. 执行ldapadd命令添加

      ldapadd -x -H ldap://localhost:389 -D "cn=Manager,dc=my-domain,dc=com" -W -f add_ou_people.ldif
      
  7. 添加用户

    1. 编辑add_test_user.ldif

      # add_test_user.ldif
      dn: cn=test000,ou=People,dc=my-domain,dc=com
      objectClass: top
      objectClass: person
      objectClass: organizationalPerson
      objectClass: inetOrgPerson
      cn: test000
      sn: User
      givenName: Test000
      mail: test.user@example.com
      uid: 1000
      ou: People
      userPassword: 123456 
      description: General test user account
      
    2. 执行ldapadd命令添加

      ldapadd -x -H ldap://localhost:389 -D "cn=Manager,dc=my-domain,dc=com" -W -f add_test_user.ldif
      

客户端工具

  1. https://www.ldapbrowserwindows.com/
  2. https://www.ldapsoft.com/ldapbrowser/ldapadmintool.html

参考

  1. https://cloud.tencent.com/developer/article/2549888
http://www.dtcms.com/a/338550.html

相关文章:

  • 项目管理.管理理念学习
  • 跟踪不稳定目标:基于外观引导的运动建模实现无人机视频中的鲁棒多目标跟踪
  • 第10章 React应用测试
  • 一、快速掌握python中的序列、集合和字典的用法(数据容器)
  • RxJava 在 Android 即时通讯中的应用:封装、处理与控制
  • 《WASM驱动本地PDF与Excel预览组件的深度实践》
  • 达梦数据库表恢复方法总结
  • 章11:管理网络
  • 网络基础——网络传输基本流程
  • Android Coil 3拦截器Interceptor计算单次请求耗时,Kotlin
  • GPT-4.1旗舰模型:复杂任务的最佳选择及API集成实践
  • 基于prompt的生物信息学:多组学分析的新界面
  • RecSys:粗排模型和精排特征体系
  • 力扣57:插入区间
  • Apache IoTDB:大数据时代时序数据库选型的技术突围与实践指南
  • 【力扣 Hot100】 刷题日记——双指针的经典应用
  • 论文阅读:Prompt Optimization in Large Language Models
  • @Linux问题 :bash fork Cannot allocate memory 错误分析与解决方案
  • Spring Boot 使用 单元测试(JUnit )教程
  • 【LeetCode题解】LeetCode 162. 寻找峰值
  • 什么是矩阵系统源码搭建定制化开发,支持OEM贴牌
  • AndroidR车机系统Settings数据库增加非持久化存储键值方案-续
  • 快手可灵招海外产品运营实习生
  • vue,H5车牌弹框定制键盘包括新能源车牌
  • word如何转换为pdf
  • 网络基础——Socket编程预备
  • 专题:2025母婴行业消费洞察与分龄营养趋势报告|附40 +份报告PDF、交互图表数据汇总下载
  • MongoDB知识速查
  • uni-app页面使用u-view组件简化版列表页+详情页实现
  • 【最新版】CRMEB Pro版v3.4系统源码全开源+PC端+uniapp前端+搭建教程