
nitnelave/lldaplldap是一款轻量级认证服务器,提供简化的LDAP接口用于用户认证与管理。它并非完整的LDAP服务器,而是专注于简化用户管理的系统,旨在为自托管服务(如Nextcloud、Authelia等)提供易于配置的外部认证源。通过友好的Web界面实现用户管理,并支持用户自助修改信息或通过邮件重置密码,同时兼容多种后端数据库(SQLite/MySQL/PostgreSQL)。
slapd配置,开箱即用的基础设置主要面向自托管服务器环境,适用于需要LDAP认证的开源组件集成,如:
特别适合希望避免复杂LDAP配置,但需要为多个服务提供统一用户认证的个人或小型团队。
基本运行命令:
bashdocker run -d \ --name lldap \ -p ***:*** \ # Web UI端口 -p 389:389 \ # LDAP服务端口(非加密) -v ./lldap_data:/data \ # 数据持久化 -e LLDAP_BASE_DN=dc=example,dc=com \ # 基础DN -e LLDAP_ADMIN_PASSWORD=your_secure_password \ # 管理员密码 -e LLDAP_USER_UID=1000 \ # 运行用户UID -e LLDAP_USER_GID=1000 \ # 运行用户GID lldap/lldap:latest
Docker Compose配置示例:
yamlversion: '3' services: lldap: image: lldap/lldap:latest container_name: lldap ports: - "***:***" # Web管理界面 - "389:389" # LDAP协议端口 volumes: - ./lldap_data:/data # 数据存储目录 environment: - LLDAP_BASE_DN=dc=example,dc=com # 组织基础DN - LLDAP_ADMIN_PASSWORD=secure_password # 管理员登录密码 - LLDAP_USER_UID=1000 # 容器内运行用户UID - LLDAP_USER_GID=1000 # 容器内运行用户GID - LLDAP_VERBOSE=false # 是否启用详细日志(调试用) - LLDAP_SMTP_HOST=smtp.example.com # SMTP服务器(用于密码重置) - LLDAP_SMTP_PORT=587 - LLDAP_SMTP_USER=*** - LLDAP_SMTP_PASSWORD=smtp_password - LLDAP_SMTP_FROM=LLDAP <***> restart: unless-stopped
注意:生产环境推荐使用
*-rootless镜像(如lldap/lldap:latest-rootless),直接以非root用户启动,需提前配置数据目录权限。
http://<服务器IP>:***打开Web UIcn=admin,ou=people,dc=example,dc=com)及配置的LLDAP_ADMIN_PASSWORD登录bootstrap.sh脚本从文件定义用户/组结构容器化部署推荐架构:
[用户] → [反向代理(Traefik/Nginx)] → [认证服务(Authelia/KeyCloak)] → [LLDAP服务] ↓ [其他服务(NextCloud等)]
cn=nextcloud,ou=services,...),分配最小权限多数支持LDAP认证的服务可直接集成,项目提供配置示例的服务包括:
完整列表及配置文件参见example_configs目录。
ldap://<lldap_host>:389(或ldaps://启用加密时)cn=admin,ou=people,<base_dn>)或服务专用用户DNou=people,<base_dn>(用户条目格式:cn=<username>,ou=people,<base_dn>)ou=groups,<base_dn>(组条目格式:cn=<groupname>,ou=groups,<base_dn>)(uid=<username>)(&(uid=<username>)(memberOf=cn=<group>,ou=groups,<base_dn>))lldap_strict_readonly组用户(只读权限)lldap_password_manager组用户(密码修改权限)lldap_admin组用户集成服务由于设计目标不同,以下场景不支持:
欢迎通过PR或Issue参与贡献。开发规范:
cargo fmt格式化./export_schema.sh更新schemamanifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务