如何通过官方 APT 仓库在 Debian 系统安装 Authelia 并验证 GPG 仓库密钥
2026/9/14 17:57:26 网站建设 项目流程

如何通过官方 APT 仓库在 Debian 系统安装 Authelia 并验证 GPG 仓库密钥

【免费下载链接】autheliaThe Single Sign-On Multi-Factor portal for web apps. OpenID Certified™ and Post-Quantum Cryptography Ready.项目地址: https://gitcode.com/GitHub_Trending/au/authelia

Authelia 是用于 Web 应用的单点登录(SSO)与多因素认证门户。如果你的目标是在 Debian 系系统上以包管理器的方式部署它,官方提供了 APT 仓库,并且仓库与其发布的 Debian 包都由同一把专用 GPG 密钥签名。本文的操作路径是:先下载并核验仓库签名密钥,把密钥的 Key ID 与官方公布的值比对一致后,再把 APT 仓库写入系统并安装authelia包,从而确保apt只会接受由该密钥签名的包。

确认仓库密钥的官方指纹

在进行任何安装操作前,先掌握官方公布的密钥参数,用于后续比对。根据 Artifact Signing and Provenance 文档,Authelia 用于签名分发产物(包括 Debian 包和 APT 仓库)的 GPG 密钥信息如下:

  • Key ID:192085915BD608A458AC58DCE461FA1531286EEA
  • Key Fingerprint:1920 8591 5BD6 08A4 58AC 58DC E461 FA15 3128 6EEA
  • 加密子密钥:7DBA42FED0069D5828A44079975E8FFC6876AFBB
  • 签因子密钥:C387CC1B5FFC25E55F75F3E6A228F3BD04CC9652
  • 密钥所有者:Authelia Security <security@authelia.com>Authelia Security <team@authelia.com>

需要注意的是,该文档同时说明:对发布产物执行这一套具体的签名验证流程,自 4.39.11 版本之后才适用。

安装依赖并下载仓库密钥

以下命令来自 Bare-Metal 部署文档 的 APT Repository 章节。命令会安装ca-certificatescurlgnupg三个系统包(如已安装可跳过),并以 root 权限把密钥文件写入/usr/share/keyrings/

sudo apt install ca-certificates curl gnupg sudo curl -fsSL https://www.authelia.com/keys/authelia-security.gpg -o /usr/share/keyrings/authelia-security.gpg

第二条命令会从官网把 keyring 文件下载到/usr/share/keyrings/authelia-security.gpg,这个路径就是下一步验证和 APT 源配置共用的位置。

用 gpg 列出密钥并与官方值比对

下载完成后,运行文档给出的验证命令:

gpg --no-default-keyring --keyring /usr/share/keyrings/authelia-security.gpg --list-keys --with-subkey-fingerprint

文档中给出的示例输出如下(标注为文档示例,用于比对 Key ID 是否正确):

/usr/share/keyrings/authelia-security.gpg ----------------------------------------- pub rsa4096 2025-06-27 [SC] 192085915BD608A458AC58DCE461FA1531286EEA uid [ unknown] Authelia Security <security@authelia.com> uid [ unknown] Authelia Security <team@authelia.com> sub rsa2048 2025-06-27 [E] [expires: 2033-06-25] 7DBA42FED0069D5828A44079975E8FFC6876AFBB sub rsa2048 2025-06-27 [SA] [expires: 2033-06-25] C387CC1B5FFC25E55F75F3E6A228F3BD04CC9652

比对要点:主密钥 ID192085915BD608A458AC58DCE461FA1531286EEA、两个 uid、以及[E][SA]两个子密钥的 ID,均应与上节官方公布的值一致。一致才继续;不一致则不要继续安装,因为后续 APT 仓库就是依赖这份密钥做签名校验的。

添加 APT 仓库

密钥验证通过后,把仓库写入sources.list.d。文档给出的命令使用$(dpkg --print-architecture)自动匹配本机架构,并通过signed-by指定前面下载的 keyring 作为该仓库的签名验证密钥:

echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/authelia-security.gpg] https://apt.authelia.com stable main" | \ sudo tee /etc/apt/sources.list.d/authelia.list > /dev/null

该命令的效果是在/etc/apt/sources.list.d/authelia.list生成一行deb源记录,仓库地址为https://apt.authelia.com,软件源为stable main

更新缓存并安装 authelia

最后执行文档给出的安装命令:

sudo apt update && sudo apt install authelia

apt update会拉取并校验新仓库的签名索引,apt install authelia从该仓库安装软件包。若签名校验失败,apt update会在输出中报出该源的验证错误,此时应回到密钥比对步骤排查。

安装之后的配置与运行说明

包安装只是第一步。仓库根目录提供了两个 systemd 单元文件示例,其中 authelia.service 显示服务以User=authelia运行,启动命令为:

/usr/bin/authelia --config /etc/authelia/configuration.yml

也就是说配置文件位于/etc/authelia/configuration.yml。按照 Get started 指南:

  • 配置文件是静态的,不通过 Web GUI 修改;Authelia首次启动时会写出与当前版本对应的配置模板作为起点,初次部署时你需要自行配置其中的关键部分(jwt_secret、认证后端、存储、sessionnotifieraccess_control)。
  • Authelia 必须以https方式对外提供服务,这一点没有例外(测试环境同样适用);Bare-Metal 文档也说明它部署在裸机时须位于反向代理之后,且代理配置需包含所需的 Headers。

完成包安装并写好configuration.yml后,即可通过代理对外暴露 Authelia,进入单点登录门户的实际配置阶段。

【免费下载链接】autheliaThe Single Sign-On Multi-Factor portal for web apps. OpenID Certified™ and Post-Quantum Cryptography Ready.项目地址: https://gitcode.com/GitHub_Trending/au/authelia

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询