镜像选择
https://github.com/osixia/docker-openldap
基本知识点
什么是 LDAP?
LDAP是轻量目录访问协议,英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP。LDAP的核心规范可参见RFC定义:LDAPman RFC page
LDAP目录以树状的层次结构来存储数据。如果你对自顶向下的DNS树或UNIX文件的目录树比较熟悉,也就很容易掌握LDAP目录树这个概念了。就象DNS的主机名那样,LDAP目录记录的标识名(Distinguished Name,简称DN)是用来读取单个记录,以及回溯到树的顶部。
为什么用 OpenLDAP?
用LDAP的原因,主要可以总结为三点:轻,快,好。
轻,表现在搭建简单,开放的Internet标准,支持跨平台的Internet协议。与市场上和开源领域的大多数产品兼容。配置简单,重复开发和对接的成本低。
快,读的速度快。目录是一个为查询、浏览和搜索而优化的数据库,它成树状结构组织数据,类似文件目录一样。目录数据库和关系数据库不同,它有优异的读性能(但写性能差,并且没有事务处理、回滚等复杂功能,不适于存储修改频繁的数据。)
好,动态,灵活,易扩展。
那么为什么用OpenLDAP呢?当然是因为免费而方便咯。
怎么用 OpenLDAP?
1. 使用yum install等等传统搭建方式
2. 使用DOCKER。吹爆docker,虽然LDAP已经很轻了,但是在windows系统上,选择docker仍然不失为非常便利的方式
搭建 OpenLDAP
1. 起一个 OpenLDAP docker image 的 container
docker run --name my-openldap-container --detach osixia/openldap:1.2.2
通过环境变量设置 LDAP 服务器的参数:
LDAP_ORGANISATION: Organisation name. Defaults to Example Inc.
LDAP_DOMAIN: Ldap domain. Defaults to example.org
LDAP_BASE_DN: Ldap base DN. If empty automatically set from LDAP_DOMAIN value. Defaults to (empty)
LDAP_ADMIN_PASSWORD Ldap Admin password. Defaults to admin
LDAP_CONFIG_PASSWORD Ldap Config password. Defaults to config
LDAP_READONLY_USER Add a read only user. Defaults to false
LDAP_READONLY_USER_USERNAME Read only user username. Defaults to readonly
LDAP_READONLY_USER_PASSWORD Read only user password. Defaults to readonly
LDAP_RFC2307BIS_SCHEMA Use rfc2307bis schema instead of nis schema. Defaults to false
2. 通过ldapsearch,ldapadd,ldapdelete,ldapmodify等参数查询、新增、删除、修改内容信息
docker exec my-openldap-container ldapsearch -x -H ldap://localhost -b dc=example,dc=org -D "cn=admin,dc=example,dc=org" -w admin
docker exec $LDAP_CID ldapadd -x -D "cn=admin,dc=example,dc=org" -w admin -f /container/service/slapd/assets/test/new-user.ldif -H ldap://ldap.example.org -ZZ
3. 更多内容,参见GitHub。
界面化查询
附一个查询工具。Emmmm,没找到附件模式,可能简书不支持?
网友评论