# Caddy 反向代理认证方案 - **类型**: 技术教程/配置指南 - **来源**: 用户直接上传 TXT - **整理日期**: 2026-04-29 - **标签**: #caddy #reverse-proxy #authentication #api-key #bearer-token ## 内容概要 涵盖 Caddy 反向代理场景下的 5 种认证方案,从纯内置到外部委托,按复杂度递增排列。 ### 方案矩阵 | # | 方案 | 依赖 | 核心指令 | 适用场景 | |---|------|------|---------|---------| | 1 | Header 匹配器 | 无(纯内置) | `header` + `not` + `respond` | 固定 API Key / Bearer Token | | 2 | Route + Handle | 无(纯内置) | `route` + `handle` | 部分路径需认证 | | 3 | Basic Auth | 无(纯内置) | `basicauth` | 用户名密码保护 | | 4 | Forward Auth | 外部认证服务 | `forward_auth` | 复杂认证逻辑(查DB等) | | 5 | JWT 插件 | 第三方编译 | `authp` + `jwt` | 完整 JWT 生态 | ## 关键技术点 - **命名匹配器 (Named Matcher)**: Caddy 的核心抽象,`@name { ... }` 定义条件组 - **逻辑否定**: `not header` 匹配不符合条件的请求("未认证则拒绝"的反向逻辑) - **多 Key 白名单**: `@authorized` 收集多个允许的 Key,`@unauthorized { not @authorized }` 拒绝不在白名单 - **forward_auth**: Caddy 原生支持外部认证委托(返回 200 通过,401/403 拒绝)