蟑螂恶霸的博客 蟑螂恶霸的博客
首页
  • Web自动化
  • 自动化测试框架
  • 接口自动化
  • 测试面试题
  • 技术文档
  • GitHub技巧
  • 博客搭建
  • Vue
  • JavaScript
  • Nginx
  • 自动化测试
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

蟑螂恶霸

一个爱折腾的程序员,什么都想试试!
首页
  • Web自动化
  • 自动化测试框架
  • 接口自动化
  • 测试面试题
  • 技术文档
  • GitHub技巧
  • 博客搭建
  • Vue
  • JavaScript
  • Nginx
  • 自动化测试
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Docker安装部署OpenLDAP

    • 安装docker
      • 拉取openldap与phpldapadmin镜像到本地
        • 运行镜像
          • 通过docker run命令运行openldap
          • 通过docker run命令运行osixia/phpldapadmin
        • 疑难杂症
        蟑螂恶霸
        2022-08-01
        随笔
        目录

        Docker安装部署OpenLDAP

        OpenLDAP是一款轻量级目录访问协议(Lightweight Directory Access Protocol,LDAP),属于开源集中账号管理架构的实现,支持众多系统版本。

        本文采用docker容器的方式安装运行openldap镜像。使用docker安装方式配置简单,易用等特点。

        # 安装docker

        # 安装docker依赖包
        yum install -y yum-utils device-mapper-persistent-data lvm2
        # 配置国内阿里云镜像仓库,解决镜像下载慢的问题。
        yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo   
        # 安装docker-ce服务
        yum install docker-ce docker-ce-cli containerd.io
        
        # 启动docker命令
        systemctl start docker
        # 添加到开机启动项
        systemctl enable docker
        
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11

        # 拉取openldap与phpldapadmin镜像到本地

        docker pull osixia/openldap
        docker pull osixia/phpldapadmin
        
        1
        2

        # 运行镜像

        # 通过docker run命令运行openldap

        docker run \
        -p 389:389 \
        -p 636:636 \
        --name myldap_name \
        --network bridge \
        --hostname codesweet.com \
        --env LDAP_ORGANISATION="codesweet" \
        --env LDAP_DOMAIN="codesweet.com" \
        --env LDAP_ADMIN_PASSWORD="123456" \
        --volume /path/to/certificates:/container/service/slapd/assets/certs \
        --env LDAP_TLS_CRT_FILENAME=ldap.crt \
        --env LDAP_TLS_KEY_FILENAME=ldap.key \
        --env LDAP_TLS_CA_CRT_FILENAME=ca.crt \
        --detach osixia/openldap
        
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14

        注释如下: -p 389:389 \ TCP/IP访问端口 -p 636:636 \ SSL连接端口 –name myldap_name 容器名称为myldap_name –network bridge 连接默认的bridge网络 –hostname openldap-host 设置容器主机名称为 openldap-host –env LDAP_ORGANISATION=“example” 配置LDAP组织名称 –env LDAP_DOMAIN=“example.com” 配置LDAP域名 –env LDAP_ADMIN_PASSWORD=“123456” 配置LDAP密码

        # 通过docker run命令运行osixia/phpldapadmin

        docker run \
        -d \
        --privileged \
        -p 8989:80 \
        --name myldapadmin \
        --env PHPLDAPADMIN_HTTPS=false \
        --env PHPLDAPADMIN_LDAP_HOSTS=192.168.1.205 \
        --detach osixia/phpldapadmin
        
        1
        2
        3
        4
        5
        6
        7
        8

        注释如下: -d 分离模式启动容器 –privileged 特权模式启动(使用该参数,container内的root拥有真正的root权限。否则,container内的root只是外部的一个普通用户权限。) –env PHPLDAPADMIN_HTTPS=false 禁用HTTPS –env PHPLDAPADMIN_LDAP_HOSTS =172.16.109.91 配置openLDAP的IP或者域名,我安装ldap机器IP就是172.16.109.91。

        通过访问phpldapadmin管理地址 http://192.168.1.205:8989 进行登录与管理,登陆界面如下:

        image-20220801191952476

        点击login登录

        Login DN:cn=admin,dc=codesweet.com,dc=com
        Password:123456
        
        1
        2

        可以配合LDAP Admin 工具管理LDAP。

        # 疑难杂症

        仓库地址 (opens new window)


        我发现了一个很坑的问题!

        用镜像里面自动生成的TLS证书,会出现 /etc/my_init.d/slapd failed with status 80 这样的问题。这问题足足搞了我两天...

        经大佬和issues指点,使用 gnutls生成证书,才解决了这个问题。

        image-20220803193928149

        上述生成证书方法


        一些ldap常用的命令

        ldapwhoami -H ldap://localhost -x -ZZ   
        	
        ldapsearch -x -D "cn=admin,dc=codesweet,dc=com" -H ldaps://localhost -W -b "dc=codesweet;dc=com"
        
        1
        2
        3
        上次更新: 2022/10/15, 15:19:25
        最近更新
        01
        实现定时任务数据库配置
        06-09
        02
        SQL Server连接
        02-22
        03
        RSA加密工具类
        02-22
        更多文章>
        Theme by Vdoing | Copyright © 2022-2023 蟑螂恶霸 | Blog
        • 跟随系统
        • 浅色模式
        • 深色模式
        • 阅读模式