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

2022-06-30 14:58:44 浏览数 (1)

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

背景

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

组件基本信息

  • 组件:docker-openldap
  • 开源协议:MIT license

内容

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

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

代码语言:javascript复制
docker run --name my-openldap-container --detach osixia/openldap:1.5.0

创建新的 ldap 服务器

代码语言:javascript复制
docker run 
    --env LDAP_ORGANISATION="My Company" 
    --env LDAP_DOMAIN="my-company.com" 
    --env LDAP_ADMIN_PASSWORD="JonSn0w" 
    --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

后端:

  • LDAP_BACKEND:LDAP 后端。默认为mdb(以前在 v1.1.10 之前的映像版本中为 hdb) 帮助:https ://www.openldap.org/doc/admin24/backends.html

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 自动添加的rid和provider 。默认为binddn="cn=admin,

其他环境变量:

  • 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 来运行容器

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

本文声明:

知识共享许可协议

本作品由 cn華少 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。

0 人点赞