• 组件分享之后端组件——LDAP仓库docker-openlda


    组件分享之后端组件——LDAP仓库docker-openlda

    背景

    近期正在探索前端、后端、系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类语言中的一些常用组件。欢迎大家进行持续关注。

    组件基本信息

    内容

    本节我们分享的是LDAP仓库docker-openldap,它可以让我们快速进行安装ldap进行使用。

    具体安装如下:
    1、docker安装

    docker run --name my-openldap-container --detach osixia/openldap:1.5.0

    创建新的 ldap 服务器

    1. docker run \
    2. --env LDAP_ORGANISATION="My Company" \
    3. --env LDAP_DOMAIN="my-company.com" \
    4. --env LDAP_ADMIN_PASSWORD="JonSn0w" \
    5. --detach osixia/openldap:1.5.0

    仅用于新的 ldap 服务器:

    • LDAP_ORGANISATION:组织名称。默认为Example Inc.

    • LDAP_DOMAIN:LDAP 域。默认为example.org

    • LDAP_BASE_DN:LDAP 基本 DN。如果为空,则从 LDAP_DOMAIN 值自动设置。默认为(empty)

    • LDAP_ADMIN_PASSWORD LDAP管理员密码。默认为admin

    • LDAP_CONFIG_PASSWORD Ldap 配置密码。默认为config

    • LDAP_READONLY_USER添加只读用户。默认为false

      注意:只读用户确实对其自己的密码具有写访问权。

    • LDAP_READONLY_USER_USERNAME只读用户名。默认为readonly

    • LDAP_READONLY_USER_PASSWORD只读用户密码。默认为readonly

    • LDAP_RFC2307BIS_SCHEMA使用 rfc2307bis 模式而不是 nis 模式。默认为false

    后端:

    TLS 选项:

    • LDAP_TLS:添加 openldap TLS 功能。设置为 true 后无法删除。默认为true.

    • LDAP_TLS_CRT_FILENAME:Ldap ssl 证书文件名。默认为ldap.crt

    • LDAP_TLS_KEY_FILENAME:Ldap ssl 证书私钥文件名。默认为ldap.key

    • LDAP_TLS_DH_PARAM_FILENAME:Ldap ssl 证书 dh 参数文件。默认为dhparam.pem

    • LDAP_TLS_CA_CRT_FILENAME:Ldap ssl CA 证书文件名。默认为ca.crt

    • LDAP_TLS_ENFORCE:强制执行 TLS,但 ldapi 连接除外。设置为 true 后无法禁用。默认为false.

    • LDAP_TLS_CIPHER_SUITE:TLS 密码套件。默认为SECURE256:+SECURE128:-VERS-TLS-ALL:+VERS-TLS1.2:-RSA:-DHE-DSS:-CAMELLIA-128-CBC:-CAMELLIA-256-CBC,基于 Red Hat 的TLS 强化指南

    • LDAP_TLS_VERIFY_CLIENT:TLS 验证客户端。默认为demand

      帮助:https ://www.openldap.org/doc/admin24/tls.html

    复制选项:

    • LDAP_REPLICATION:添加 openldap 复制功能。可能的值:true, false, own. 默认为false. 将此设置为own允许通过自定义引导 ldifs 提供自己的复制设置。

    • LDAP_REPLICATION_CONFIG_SYNCPROV:用于配置数据库的 olcSyncRepl 选项。没有根据 LDAP_REPLICATION_HOSTS 自动添加的ridprovider 。默认为binddn="cn=admin,cn=config" bindmethod=simple credentials=$LDAP_CONFIG_PASSWORD searchbase="cn=config" type=refreshAndPersist retry="60 +" timeout=1 starttls=critical

    • LDAP_REPLICATION_DB_SYNCPROV:用于数据库的 olcSyncRepl 选项。没有根据 LDAP_REPLICATION_HOSTS 自动添加的ridprovider 。默认为binddn="cn=admin,$LDAP_BASE_DN" bindmethod=simple credentials=$LDAP_ADMIN_PASSWORD searchbase="$LDAP_BASE_DN" type=refreshAndPersist interval=00:00:00:10 retry="60 +" timeout=1 starttls=critical

    • LDAP_REPLICATION_HOSTS:复制主机列表,必须包含由 --hostname 在 docker run 命令上设置的当前容器主机名。默认为:

      1. - ldap://ldap.example.org
      2. - ldap://ldap2.example.org

      如果要在 docker run 命令中设置此变量,请添加标签#PYTHON2BASH:并在 python 中转换 yaml:

      docker run --env LDAP_REPLICATION_HOSTS="#PYTHON2BASH:['ldap://ldap.example.org','ldap://ldap2.example.org']" --detach osixia/openldap:1.5.0

      在线将 yaml 转换为 python:https ://yaml-online-parser.appspot.com/

    其他环境变量:

    • KEEP_EXISTING_CONFIG:不要更改 ldap 配置。默认为false

      • 如果在现有数据库中设置为true ,则配置将保持不变。映像 tls 和复制配置将不会运行。容器可以在 LDAP_ADMIN_PASSWORD 和 LDAP_CONFIG_PASSWORD 为空或填充虚假数据的情况下启动。
      • 如果在引导新数据库时设置为true,则不会添加引导 ldif 和模式,并且不会运行 tls 和复制配置。
    • LDAP_REMOVE_CONFIG_AFTER_SETUP:设置后删除配置文件夹。默认为true

    • LDAP_SSL_HELPER_PREFIX:ssl-helper 环境变量前缀。默认为ldap, ssl-helper 首先从 LDAP_SSL_HELPER_* 变量中搜索配置,在 SSL_HELPER_* 变量之前。

    • HOSTNAME:设置正在运行的 openldap 服务器的主机名。默认为 docker 创建的任何内容。

    • DISABLE_CHOWN:不执行任何 chown 来修复文件所有权。默认为false

    • LDAP_OPENLDAP_UID:运行时 docker 用户 uid 以运行容器

    • LDAP_OPENLDAP_GID:运行时 docker 用户 gid 来运行容器

    具体使用方式可以参见该文档

    本文声明:
    88x31.png
    知识共享许可协议
    本作品由 cn華少 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。
  • 相关阅读:
    神经网络训练结果都是1,神经网络训练效果不好
    netty整合websocket(完美教程)
    阿里云-Centos7配置Nginx实现HTTPS(保姆级安装教程-无脑执行)
    mongodb 权限配置
    【JAVA刷题初阶】刷爆力扣第九弹——二叉树
    恒创科技:无法与服务器建立安全连接怎么解决?
    如何使用B/S开发工具DevExtreme的图表控件 - 自定义轴位置?
    GitLab CI/CD关键词(十二):条件限定,only ,except,触发规则rules,工作流workflow
    JVM 基础篇:类加载器
    GBase 8c V3.0.0数据类型——序列函数
  • 原文地址:https://blog.csdn.net/csde12/article/details/125536389