身份认证 介绍与选型指南

身份认证 介绍与选型指南:官方资料溯源的组合专题,覆盖目录服务与 LDAP(OpenLDAP 2.7.1、389 Directory Server 3.3.1、FreeIPA 4.13.4)、SSO 与 IdP(Keycloak 26.8.1、Authentik 2026.8.4、ZITADEL v4.19.5、Casdoor v4.21.0)、反向代理认证(OAuth2 Proxy v7.15.5、Authelia v4.39.28)与凭证管理(Vaultwarden 1.37.4),梳理 LDAP/Kerberos/SAML/OAuth2/OIDC 协议谱系,按子域给出量化选型对比与场景推荐组合(2026-10-19 实查,未做本地安装实测)。

身份认证身份认证2026/10/19

身份认证 介绍与选型指南

目标:基于官方公开资料(openldap.org、portal389.org、freeipa.org、keycloak.org、goauthentik.io、zitadel.com、casdoor.org、authelia.com、oauth2-proxy 官方仓库、vaultwarden 官方仓库)梳理身份认证领域四大子域十款主流开源工具——OpenLDAP、389 Directory Server、FreeIPA、Keycloak、Authentik、ZITADEL、Casdoor、OAuth2 Proxy、Authelia、Vaultwarden——的定位、版本基准、能力与选型口径,并按「目录服务 / 自建 IdP / 代理认证网关 / 凭证管理」给出场景化选型建议。本文为认知类专题文档(无单一版本号,版本口径按工具分列),仅做官方资料溯源,不做本地安装与运行实测;全部版本号、日期与社区数据于 2026-10-19 联网实查。

一、信息基准

1.1 查询说明

  • 查询日期:2026-10-19。
  • 信息获取方式:纯官方资料溯源(各项目官方网站、官方文档站与 GitHub 官方仓库的 Releases 页/releases.atom 订阅源;stars 与许可证经 GitHub 仓库页面与 shields.io 徽章实查),本文不做本地安装与运行实测。
  • 专题说明:本栏为组合专题列,标题不带单一版本号;「二、领域概述」按子域组织,「三、工具生态分类体系」按工具分列当前最新稳定版本。

1.2 版本依据表

工具最新稳定版(2026-10-19 实查)发布时间来源
OpenLDAP2.7.1(当前 feature 版) / 2.6.15(LTS)官网当前交付版本("Now available")openldap.org/software/release/
389 Directory Server389-ds-base-3.3.12026-09-07github.com/389ds/389-ds-base/releases
FreeIPA4.13.42026-09 上旬(Fedora rawhide 包构建日期 2026-09-07)freeipa.org(Releases 首列)/ packages.fedoraproject.org
Keycloak26.8.12026-10-13github.com/keycloak/keycloak/releases
Authentik2026.8.42026-10-14github.com/goauthentik/authentik/releases
ZITADELv4.19.52026-10-15github.com/zitadel/zitadel/releases
Casdoorv4.21.02026-10-18github.com/casdoor/casdoor/releases
OAuth2 Proxyv7.15.52026-10-01github.com/oauth2-proxy/oauth2-proxy/releases
Autheliav4.39.282026-09-17github.com/authelia/authelia/releases
Vaultwarden1.37.42026-10-06github.com/dani-garcia/vaultwarden/releases

补充:Keycloak、Authentik、ZITADEL、Casdoor 均处于月度甚至周度级发版节奏;Authelia 在 4.39.x 稳定线上高频修补;OpenLDAP 维持「feature + LTS」双轨(2.7.x 前瞻 / 2.6.x 长期支持);389 Directory Server 3.3.1 与 3.2.3/3.1.5/3.0.7 等多分支并行维护(2026-09-07 同日发版)。

1.3 官方来源清单

来源地址
OpenLDAP 官网https://www.openldap.org/
389 Directory Server 门户https://portal389.org/
FreeIPA 官网https://www.freeipa.org/
Keycloak 官网https://www.keycloak.org/
Authentik 官网https://goauthentik.io/
ZITADEL 官网https://zitadel.com/
Casdoor 官网https://casdoor.org/
Authelia 官网https://www.authelia.com/
OAuth2 Proxy 官方仓库https://github.com/oauth2-proxy/oauth2-proxy
Vaultwarden 官方仓库https://github.com/dani-garcia/vaultwarden

二、领域概述

身份认证(Identity & Authentication)是基础设施与应用系统的第一道门禁:它回答「你是谁(认证)」与「你能做什么(授权)」两个问题。在 Linux 服务器与自建应用的语境下,该领域通常拆成四个相互咬合的子域,外加一条贯穿始终的协议谱系。

2.1 四个子域

  1. 目录服务与 LDAP:以树状结构集中存放用户、组、主机等条目,是 Unix/Linux 世界最老牌的「账号源」。应用与系统通过 LDAP 协议查询/验证账号,代表实现为 OpenLDAP、389 Directory Server;FreeIPA 则在目录服务之上再叠加 Kerberos、DNS、CA 形成一体化身份基础设施。
  2. SSO 与身份提供方(IdP):面向 Web 应用提供单点登录,应用作为 OIDC/SAML 客户端把登录交给 IdP,代表实现为 Keycloak、Authentik、ZITADEL、Casdoor。
  3. 反向代理认证与访问网关:不改造应用本身,在 Nginx/Traefik/Caddy 等入口处拦截未认证请求,认证通过后把身份以请求头转发给上游应用。代表实现为 OAuth2 Proxy 与 Authelia,核心机制是「Forward Auth(认证子请求)」模式。
  4. 密码与凭证管理:用户名密码之外的第二层凭证库(个人/团队密码、密钥、TOTP),代表实现为 Vaultwarden(Bitwarden 服务端 API 的兼容实现)。

2.2 协议谱系(一图流讲解)

理解选型先理清协议的关系——它们不是并列竞争,而是分层演化:

  • LDAP(Lightweight Directory Access Protocol,LDAPv3,RFC 4511):查询/修改目录树的协议,也是系统级登录(PAM/NSS + SSSD)和应用账号校验的通用语言。目录服务子域的「母语」。
  • Kerberos(RFC 4120):票据式认证协议,域内主机间免密互信(SSO 的鼻祖),FreeIPA 的系统级 SSO 基石。
  • SAML 2.0:企业 Web SSO 的老牌标准,基于 XML 断言,多见于传统企业与 SaaS 采购场景。
  • OAuth 2.0(RFC 6749):授权框架(颁发 access token),本身不定义「用户是谁」。
  • OIDC(OpenID Connect):在 OAuth 2.0 之上补上身份层(ID Token,JWT 格式),是当前 Web SSO 的事实标准。可以粗记为:OIDC = OAuth 2.0 + 身份。
  • 三者关系:LDAP/Kerberos 解决「基础设施与网络内」的身份,SAML/OIDC/OAuth2 解决「Web 应用间」的身份;自建 IdP 通常把两者串起来——上游联邦 LDAP/Kerberos 账号源,下游向应用签发 OIDC/SAML。

2.3 零信任入口

零信任(Zero Trust)把「按网段划分可信区」替换为「每次访问都验证身份与设备」。在自建语境下,它的最小落法是:统一入口(反向代理)+ 强认证(IdP/MFA)+ 每请求授权(Forward Auth 子请求校验)+ 凭证治理(凭证库 + 短期令牌)。本专题的 OAuth2 Proxy/Authelia(网关侧)与 Keycloak/Authentik/ZITADEL(IdP 侧)正是零信任入口最常见的自建组合件。

三、工具生态分类体系

3.1 目录服务与 LDAP

工具当前版本(2026-10-19 实查)定位
OpenLDAP2.7.1 / LTS 2.6.15LDAPv3 的「参考级」开源实现:slapd 目录服务器 + lloadd 负载均衡代理 + ldapadd/ldapsearch 等全套命令行工具,几乎是一切 LDAP 生态的底座
389 Directory Server389-ds-base-3.3.1Red Hat/Fedora 系企业级 LDAP 目录服务(RHEL 目录服务上游),自带 Web 控制台与 dscreate/dsconf 命令行管理,多主复制成熟
FreeIPA4.13.4一体化 Linux 身份基础设施:集成 389 Directory Server + MIT Kerberos + Dogtag CA + DNS(bind-dyndb-ldap)+ SSSD,提供 ipa CLI/Web UI,支持与 Active Directory 建立信任

3.2 SSO 与身份提供方(IdP)

工具当前版本(2026-10-19 实查)定位
Keycloak26.8.1CNCF 项目、Java 实现的全功能 IAM:OIDC/OAuth2/SAML 双栈、用户联邦(LDAP/Kerberos)、身份代理、精细授权,社区与文档最厚
Authentik2026.8.4Python/Go 实现的现代化 IdP:以「流程(Flow)+ 策略(Policy)」编排登录过程,Provider 覆盖 OIDC/SAML/LDAP/RADIUS/SCIM,附带 Proxy Outpost 可兼做代理认证
ZITADELv4.19.5Go 实现的 API-first 云原生 IAM:组织(多租户)模型、OIDC/SCIM、机器用户与服务账号( PAT )能力突出,自建与官方云同构
Casdoorv4.21.0Go + React 的 UI-first IdP:OIDC/OAuth2/SAML/CAS/LDAP/SCIM 协议面宽,中文界面与国内社交登录(微信、钉钉等)集成是其特色

3.3 反向代理认证与访问网关

工具当前版本(2026-10-19 实查)定位
OAuth2 Proxyv7.15.5Go 实现的反向代理认证网关:把 GitHub/Google/OIDC 等 20+ 上游 Provider 接到 Nginx/Caddy/Traefik 后面,支持 Forward Auth 两种部署模式(签名 Cookie 直挂 / 认证子请求)
Autheliav4.39.28Go 实现的认证与授权服务器:专为反向代理配套设计(nginx/Traefik/Caddy Forward Auth),自带用户库或挂 LDAP,支持 TOTP/WebAuthn 二次认证,并可对外充当 OIDC Provider

3.4 密码与凭证管理

工具当前版本(2026-10-19 实查)定位
Vaultwarden1.37.4Rust 实现的 Bitwarden 服务端 API 兼容替代:完整兼容 Bitwarden 全家桶客户端,适合团队自建密码/密钥/TOTP 凭证库(1.37.4 为安全修复版本)

四、关键能力对比

4.1 协议支持矩阵(据各官方文档)

工具LDAP 服务端LDAP 客户端/联邦OIDC/OAuth2SAML 2.0其他
OpenLDAP是(slapd/lloadd)是(全套 CLI)否否LDAPv3、LDIF 工具链
389 Directory Server是是否否多主复制、DS 账号锁定策略
FreeIPA是(内含 389DS)是(含 AD 信任)经集成经集成Kerberos、DNS、Dogtag CA、SSSD
Keycloak否是(用户联邦 LDAP/Kerberos)是是身份代理、细粒度授权(Authorization Services)
Authentik经 Outpost 提供 LDAP 服务端是是(Provider/Source)是RADIUS、SCIM、Proxy Outpost、Flow/Policy 编排
ZITADEL否否(账号导入为主)是是(v2 起内置)SCIM v2、机器身份(服务账号/PAT)、多组织
Casdoor是(可作 LDAP 服务端)是是是CAS、SCIM、WebAuthn、国内社交登录
Authelia否是(可挂 LDAP 为账号源)是(OIDC Provider)否Forward Auth、TOTP/WebAuthn
OAuth2 Proxy否否是(消费上游)是(部分 Provider)Forward Auth、签名会话 Cookie
Vaultwarden否否否否Bitwarden 客户端协议(端到端加密保管库)

💡 技术拓展:同为「认证网关」,OAuth2 Proxy 与 Authelia 的分工不同——OAuth2 Proxy 本身不管用户库,认证完全委托上游 IdP(GitHub/OIDC),适合「已有 IdP,只想给应用加门禁」;Authelia 可以自带用户库或挂 LDAP,在不部署完整 IdP 的情况下独立提供「密码 + 2FA」门禁,也可再对外签发 OIDC。前者是「认证的搬运工」,后者是「轻量认证服务器 + 网关二合一」。

4.2 部署形态与运维复杂度

工具实现语言典型部署形态运维复杂度
OpenLDAPC发行版包(slapd)或源码编译中(schema/ACL/syncrepl 需要专业理解)
389 Directory ServerC发行版包 + dscreate 交互式实例创建中
FreeIPAPython + C 组件族专用服务器整装安装(ipa-server-install)高(接管 DNS/Kerberos/CA,需独立主机)
KeycloakJava(Quarkus)官方分发包 kc.sh 或编排模板中
AuthentikPython/Go官方编排模板(PostgreSQL 依赖)中
ZITADELGo官方编排模板(PostgreSQL/CockroachDB)中
CasdoorGo官方二进制/编排模板(DB 可选 SQLite)低
AutheliaGo单二进制/编排模板(SQLite 或 PostgreSQL)低
OAuth2 ProxyGo单二进制反向代理挂载低
VaultwardenRust单二进制(SQLite 默认)低

五、典型工作流上手

以下路径均转述自各项目官方文档,本文不做本地实测;每条工作流都给出官方入口,便于按图索骥。

5.1 OpenLDAP(官方 Quick Start:openldap.org/doc/admin27/quickstart.html)

官方快速上手的脉络:获取并编译/安装发行版 → 编辑 slapd 配置(新版本为 slapd.d 配置目录)→ 以 slapadd 导入根条目 → 启动 slapd → 用 ldapadd 写入组织单元与用户 → 用 ldapsearch 校验。2.7.1 的发布说明(openldap.org/software/release/announce.html)列出的要点:slapd 增强、退役 back-sql 与 back-perl 后端、弃用 GnuTLS 集成、lloadd 负载均衡代理增强。本站的落地实测见 《OpenLDAP 目录服务部署与命令详解》。

5.2 389 Directory Server(官方文档:portal389.org)

官方路径:安装 389-ds-base 包 → dscreate interactive(或模板文件)创建实例 → dsctl/dsconf 管理实例与复制 → Web 控制台(cockpit 插件或独立 UI)做日常管理。多分支版本(3.3/3.2/3.1/3.0)由 GitHub releases 页同步标记。

5.3 FreeIPA(官方文档:freeipa.org)

官方路径:准备一台 FQDN 与 DNS 正反解析正确的专用主机 → ipa-server-install(可选 --setup-dns)一次性装配目录服务、Kerberos、CA 与 DNS → kinit admin 获取票据 → ipa user-add 等命令管理身份 → 客户端 ipa-client-install 入域。4.13.4 的发布说明(freeipa.org/release-notes/4-13-4.html)披露了 idp-add 授权前求值(CVE-2026-79678)及 IPA API 框架访问控制整体加固。本站落地实测见 《FreeIPA 统一身份认证与目录服务部署详解》。

5.4 Keycloak(官方 Getting started:keycloak.org)

官方 README 的最小启动路径:从官网下载分发包解压后执行 bin/kc.sh start-dev(开发模式)进入控制台创建 realm 与客户端;生产模式按官方 Server Guide 配置主机名、TLS 与数据库。本站落地实测(26.8.0)见 《Keycloak 开源身份认证与访问管理平台部署详解》。26.8.1(2026-10-13)为安全修复版本,修复 OIDC 身份代理、后台登出令牌校验等 5 项 CVE(官方 Releases 页)。

5.5 Authentik(官方文档:docs.goauthentik.io)

官方路径:按官方编排模板启动核心服务(依赖 PostgreSQL)→ 初始化默认管理员 → 创建 Provider(OIDC/SAML/LDAP/Proxy)→ 创建 Application 并绑定 Provider → 按需用 Flow/Policy 定制登录编排。2026.8.4(2026-10-14)为 2026.8 线的累积修复版本(官方 Releases/2026.8 发布说明)。站内专题见 《Authentik 介绍与选型指南》。

5.6 ZITADEL(官方文档:zitadel.com/docs)

官方路径:按官方自建指南准备数据库与实例 → 初始化 Instance → 在 Console 中创建 Organization → 注册 Project 与 Application(OIDC/SAML)→ 用 Actions/API 实现自动化;机器场景使用服务账号与 PAT。v4.19.5(2026-10-15)的升级提示要求自定义登录 UI 具备 session.read 权限、设备授权流改为确认页(官方 Releases)。站内专题见 《ZITADEL v4.19.5 介绍与选型指南》。

5.7 Casdoor(官方文档:casdoor.org/docs)

官方路径:准备数据库并启动 Casdoor 服务 → 初始化 admin → 创建 Organization/Application/Provider → 应用以 OIDC 接入(官方文档给出各语言 SDK 与「通过 OAuth2 快速接入」路径)。v4.21.0(2026-10-18)新增子路径(basePath)部署等特性(官方 Releases)。

5.8 Authelia(官方文档:authelia.com/integration)

官方路径:选择「反向代理配套」或「OIDC Provider」定位 → 配置 authentication 后端(文件或 LDAP)与 access control 规则 → 在 Nginx/Traefik/Caddy 上按官方集成指引挂 Forward Auth(auth 与 verify 两类端点)→ 为需要的应用配置 TOTP/WebAuthn。v4.39.28(2026-09-17)延续 4.39.x 高频修补线(官方 Releases)。

5.9 OAuth2 Proxy(官方文档:oauth2-proxy.github.io)

官方路径:在 Provider 侧(GitHub/Google/通用 OIDC)注册应用取得 client-id/secret → 以配置文件或参数启动(--provider、--upstream、--client-id 等)→ 部署模式二选一:作为反向代理直挂上游,或 Nginx 的 auth_request 子请求模式 → 用 /ping 与 /oauth2/sign_in 验证。v7.15.5(2026-10-01)升级 Go 1.26.8 并集中修复 4 项 CVE,同时把 --bitbucket-team 弃用为 --bitbucket-workspace(官方 Releases)。本站落地实测(7.15.5)见 《OAuth2 Proxy 反向代理身份认证详解》。

5.10 Vaultwarden(官方 README:github.com/dani-garcia/vaultwarden)

官方路径:以官方分发包启动服务(默认 SQLite 存储)→ 设置 ADMIN_TOKEN 进入管理台 → 客户端(Bitwarden 桌面/移动/浏览器扩展)指向自建地址 → 按需启用组织集合做团队共享。1.37.4(2026-10-06)为安全修复版本,官方强烈建议尽快升级(官方 Releases 安全公告:组织成员吊销修复评级 High 8.1 等)。

六、适用场景与限制

6.1 适用场景

  • Linux 服务器/桌面统一账号、sudo 规则、主机准入:FreeIPA 一站式(目录 + Kerberos + DNS + CA),389 Directory Server 或 OpenLDAP 作纯目录。
  • 内网几十个 Web 应用的统一登录(SSO):Keycloak/Authentik 做 IdP,应用接 OIDC;遗留应用用 OAuth2 Proxy/Authelia 在代理层兜底。
  • 只给几个内网应用加门禁、不想到处改代码:OAuth2 Proxy(已有 IdP/社交登录)或 Authelia(独立密码 + 2FA)。
  • 多团队/多产品线的自建 IAM 平台:ZITADEL(组织/多租户、机器身份)或 Keycloak(realm 划分 + 成熟生态)。
  • 国内生态与中文管理台、需要微信/钉钉等社交登录:Casdoor。
  • 团队密码与 API 凭证的集中保管:Vaultwarden(Bitwarden 客户端生态)。

6.2 限制与注意事项

  • OpenLDAP/389DS 只解决「目录与 LDAP 认证」,没有 Web SSO 能力;反向操作,Keycloak 等也不适合当系统级账号源(应联邦 LDAP 而非替代它)。
  • FreeIPA 安装即「接管主机」(DNS/Kerberos/CA 一并装配),要求专用主机与正确的主机名/DNS 前置,不适合在已有杂役服务的机器上叠加。
  • Keycloak JVM 内存占用与其 realm/会话规模正相关,小规格机器需按官方 Guide 显式限制堆;Authentik/ZITADEL 均依赖外部 PostgreSQL,备份策略要一并规划。
  • ZITADEL 当前为 AGPL-3.0、Vaultwarden 为 AGPL-3.0:以库/服务形式二次分发或托管给第三方时需评估许可义务(各自 LICENSE)。
  • Authelia 的 OIDC Provider 能力面向轻量场景,复杂企业联邦(多 SAML、细粒度管理台)仍以 Keycloak/Authentik/ZITADEL 更稳。
  • OAuth2 Proxy 会话安全依赖签名 Cookie 与上游 Provider 的 token 生命周期配置,公网暴露时务必启用加密 Cookie 与 HTTPS(官方操作指南安全章节)。
  • 密码重置、MFA 恢复码、邀请流程等「人的流程」是自建 IdP 最常见的运营盲区,上线前应先走一遍官方文档的对应章节。

七、同类选型对比

7.1 子域 × 工具候选矩阵

子域首选备选说明
纯 LDAP 目录OpenLDAP 2.7.1 / 2.6.15 LTS389 Directory Server 3.3.1OpenLDAP 生态最通用;389DS 管理面更现代
Linux 域(账号 + Kerberos + DNS + CA)FreeIPA 4.13.4Samba AD(Windows 侧生态)FreeIPA 是 RHEL 系身份管理上游
全功能自建 IdPKeycloak 26.8.1Authentik 2026.8.4 / ZITADEL v4.19.5Keycloak 社区最厚;Authentik 编排最灵活;ZITADEL API/多租户最强
中文生态 IdPCasdoor v4.21.0Keycloak(主题汉化)Casdoor 原生中文台 + 国内社交登录
代理层认证(有 IdP)OAuth2 Proxy v7.15.5Authelia(OIDC 模式)、authentik Proxy Outpost最薄的一层网关
代理层认证(无 IdP,独立门禁)Authelia v4.39.28OAuth2 Proxy + 最小 OIDC IdP密码 + 2FA 一体
团队凭证保管Vaultwarden 1.37.4Bitwarden 官方自建版Vaultwarden 资源占用更低

7.2 量化对比(2026-10-19 实查)

维度OpenLDAP 2.7.1389DS 3.3.1FreeIPA 4.13.4Keycloak 26.8.1Authentik 2026.8.4ZITADEL v4.19.5Casdoor v4.21.0OAuth2 Proxy v7.15.5Authelia v4.39.28Vaultwarden 1.37.4
最新版本日期官网在售(2.6.15 LTS 并行)2026-09-072026-09 上旬2026-10-132026-10-142026-10-152026-10-182026-10-012026-09-172026-10-06
GitHub stars自托管(git.openldap.org,无 stars 口径)300官方站分发(无 stars 口径)37432260051534514599152132931169293
许可证OpenLDAP Public LicenseGPL-3.0+GPL-3.0+Apache-2.0MIT(核心;website 目录 CC BY-SA 4.0、enterprise 目录单列许可)AGPL-3.0Apache-2.0MITApache-2.0AGPL-3.0
实现语言CCPython + C 组件族JavaPython/GoGoGoGoGoRust
协议面LDAPv3LDAPv3LDAP + Kerberos + DNS/CAOIDC/SAML + LDAP 联邦OIDC/SAML/LDAP/RADIUS/SCIMOIDC/SAML/SCIMOIDC/SAML/CAS/LDAP/SCIMOAuth2/OIDC 消费Forward Auth + OIDCBitwarden 协议
版本节奏双轨(feature + LTS)多分支并行季度级月度级季度大版本 + 周度补丁周度补丁高频迭代月度级周度补丁月度级

(stars 取自各 GitHub 仓库页面 2026-10-19 实查;OpenLDAP 源码在 git.openldap.org 自托管、FreeIPA 经官网与 Fedora 分发,二者无 GitHub stars 口径;许可见各仓库 LICENSE 与 shields.io license 徽章实查;OpenLDAP 许可来自官网 release 页声明。)

7.3 场景 → 推荐组合

  • 从零建设 Linux 基础设施身份:FreeIPA(服务器域)→ 账号源就绪后,Keycloak 联邦 FreeIPA 的 LDAP/Kerberos 做应用 SSO → 遗留应用套 OAuth2 Proxy → 团队密码进 Vaultwarden。这是「身份栈四件套」的标准拼装。
  • 只需要给内网几个应用加登录门禁:已有任意 OIDC IdP → OAuth2 Proxy;没有 IdP 且不想部署 IdP → Authelia 独立门禁。
  • 平台工程/多团队 IAM:ZITADEL(多组织 + API 优先 + 机器身份)为主;需要最广的集成案例与文档时选 Keycloak;高度定制化登录流程选 Authentik。
  • 既有 Active Directory 的混合环境:FreeIPA 与 AD 建立信任(Linux 侧),应用 SSO 仍走 Keycloak/Casdoor 联邦 AD。
  • 极简 homelab:Authelia(或 OAuth2 Proxy + GitHub 登录)+ Vaultwarden,两件套即可覆盖门禁与凭证。

八、参考链接