侧边栏壁纸
博主头像
Atopos博主等级

亦余心之所善兮,虽九死其犹未悔

  • 累计撰写 41 篇文章
  • 累计创建 8 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

GO-ldap-admin的搭建步骤(钉钉用户自动同步至LDAP)

简介
现代化openLDAP管理后台,设计简洁,交互简单,助力运维人员快速简单地应用并管理openLDAP

支持钉钉,企业微信,飞书的组织架构,以及员工信息自动同步到LDAP,一座打通IM与常见支持ldap认证的应用的桥梁

一.使用docker-compose部署 

mkdir go-ldap-admin
cd go-ldap-admin
vi docker-compose.yaml 
version: '3'
networks:
  go-ldap-admin:
    driver: bridge
services:
  go-ldap-admin:
    image: registry.cn-hangzhou.aliyuncs.com/eryajf/go-ldap-admin
    container_name: go-ldap-admin
    hostname: go-ldap-admin
    restart: always
    environment:
      WAIT_HOSTS: openldap:389
      DB_DRIVER: sqlite3
    ports:
      - 8888:8888
    volumes:
      - ./data/go-ldap-admin:/app/data
    depends_on:
      - openldap
    links:
      - openldap:go-ldap-admin-openldap
    networks:
      - go-ldap-admin
 
  openldap:
    image: registry.cn-hangzhou.aliyuncs.com/eryajf/openldap:1.4.1
    container_name: go-ldap-admin-openldap
    hostname: go-ldap-admin-openldap
    restart: always
    environment:
      TZ: Asia/Shanghai
      LDAP_ORGANISATION: "eryajf.net"
      LDAP_DOMAIN: "eryajf.net"
      LDAP_ADMIN_PASSWORD: "123456"
    command: [ '--copy-service' ]
    volumes:
      - ./data/openldap/database:/var/lib/ldap
      - ./data/openldap/config:/etc/ldap/slapd.d
    ports:
      - 389:389
    networks:
      - go-ldap-admin
 
  phpldapadmin:
    image: registry.cn-hangzhou.aliyuncs.com/eryajf/phpldapadmin:0.9.0
    container_name: go-ldap-admin-phpldapadmin
    hostname: go-ldap-admin-phpldapadmin
    restart: always
    environment:
      TZ: Asia/Shanghai
      PHPLDAPADMIN_HTTPS: "false"
      PHPLDAPADMIN_LDAP_HOSTS: go-ldap-admin-openldap
    ports:
      - 8091:80
    volumes:
      - ./data/phpadmin:/var/www/phpldapadmin
    depends_on:
      - openldap
    links:
      - openldap:go-ldap-admin-openldap
    networks:
      - go-ldap-admin 

docker-compose up -d  # 启动运行

浏览器访问测试:

http://yourserverip:8888

admin/123456 

钉钉通讯录同步至GO-LDAP-ADMIN 

docker exec -it go-ldap-admin /bin/bash  #进入容器
vi config.yml
找到以下信息并更改
dingtalk:
  flag: "dingtalk" # 作为钉钉在平台的标识
  app-key: "xxxxxxxxxxxxxxx" # 应用的key
  app-secret: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx" # 应用的secret
  agent-id: "12121212" # 目前agent-id未使用到,可忽略
  enable-sync: false # 是否开启定时同步钉钉的任务 

更改保存后,重启容器

登录go-ldap-admin并设置

先点击同步部门(重要)

然后同步用户

部署成功

此刻,你拥有一个LDAP服务,员工加入钉钉自动生成账号,离职时自动禁用账号

go-ldap-admin 管理信息

base dn:ou=people,dc=eryajf,dc=net

bond dn : cn=admin,dc=eryajf,dc=net

password:123456

钉钉同步过来的用户默认密码:123456

测试:

使用SSLVPN-anylink 测试LDAP服务,并使用LDAP账号验证登录

0

评论区