Files
ryan 600a7acdfb docs: 核查并润色文档,对齐项目实际实现
- 删除未经验证的环境要求(Docker 版本号、浏览器条目)与括号废话
- 故障排查改为真实处理路径(升级→重新发布→强制同步→重建 Agent→提交 issue),删除仅开发时用的排障章节
- 删除设计文档中的测试与验收、实现检查清单、贡献者阅读建议等开发内容
- 修正与代码不符的事实:reset-passwd 命令名、证书续签窗口 7 天、Pages 检查间隔 1440 分钟、Relay vhost 端口 8080、SSO 仅支持 OIDC 等
- 去除口语化表述与无意义括号,改写「不是…而是…」句式
- 同步修正文档站链接锚点,构建验证通过
2026-08-16 17:49:57 +08:00

69 lines
4.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# TLS 证书与自动续期
本指南介绍如何在 OpenFlare 中管理 TLS 证书。为了使用 HTTPS 安全加密流量,你需要配置对应的证书。OpenFlare 支持**手动导入已有证书**以及**通过 ACME 自动申请与托管续期**。
---
## 方式一:手动导入已有证书
如果你已经从第三方服务商(如腾讯云、阿里云等)申请了免费或收费的证书,或者在本地生成了自签名证书:
1. 登录管理端控制面板,进入左侧导航 **「网站管理」->「TLS证书」** 页面。
2. 点击右上角的 **「导入证书」**。
3. 填写配置信息:
* **证书名称**:输入一个易于识别的别名(如 `my-domain-cert`)。
* **证书内容(PEM)**:复制并粘贴 PEM 格式的证书公钥内容(通常以 `-----BEGIN CERTIFICATE-----` 开头)。
* **证书私钥(KEY)**:复制并粘贴证书的私钥内容(通常以 `-----BEGIN PRIVATE KEY-----` 或 `-----BEGIN RSA PRIVATE KEY-----` 开头)。
4. 点击 **「保存」**。导入成功后,该证书即可在配置域名时直接绑定使用。
---
## 方式二:自动申请与到期自动续签(ACME)
OpenFlare 内置了 ACME 客户端并对接了 **Asynq 异步任务队列**。通过配合云解析服务商的 DNS API,系统能自动完成 DNS-01 挑战(Challenge)校验,并向 CA(默认 Let's Encrypt)申请通配符/单域名证书,并在**到期前 7 天自动触发续签**。
### 第一步:在 Cloudflare 申请 DNS API Token
为了使 OpenFlare 能够自动在你的域名下添加 TXT 记录以完成 DNS 校验,你需要准备一个具有特定权限的 Cloudflare API Token。
> [!IMPORTANT]
> 安全起见,**强烈建议使用限定权限的 API Token**,而非全局 API Key(Global API Key)。
1. 登录 [Cloudflare 控制台](https://dash.cloudflare.com/)。
2. 点击右上角的用户头像,选择 **「我的个人资料(My Profile)」**。
3. 在左侧菜单中选择 **「API 令牌(API Tokens)」**,然后点击 **「创建令牌(Create Token)」**。
4. 找到 **「编辑区域 DNS(Edit Zone DNS)」** 模板,点击 **「使用模板(Use template)」**。
5. 配置令牌权限与范围(保持默认或根据实际情况限定):
* **权限(Permissions)**:
* `区域(Zone)` - `DNS` - `编辑(Edit)`(必须,ACME 写入 TXT 记录用)
* `区域(Zone)` - `区域(Zone)` - `读取(Read)`(必须,用于列出和检索区域 ID)
* **区域资源(Zone Resources)**:
* 选择 **「包括(Include)」** -> **「所有区域(All zones)」**,或者选择 **「特定区域(Specific zone)」** 并指向你托管的特定域名。
6. 点击 **「继续以转到摘要(Continue to summary)」**,确认无误后点击 **「创建令牌(Create Token)」**。
7. 复制生成的 **API 令牌(Token)** 字符串。该令牌仅展示一次,请妥善保存。
### 第二步:在控制端添加 DNS 账号
1. 登录 OpenFlare 管理端,进入左侧导航 **「网站管理」->「DNS账号」**。
2. 点击 **「添加账号」**。
3. 填写配置信息:
* **账号名称**:如 `cloudflare-main`。
* **DNS 服务商**:选择 `Cloudflare`。
* **API Token**:填入刚刚在 Cloudflare 复制的 API 令牌(该值在入库时会自动加密存储)。
4. 点击 **「保存」**。
### 第三步:提交证书申请任务
1. 进入左侧导航 **「网站管理」->「TLS证书」**,点击右上角 **「申请证书」**。
2. 在申请表单中填写:
* **证书名称**:自定义名称(如 `wildcard-example-cert`)。
* **主域名**:你申请的主域名(支持通配符,如 `example.com` 或 `*.example.com`)。
* **关联域名**:如有多个,在此处追加(支持通配符,多个域名间用英文逗号分隔)。
* **DNS 账号**:在下拉列表中选择刚才添加的 DNS 账号(如 `cloudflare-main`)。
3. 点击 **「保存并申请」**。
### 第四步:查看申请进度与续期状态
- **查看实时进度**:保存后,系统会向 Asynq 队列投递单证书续期/申请任务(`of_ssl_single_renew`)。你可以进入管理后台的任务或节点日志页面,实时查看每一步(添加 TXT 记录、DNS 记录全球生效探测、ACME 验证、证书颁发落地等)的详细日志。
- **自动续期**:所有通过 ACME 申请的证书都会被系统自动托管。后台的 Scheduler 每日会自动扫描证书有效期,在到期前 7 天自动通过异步任务触发续签,无需任何手动维护。