文章目录
-
-
-
- [(1) 基本安装](#(1) 基本安装)
- [(2) 使用外部目录](#(2) 使用外部目录)
- [(3) 使用外部证书](#(3) 使用外部证书)
-
-
Dockerfile 参考:https://github.com/bitnami/containers/tree/main/bitnami/openldap
Docker Hub 参考:https://hub.docker.com/r/bitnami/openldap
(1) 基本安装
bash
$ docker run -d -p 1389:1389 --restart=always --name openldap \
--env LDAP_ADMIN_USERNAME=xiodiadmin \
--env LDAP_ADMIN_PASSWORD=Xiodi.cn123456 \
--env LDAP_USERS=user1 \
--env LDAP_PASSWORDS=Xiodi.cn123 \
--env LDAP_ROOT=dc=xiodi,dc=cn \
--env LDAP_ALLOW_ANON_BINDING=no \
bitnami/openldap:2.6.10
- 未加密端口为 1389
- 加密端口 636 未启用
- 管理员:cn=xiodiadmin,dc=xiodi,dc=cn,密码为 Xiodi.cn123456
- 默认会创建 ou=users,dc=xiodi,dc=cn,ou=groups,dc=xiodi,dc=cn 两个组织单位
- 普通用户:cn=user1,ou=users,dc=xiodi,dc=cn,密码为 Xiodi.cn123
- 默认会创建一个组:cn=readers,ou=users,dc=xiodi,dc=cn,这个一般用不上
- 数据目录:/bitnami/openldap/data
- 配置目录:/bitnami/openldap/slapd.d
(2) 使用外部目录
bash
$ mkdir -pv /data/openldap
$ chown 1001:1001 /data/openldap # 1001 是容器内部使用的 user id
$ docker run -d -p 1389:1389 --restart=always --name openldap \
--env LDAP_ADMIN_USERNAME=xiodiadmin \
--env LDAP_ADMIN_PASSWORD=Xiodi.cn123456 \
--env LDAP_USERS=user1 \
--env LDAP_PASSWORDS=Xiodi.cn123 \
--env LDAP_ROOT=dc=xiodi,dc=cn \
--env LDAP_ALLOW_ANON_BINDING=no \
-v /data/openldap:/bitnami/openldap \
bitnami/openldap:2.6.10
(3) 使用外部证书
//生成证书
bash
$ rm -rf /data/openldap/{slapd.d,data}
$ mkdir /data/openldap/certs
$ cp -r /etc/ldap/certs/* /data/openldap/certs/
$ chown -R 1001:1001 /data/openldap/certs
这里直接使用的前面安装时的证书。
bash
$ docker run -d -p 1389:1389 -p 1636:1636 --restart=always --name openldap \
--env LDAP_ADMIN_USERNAME=xiodiadmin \
--env LDAP_ADMIN_PASSWORD=Xiodi.cn123456 \
--env LDAP_USERS=user1 \
--env LDAP_PASSWORDS=Xiodi.cn123 \
--env LDAP_ROOT=dc=xiodi,dc=cn \
--env LDAP_ALLOW_ANON_BINDING=no \
-v /data/openldap:/bitnami/openldap \
-e LDAP_ENABLE_TLS=yes \
-e LDAP_TLS_CERT_FILE=/bitnami/openldap/certs/xiodi.cn.crt \
-e LDAP_TLS_KEY_FILE=/bitnami/openldap/certs/xiodi.cn.key \
-e LDAP_TLS_CA_FILE=/bitnami/openldap/certs/ca.crt \
bitnami/openldap:2.6.10