这是一个轻量级的LDAP目录Web界面工具。提供适用于linux/amd64和linux/arm64/v8架构的Docker镜像,可从Docker Hub获取。
!截图
jpegPhoto和thumbnailPhoto属性的图片显示该应用始终要求身份验证,即使目录允许***访问。用户凭据通过目录上的简单bind操作验证(不支持SASL)。特定用户可查看(和编辑)的内容完全由目录访问规则控制,应用严格按目录内容展示,不多不少。
适用于需要通过Web界面管理LDAP目录的场景,如企业内部用户与组信息维护、应用系统LDAP数据管理等。兼容OpenLDAP(主要测试环境),部分支持389 DS,不支持SASL认证方式。
LDAP访问通过以下可选环境变量控制(可从.env文件加载):
LDAP_URL:连接URL,默认值为ldap:///。
BASE_DN:搜索基准,例如dc=example,dc=org。
SCHEMA_DN:获取目录架构的DN,例如cn=subSchema。
LOGIN_ATTR:用户名属性,默认值为uid。
USE_TLS:启用TLS,对于ldaps连接默认启用。设为非空字符串可强制ldap连接使用STARTTLS。
INSECURE_TLS:不验证服务器TLS证书有效性,默认值为false,启用时隐含USE_TLS。
若未显式提供BASE_DN或SCHEMA_DN,将尝试从根DSE自动检测。为此,根DSE必须允许***读取,例如OpenLDAP可添加如下ACL规则:
textaccess to dn.base="" by * read
更细粒度的配置参见settings.py。
shelldocker run -p 127.0.0.1:5000:5000 \ -e LDAP_URL=ldap://your.openldap.server/ \ dnknth/ldap-ui:latest
shelldocker compose up -d
访问http://localhost:5000/,将自动以Fred Flintstone用户登录。
需先通过系统包管理器安装python-ldap依赖,否则Pip会尝试源码编译,可能因缺少开发环境失败。
在虚拟环境中安装:
shellpython3 -m venv --system-site-packages venv . venv/bin/activate pip3 install ldap-ui
安装后通过ldap-ui命令启动,支持的参数:
textUsage: ldap-ui [OPTIONS] Options: -b, --base-dn TEXT LDAP基准DN,未设置环境变量BASE_DN时必填。 -h, --host TEXT 绑定主机地址 [默认: 127.0.0.1] -p, --port INTEGER 绑定端口,设为0则自动选择可用端口 [默认: 5000] -l, --log-level [critical|error|warning|info|debug|trace] 日志级别 [默认: info] --version 显示版本信息并退出 --help 显示帮助信息
apt-get install libsasl2-dev python-dev libldap2-dev libssl-devyum install python-devel openldap-devel项目由Vue前端和Python后端(提供LDAP协议转无状态ReST API)组成。前端通过npm run build编译至backend/ldap_ui/statics目录。配置项见settings.py,可通过环境变量或.env文件覆盖。执行make命令可本地启动后端,自动安装依赖并构建前端(如需)。
UI始终通过简单bind操作认证,绑定DN的获取方式取决于环境变量配置:
uid属性搜索(可通过LOGIN_ATTR环境变量修改,如LOGIN_ATTR=cn)。BIND_PATTERN环境变量时跳过搜索。例如BIND_PATTERN=%s允许使用完整DN登录;BIND_PATTERN=%s,dc=example,dc=org可简化为cn=admin登录;BIND_PATTERN=cn=%s,dc=example,dc=org直接使用admin登录。BIND_DN和BIND_PASSWORD环境变量使用固定凭据,安全性低,不建议生产环境使用。=,默认搜索cn、gn、sn、uid属性(可配置)。f*匹配所有以f开头的上述属性值。sn=F*。AUTHORIZATION请求头,将触发HTTP Basic Authentication。A:条目的RDN(相对分辨名)为只读,需通过重命名条目修改;密码字段需点击右侧问号图标修改;架构中定义的二进制字段为只读,防止误操作。
A:PHPLdapAdmin长期未更新,作者需要替代工具并希望尝试Vue框架。
后端基于FastAPI构建,前端使用Vue.js和Tailwind CSS,感谢这些框架的开发者。
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429