server_config: 密钥体系改为每节点独立(VLESS UUID/REALITY 密钥对/short_id、SS 密码)
2026-09-10 起 jp/us/ru/aq 四节点已落实独立密钥;SNI 仍全节点统一。 旧「全套共用一套」表述同步修正(0 节/6.2/6.3)。
This commit is contained in:
+10
-7
@@ -45,11 +45,14 @@
|
|||||||
| 兼容旧客户端 | sing-box | Shadowsocks | Shadowrocket 2.x 等不支持 REALITY 的客户端 |
|
| 兼容旧客户端 | sing-box | Shadowsocks | Shadowrocket 2.x 等不支持 REALITY 的客户端 |
|
||||||
| Telegram 专用 | mtg | MTProto Fake TLS | Telegram 内置代理,抗封锁 |
|
| Telegram 专用 | mtg | MTProto Fake TLS | Telegram 内置代理,抗封锁 |
|
||||||
|
|
||||||
**核心密钥体系(全套节点共用一套):**
|
**核心密钥体系(2026-09 起改为每节点独立):**
|
||||||
- VLESS+REALITY:统一 UUID、统一 REALITY 私钥/short_id/SNI(SNI 用 `<伪装SNI域名>`,选一个高流量、TLS 指纹稳定的知名站点域名)
|
- VLESS+REALITY:每节点**独立** UUID、REALITY 密钥对、short_id;SNI 仍全节点统一(用 `<伪装SNI域名>`,选一个高流量、TLS 指纹稳定的知名站点域名)
|
||||||
- Shadowsocks:统一密码,方法 `aes-256-gcm`
|
- Shadowsocks:每节点**独立**密码,方法 `aes-256-gcm`
|
||||||
- MTProto:每台**独立 secret**(Fake TLS 类型,fronting 到 `<伪装SNI域名>`)
|
- MTProto:每台**独立 secret**(Fake TLS 类型,fronting 到 `<伪装SNI域名>`)
|
||||||
|
|
||||||
|
> 独立化的目的:单节点密钥泄漏/被污染时不波及其余节点,且换钥粒度更小。
|
||||||
|
> 代价是订阅/nodes.json 必须逐节点维护,改任一项后必须做端到端验证(见 6.3、第 10 节)。
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 1. 端口与服务规划
|
## 1. 端口与服务规划
|
||||||
@@ -253,13 +256,13 @@ install -m 755 sing-box-$SINGBOX_VER-linux-amd64/sing-box /usr/local/bin/sing-bo
|
|||||||
### 6.2 配置
|
### 6.2 配置
|
||||||
|
|
||||||
完整配置见 [sing-box/config.json](sing-box/config.json)。要点:
|
完整配置见 [sing-box/config.json](sing-box/config.json)。要点:
|
||||||
- **VLESS+REALITY**:统一 UUID、统一私钥/short_id/SNI,flow `xtls-rprx-vision`;REALITY handshake server 用 `<伪装SNI域名>:443`
|
- **VLESS+REALITY**:每节点独立 UUID/密钥对/short_id,SNI 全节点统一,flow `xtls-rprx-vision`;REALITY handshake server 用 `<伪装SNI域名>:443`
|
||||||
- **Shadowsocks**:`aes-256-gcm` + 统一密码,独立端口(兼容不支持 REALITY 的老客户端)
|
- **Shadowsocks**:`aes-256-gcm` + 每节点独立密码,独立端口(兼容不支持 REALITY 的老客户端)
|
||||||
- 无 SOCKS5 inbound(已按需移除;如需可在 inbounds 追加 `type: socks`)
|
- 无 SOCKS5 inbound(已按需移除;如需可在 inbounds 追加 `type: socks`)
|
||||||
|
|
||||||
### 6.3 REALITY 密钥生成
|
### 6.3 REALITY 密钥生成
|
||||||
|
|
||||||
首次部署生成一套(**全套节点共用**):
|
**每台节点独立生成一套**(互不共用):
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# 生成私钥/公钥(sing-box 1.13+ 内置 reality 密钥生成)
|
# 生成私钥/公钥(sing-box 1.13+ 内置 reality 密钥生成)
|
||||||
@@ -271,7 +274,7 @@ openssl rand -hex 8
|
|||||||
sing-box generate uuid
|
sing-box generate uuid
|
||||||
```
|
```
|
||||||
|
|
||||||
> 私钥只放服务端配置;公钥给客户端订阅。UUID/short_id 全节点一致。
|
> 私钥只放服务端配置;公钥给客户端订阅。UUID/密钥对/short_id 每节点独立。
|
||||||
|
|
||||||
**公钥必须推导验证,禁止手抄。** 订阅/节点配置里的 `public_key` 与服务端
|
**公钥必须推导验证,禁止手抄。** 订阅/节点配置里的 `public_key` 与服务端
|
||||||
`private_key` 必须严格配对(X25519 推导),曾发生手抄错一个字符导致全节点
|
`private_key` 必须严格配对(X25519 推导),曾发生手抄错一个字符导致全节点
|
||||||
|
|||||||
Reference in New Issue
Block a user