Add IP and pasted certificate support

This commit is contained in:
i
2026-07-22 20:18:59 +08:00
parent f09231786f
commit d3bf52f884
2 changed files with 105 additions and 15 deletions
+8 -3
View File
@@ -9,7 +9,7 @@
每台 Relay 服务器需满足:
- Linux,≥ 1 CPU / 1 GB RAM
- 公网 IP,且有域名解析指向该 IP
- 公网 IP,且有域名解析指向该 IP;脚本里的 Relay 地址也可以直接填写 IP
- 已安装 Docker(含 `docker compose`)
- 以下端口按实际配置放行(脚本会在最后动态列出):
- `80/tcp` — Let's Encrypt HTTP challenge(仅自动证书模式需要)
@@ -71,7 +71,8 @@ Step 3.N · Relay Server #N(每台重复)
1) Let's Encrypt — 自动签发,需开放 80/tcp
2) 已有证书 — 输入宿主机目录及容器内路径(均可自定义)
3) 自签证书 — 脚本调用 openssl 生成,支持完整 Subject 字段、
额外 SAN(DNS/IP)、有效期、RSA/ECC 及密钥长度选择
额外 SAN(DNS/IP)、有效期、RSA/ECC 及密钥长度选择
4) 粘贴证书 — 直接粘贴 PEM 证书和私钥内容,由脚本写入 certs 目录
Step 4 · Main Server config.yaml Snippet
→ 打印带占位符的 config.yaml 片段(不输出真实域名和密钥)
@@ -89,7 +90,7 @@ Step 6 · Firewall Configuration(可选,可跳过)
脚本支持在已有部署上重新运行以修改配置。Step 3 中先询问输出目录,若该目录下存在 `relay.env`,脚本会自动解析并将以下字段作为默认值填入后续输入框,直接回车即保留原值,输入新值则覆盖:
- 域名、监听端口、日志级别
- 域名或 IP、监听端口、日志级别
- STUN 开关及端口
- TLS 模式、LE 邮箱、证书路径
@@ -170,6 +171,10 @@ curl -v https://relay.example.com/
证书输出到 `<输出目录>/certs/`,私钥权限自动设为 `600`。若系统未安装 `openssl`,脚本会打印等效命令供手动执行。
**粘贴证书**
选择该模式后,脚本会提示分别粘贴证书 PEM 和私钥 PEM,保存到 `<输出目录>/certs/fullchain.pem` 与 `<输出目录>/certs/privkey.pem`,并自动挂载到容器中。
## 主服务器 config.yaml 配置
Step 4 输出带占位符的配置片段,需在主服务器上手动填入真实域名和密钥: