Authentik 是一款以安全为核心构建的身份提供商 (IdP) 和单点登录 (SSO) 解决方案,强调灵活性、多功能性和易用性。适用于各种类型的环境,包括网站管理员、应用程序开发人员和安全工程师。可以将 Authentik 用于现有环境,以支持新协议,支持所有主流提供商,如 OAuth2、SAML、LDAP 和 SCIM。
特性
-
管理员界面: 一个可视化工具,用于创建和管理用户、组、令牌、凭据、应用程序集成、事件以及定义标准和可定制的登录和身份验证流程的流程。易于阅读的可视化仪表板显示系统状态、最近的登录和身份验证事件以及应用程序使用情况。
-
用户界面: 该控制台视图显示您已在其中实现 Authentik 的所有应用程序和集成。单击要访问的应用程序以打开它,或深入钻取以在管理员界面中编辑其配置。
-
流程: 流程是登录和身份验证过程的各个阶段发生的步骤。一个阶段代表登录过程中单个验证或逻辑步骤。 Authentik 允许自定义和精确定义这些流程。
在 Authentik 中,可以为管理员界面、用户界面和流程界面使用明亮模式或暗夜模式。
安装
Docker Compose 安装
此安装方法适用于测试环境和小规模生产环境。
要求:
- 至少具有 2 个 CPU 内核和 2 GB 内存的主机
- Docker
- Docker Compose(推荐使用 Compose v2)
准备工作:
打开终端,导航到选择的目录,运行以下命令下载最新的 docker-compose.yml
文件:
对于 Linux 系统:
wget https://goauthentik.io/docker-compose.yml
对于 macOS 系统:
curl -O https://goauthentik.io/docker-compose.yml
如果是全新的 authentik 安装,需要生成密码和密钥。可以使用 openssl
命令生成密码和密钥,并将其写入 .env
文件:
echo "PG_PASS=$(openssl rand -base64 36 | tr -d '\n')" >> .env
echo "AUTHENTIK_SECRET_KEY=$(openssl rand -base64 60 | tr -d '\n')" >> .env
由于 PostgreSQL 的限制,密码最长为 99 个字符。启用错误报告,运行以下命令:
echo "AUTHENTIK_ERROR_REPORTING__ENABLED=true" >> .env
配置端口 80/443
authentik 默认在内部端口 9000 上监听 HTTP 请求,在 9443 上监听 HTTPS 请求。要将外部端口改为 80 和 443,可以在 .env
文件中设置以下变量:
COMPOSE_PORT_HTTP=80
COMPOSE_PORT_HTTPS=443
要更改内部端口,需查看配置说明。确保运行 docker compose up -d
以使用新的端口号重新构建。