TLS zh - FrankoonG/hy2scale GitHub Wiki

🌐 English | 中文 | 한국어

TLS 证书管理

HY2 SCALE 内置一个简易 PKI UI,用于管理 Hysteria 2、Web UI 和 IKEv2 MSCHAPv2 所需的证书。

TLS 页面

证书存储

证书存放在 /data/tls/

/data/tls/
├── default.crt     # PEM 证书
├── default.key     # 私钥
└── default.name    # 显示名称

每张证书由三元组 {id}.crt{id}.key{id}.name 组成。

默认证书

首次启动时,会自动生成自签名证书:

  • IDdefault
  • 算法 — ECDSA P-256
  • 有效期 — 10 年
  • CN/SAN — 节点 ID + 派生域名

Hysteria 2 QUIC 服务器开箱即用的就是这张证书,可随时替换。

操作

TLS 表格遵循 HY2 SCALE 共用的「先选中再操作」模式:单击某条证书行进入单选,再点击卡片右上角的绿色 Edit 按钮(位于 Bulk Delete+ New 之间)。点击卡片体之外的任意空白处 — 页面标题、卡片页头 — 即清掉单行选中(多选保持粘性)。行首的 复选框单元格 整片加宽 padding 都是点击区域,不止小输入框本身。

生成

点击 + 新建 并填写:

字段 说明
名称 显示名称
域名 主题备用名称(SAN,逗号分隔)
天数 有效期(默认 3650)
CA 勾选表示生成 CA 证书

生成的证书使用 ECDSA P-256,序列号为随机 128 位。

导入 PEM

将 PEM 文本形式的证书和私钥粘贴进来。

从路径导入

让 UI 指向磁盘上已有的文件(例如 /etc/letsencrypt/live/example.com/fullchain.pem)。文件会被 复制/data/tls/ — 后续对原文件的修改不会被跟踪。

使用 CA 签发

如果列表中有 CA 证书,可使用 签名:选择签发者、输入主题 CN 和 SAN、设置有效期,新的叶证书即出现,并带有指回父证书的 CA 徽章。

导出

每张证书上的 PEM 按钮可将该证书回传给你。

删除

警告 — 不要删除正在被 Hysteria 2、HTTPS 或 IKEv2 使用的证书,先将这些服务切换到其他证书。删除正在使用的证书会使服务中断直到重新配置。

证书的使用位置

服务 角色
Hysteria 2 必须 — QUIC TLS
Web UI HTTPS 可选 — 为 /scale 启用 HTTPS
IKEv2 MSCHAPv2 必须 — 服务器向客户端认证

Hysteria 2

默认的自签名证书可用于网状中继(对等节点设置 insecure: true 或通过 ca 固定证书)。对于面向公网的 Hysteria 2 客户端,可换成由 Let's Encrypt 或自建 CA 签发的正式证书。

HTTPS Web UI

设置 → Web → HTTPS 中选择证书。随后 HTTP 请求会被重定向到 HTTPS。

IKEv2 MSCHAPv2 — CA 流程

MSCHAPv2 需要客户端信任的服务器证书。推荐流程:

  1. 生成 一张 CA 证书(勾选 CA)。
  2. 代理 → IKEv2/IPsec 中选择该 CA 作为服务器证书选择器。
  3. 启动时,HY2 SCALE 自动签发 一张由该 CA 签名、CN/SAN 与 local_id 匹配的服务器证书。签发算法使用 RSA-2048 以获得最大的客户端兼容性(iOS / macOS / Windows / Android)。
  4. 导出 CA 证书 并安装到每台客户端设备。
  5. 客户端即可信任服务器,并使用其 HY2 SCALE 用户名 + 密码认证。

CA 证书一览

CA 证书在列表中显示 CA 徽章。叶证书会显示其签发者名称。该 PKI 可用于:

  • 自动签发 IKEv2 服务器证书
  • 为其他内部服务签发子证书
  • 无需外部依赖就建立覆盖整个网状网络的小型 PKI