
authelia v4.39.22
用于Web应用程序的单点登录多因素门户,现已通过OpenID Certified™认证
Authelia 是一个开源的身份验证和授权服务器,通过 Web 门户为您的应用程序提供双因素认证和单点登录(SSO)。它是反向代理的伴侣,通过允许、拒绝或重定向请求来发挥作用。
文档可在 https://www.authelia.com/ 获取。
以下架构简图:
Authelia 可作为独立服务安装,支持从 AUR、 APT、 FreeBSD Ports、 或使用静态二进制文件、 .deb 包、Docker 或 Kubernetes 容器进行部署。
部署可通过 Helm Chart(测试版)并利用 Ingress 控制器和入口配置进行编排。
以下是 Authelia 面板的样式:
功能概要
以下是 Authelia 的主要功能列表:
- OpenID Connect 1.0 / OAuth 2.0
- 多种第二因子认证方式:
- 通过 WebAuthn(通行密钥)实现无密码认证
- 通过电子邮件确认进行身份验证的密码重置。
- 在多次无效认证尝试后限制访问。
- 细粒度访问控制,使用匹配子域、用户、用户组成员、请求 URI、请求方法和网络等条件的规则。
- 每条规则可选择单因子或双因子策略。
- 支持对受单因子策略保护的端点使用基本认证。
- 通过远程数据库和 Redis 作为高可用键值存储实现高可用性。
- 开箱即用兼容 Traefik,使用 ForwardAuth 中间件。
- 通过 LinuxServer 的 SWAG 容器以及 指南 提供精选配置。
- 兼容 Caddy,使用 forward_auth 指令。
- Kubernetes 支持:
- 兼容多种 Kubernetes Ingress 控制器和网关:
- 通过我们的 Charts 使用 Helm 安装(测试版)。
更多细节请查看概述。
如果您想了解路线图,请关注路线图。
OpenID Connect 1.0 / OAuth 2.0
Authelia 已获得 OpenID Certified™ 认证,符合 [OpenID Connect™ 协议]的 Basic OP / Implicit OP / Hybrid OP / Form Post OP / Config OP 规范。尽管此功能仍然处于路线图上的测试阶段,但已经非常全面且实现良好,并已获得全面认证。在 OpenID Connect 1.0 集成指南中了解更多关于 Authelia 的 OpenID Certified™ 状态。
代理支持
Authelia 与 nginx, Traefik, Caddy, Skipper, Envoy 或 HAProxy 配合使用。
快速入门
请参阅入门指南或下面精选的示例之一。
docker compose
docker compose 组合包是希望看到 Authelia 运行的用户的一个起点。您需要根据自己的需求进行定制,因为这些包自带自签名证书。
本地环境
本地组合包旨在无需担心配置的情况下测试 Authelia。 适用于服务器不暴露于互联网的场景。 域名将在本地 hosts 文件中定义,并使用自签名证书。
精简版
精简组合包适用于服务器暴露于互联网的场景,需要相应设置域名和 DNS,并通过 LetsEncrypt 生成证书。“精简”指的是最小化外部依赖:基于文件的用户存储、基于 SQLite 的配置存储。在这种配置下,服务无法很好地扩展。
部署
现在您已经测试了 Authelia 并希望在自己的基础设施中试用,您可以学习如何通过部署指南进行部署和使用。 该指南将展示如何在裸机以及 Kubernetes 上进行部署。
安全性
Authelia 非常重视安全性。如果您在 Authelia 中发现漏洞,请参阅我们的 安全策略。
联系选项
社区有多个联系选项,主要是 Matrix。除此之外,还有 GitHub issues 用于创建 新问题。
Matrix
社区成员被邀请加入 Matrix Space,其中包含 支持房间和 贡献房间。
- 核心团队成员在 Space 和各个房间中被标识为管理员。
- 所有频道均链接到 Discord。
Discord
社区成员被邀请加入 Discord 服务器。
- 核心团队成员在 Discord 中通过 核心团队 角色标识。
- #support 和 #contributing 频道已链接到 Matrix。
电子邮件
您可以通过 [email protected] 邮件联系核心团队。请注意 [email protected] 也可用,但严格保留用于[安全]相关事宜。
破坏性变更
由于 Authelia 仍处于积极开发阶段,可能存在破坏性变更。建议固定一个版本标签,而不是使用 latest 标签,并在升级前阅读发布说明。您将在此处找到有关破坏性变更的信息以及应如何应对这些变更。
为什么开源?
您可能会好奇,为什么 Authelia 是开源的,同时它为您的基础设施增加了大量安全性和用户体验,且零成本。之所以开源,是因为我们坚信在互联网这个战地上,安全应能以近乎零的代价让所有人受益。
此外,保持代码开源让任何愿意贡献的人都可以对其进行审计。这样您可以确信产品保持安全且不会恶意行为。
请务必记住,Authelia 并不直接暴露在互联网上(您的反向代理才是),但它仍然是您内部安全性的控制平面,因此请妥善保管!
贡献
如果您想为 Authelia 做出贡献,请阅读我们的贡献指南。Authelia 的成功离不开所有贡献者的支持,所以不必害羞,欢迎通过 Matrix 或 Discord 与我们交流,并开始贡献吧。
感谢以下这些出色的人们(表情符号说明):
本项目遵循 all-contributors 规范。 欢迎任何形式的贡献!
赞助商
招聘帮助: 我们正在积极寻找赞助,以获得代码安全审计、渗透测试或其他与提升 Authelia 安全性相关的审计。
任何公司都可以通过捐款或为项目或帮助改进 Authelia 的团队提供任何利益来成为赞助商。
JetBrains
感谢 JetBrains 为我们提供其出色工具的免费许可证。
Microsoft
我们依赖以提升生产力的流水线代理托管在 Azure 上,我们的 git 仓库 托管在 GitHub 上,这两者都是 Microsoft 的产品。
Open Collective
支持者
感谢所有的支持者!🙏 成为支持者 并帮助我们维持社区。我们目前收到的资金专门用于资助安全审计,并可能在未来引入漏洞赏金计划,以便我们尽可能多地获得发现潜在漏洞的协助。
赞助
通过 Open Collective 为 Authelia 做出贡献的公司将在下方获得特别提及。 成为赞助商。
许可证
Authelia 根据 Apache 2.0 许可证进行许可。许可证的条款详见 LICENSE。





























































































































