Skip to content

Commit 513e119

Browse files
committed
feat: security upgrade for subscriptions, client output improvements
- replace Nekobox with Throne for client output; generate independent Throne config - security upgrade: remove `insecure=true`, use TLS certificate fingerprint verification feat: 订阅链接安全升级,客户端输出优化 - 使用 Throne 替代 Nekobox 输出客户端配置,独立生成 Throne 配置 - 安全升级:移除 `insecure=true`,启用 TLS 证书指纹校验
1 parent 803cfa7 commit 513e119

3 files changed

Lines changed: 62 additions & 52 deletions

File tree

README.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
- [7.使用 Cloudflare API 自动创建 Argo](README.md#7使用-cloudflare-api-自动创建-argo)
1414
- [8.Vmess / Vless 方案设置任意端口回源以使用 CDN](README.md#8vmess--vless-方案设置任意端口回源以使用-cdn)
1515
- [9.Docker 和 Docker compose 安装](README.md#9docker-和-docker-compose-安装)
16-
- [10.Nekobox 设置 shadowTLS 方法](README.md#10nekobox-设置-shadowtls-方法)
16+
- [10.Throne 设置 shadowTLS 方法](README.md#10throne-设置-shadowtls-方法)
1717
- [11.主体目录文件及说明](README.md#11主体目录文件及说明)
1818
- [12.自签证书在不同客户端中的处理方式对比](README.md#12自签证书在不同客户端中的处理方式对比)
1919
- [13.鸣谢下列作者的文章和项目](README.md#13鸣谢下列作者的文章和项目)
@@ -150,7 +150,7 @@
150150
* 一键部署多协议,可以单选、多选或全选 ShadowTLS v3 / XTLS Reality / Hysteria2 / Tuic V5 / ShadowSocks / Trojan / Vmess + ws / Vless + ws + tls / H2 Reality / gRPC Reality / AnyTLS / NaiveProxy, 总有一款适合你
151151
* 所有协议均不需要域名,可选 Cloudflare Argo Tunnel 内网穿透以支持传统方式为 websocket 的协议
152152
* Hysteria2 支持 Realm 模式,适用于回国、没有公网入口、住宅 NAT、CGNAT 等无法开放入站端口的机器;有公网入口时不建议使用,并可选 WARP 辅助打洞提高严格 NAT 环境下的成功率
153-
* 节点信息输出到 V2rayN / Clash Verge / 小火箭 / Nekobox / Sing-box (SFI, SFA, SFM),订阅自动适配客户端,一个订阅 url 走天下
153+
* 节点信息输出到 V2rayN / Clash Verge / 小火箭 / Throne / Sing-box (SFI, SFA, SFM),订阅自动适配客户端,一个订阅 url 走天下
154154
* 自定义端口,适合有限开放端口的 nat 小鸡
155155
* 内置 warp 链式代理解锁 chatGPT
156156
* 智能判断操作系统: Ubuntu 、Debian 、CentOS 、Alpine 、Armbian 和 Arch Linux,请务必选择 LTS 系统
@@ -573,8 +573,8 @@ services:
573573
| -e ARGO_AUTH || Argo 认证信息,可以是 Json, Token 或者 Cloudflare API,与 ARGO_DOMAIN 一并使用才能生效,不指定的话将使用临时隧道 |
574574

575575

576-
## 10.Nekobox 设置 shadowTLS 方法
577-
1. 复制脚本输出的两个 Neko links 进去
576+
## 10.Throne 设置 shadowTLS 方法
577+
1. 复制脚本输出的两个 Throne links 进去
578578
<img width="630" alt="image" src="https://github.com/fscarmen/sing-box/assets/62703343/db5960f3-63b1-4145-90a5-b01066dd39be">
579579

580580
2. 设置链式代理,并启用
@@ -618,7 +618,7 @@ services:
618618
|-- logs
619619
| `-- box.log # sing-box 运行日志文件
620620
|-- subscribe # sing-box server 配置文件目录
621-
| |-- qr # Nekoray / V2rayN / Shadowrock 订阅二维码
621+
| |-- qr # Throne / V2rayN / Shadowrock 订阅二维码
622622
| |-- shadowrocket # Shadowrock 订阅文件
623623
| |-- proxies # Clash proxy provider 订阅文件
624624
| |-- clash # Clash 订阅文件1
@@ -627,7 +627,7 @@ services:
627627
| |-- sing-box-phone # SFI / SFA 订阅文件1
628628
| |-- sing-box2 # SFI / SFA / SFM 订阅文件2
629629
| |-- v2rayn # V2rayN 订阅文件
630-
| `-- neko # Nekoray 订阅文件
630+
| `-- throne # Throne 订阅文件
631631
|-- cache.db # sing-box 缓存文件
632632
|-- nginx.conf # 用于订阅服务的 nginx 配置文件
633633
|-- language # 存放脚本语言文件,E 为英文,C 为中文
@@ -647,14 +647,14 @@ services:
647647
| 客户端 / 工具 | 使用的证书验证方式 | SNI 是否必须匹配 SAN | 是否依赖完整证书链 | 使用的 Hash / 指纹类型 | SNI 用途说明 |
648648
|---------------|---------------------|------------------------|------------------------|--------------------------|----------------------|
649649
| **V2RayN** | 标准 X.509 证书链验证 | ****(必须匹配) | ✔ 是 | 不使用指纹 | 用于 TLS Hostname 验证(必须与 SAN 一致) |
650-
| **NekoBox** | 标准 X.509 证书链验证 | ****(必须匹配) | ✔ 是 | 不使用指纹 | 用于 TLS Hostname 验证(必须与 SAN 一致) |
650+
| **Throne** | 标准 X.509 证书链验证 | ****(必须匹配) | ✔ 是 | 不使用指纹 | 用于 TLS Hostname 验证(必须与 SAN 一致) |
651651
| **ShadowRocket** | 对证书 **DER 全内容** 做 SHA-256 | ✖ 不需要匹配 | ✖ 不依赖证书链 | **SHA-256(DER)** | 仅用于伪装,可为空或任意域名 |
652652
| **Clash Verge / Meta** | 对证书 **DER 全内容** 做 SHA-256 | ✖ 不需要匹配 | ✖ 不依赖证书链 | **SHA-256(DER)** | 仅用于伪装,可为空或任意域名 |
653653
| **Sing-box** | 仅验证 SPKI 公钥(SPKI pin) | ✖ 不需要匹配 | ✖ 不依赖证书链 | **SHA-256(SPKI Base64)** | 仅用于伪装,可为空或任意域名 |
654654

655655

656656
### 结论:
657-
- **V2RayN、NekoBox 必须要 SAN = SNI**,否则“x509: cannot validate certificate because it doesn't contain IP SAN”。
657+
- **V2RayN、Throne 必须要 SAN = SNI**,否则“x509: cannot validate certificate because it doesn't contain IP SAN”。
658658
- **ShadowRocket、Clash、Sing-box、HY2、TUIC 完全不需要 SAN**,因为用的是指纹机制。
659659

660660
---
@@ -675,7 +675,7 @@ services:
675675
| EC 曲线参数 ||||
676676
| Signature Algorithm ||||
677677
| Signature Value ||||
678-
| 用途场景 | V2RayN / NekoBox | ShadowRocket / Clash | Sing-box / Hysteria2 / TUIC |
678+
| 用途场景 | V2RayN / Throne | ShadowRocket / Clash | Sing-box / Hysteria2 / TUIC |
679679

680680
---
681681

@@ -685,7 +685,7 @@ services:
685685
- 完整验证 CA → Leaf 证书
686686
- **必须要求:SNI = SAN 中的一个 DNS 名称**
687687
- 不允许 SAN 不匹配或缺失
688-
- 用于:**V2RayN / NekoBox**
688+
- 用于:**V2RayN / Throne**
689689

690690
#### **2. SHA-256(DER) 指纹**
691691
- 对证书 **整体 DER(二进制)内容** 计算 SHA-256

docker_init.sh

Lines changed: 33 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#!/usr/bin/env bash
2-
# 脚本更新日期 2026.04.23
2+
# 脚本更新日期 2026.06.05
33
set -e
44

55
WORK_DIR=/sing-box
@@ -893,7 +893,8 @@ EOF
893893
# 获取自签证书指纹。argo 回源的是由 Google Trust Services(谷歌信任服务)作为中间 CA(CN=WE1)签发,受信任的证书(非自签名)
894894
local SELF_SIGNED_FINGERPRINT_SHA256=$(openssl x509 -fingerprint -noout -sha256 -in ${WORK_DIR}/cert/cert.pem | awk -F '=' '{print $NF}')
895895
local SELF_SIGNED_FINGERPRINT_BASE64=$(openssl x509 -in ${WORK_DIR}/cert/cert.pem -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64)
896-
local CERT_URL=$(awk '{printf "%s\\r\\n", $0}' ${WORK_DIR}/cert/cert.pem)
896+
local CERT_URL_1=$(awk '{printf "%s,", $0}' ${WORK_DIR}/cert/cert.pem | sed 's/ /%20/g; s/,$//')
897+
local CERT_URL_2=$(awk '{printf "%s\\r\\n", $0}' ${WORK_DIR}/cert/cert.pem)
897898

898899
# 生成 nginx 配置文件
899900
local NGINX_CONF="user root;
@@ -910,8 +911,9 @@ EOF
910911
http {
911912
map \$http_user_agent \$path {
912913
default /; # 默认路径
913-
~*v2rayN|Neko|Throne /base64; # 匹配 V2rayN / NekoBox / Throne 客户端
914+
~*v2rayN /v2rayn; # 匹配 V2rayN 客户端
914915
~*clash /clash; # 匹配 Clash 客户端
916+
~*Throne|Neko /throne; # 匹配 Neko / Throne 客户端
915917
~*ShadowRocket /shadowrocket; # 匹配 ShadowRocket 客户端
916918
~*SFM|SFI|SFA /sing-box; # 匹配 Sing-box 官方客户端
917919
# ~*Chrome|Firefox|Mozilla /; # 添加更多的分流规则
@@ -1102,11 +1104,11 @@ vless://${UUID}@${SERVER_IP_1}:${PORT_XTLS_REALITY}?encryption=none&flow=xtls-rp
11021104

11031105
[ "${HYSTERIA2}" = 'true' ] && local V2RAYN_SUBSCRIBE+="
11041106
----------------------------
1105-
v2rayn://hysteria2/$(echo -n "{\"ConfigType\":7,\"ConfigVersion\":4,\"Remarks\":\"${NODE_NAME} hysteria2\",\"Address\":\"${SERVER_IP}\",\"Port\":${PORT_HYSTERIA2},\"Password\":\"${UUID}\",\"StreamSecurity\":\"tls\",\"AllowInsecure\":\"false\",\"Sni\":\"addons.mozilla.org\",\"Cert\":\"${CERT_URL}\",\"ProtoExtraObj\":{\"UpMbps\":200,\"DownMbps\":1000}}" | base64 -w0 | tr '+/' '-_' | tr -d '=')"
1107+
v2rayn://hysteria2/$(echo -n "{\"ConfigType\":7,\"ConfigVersion\":4,\"Remarks\":\"${NODE_NAME} hysteria2\",\"Address\":\"${SERVER_IP}\",\"Port\":${PORT_HYSTERIA2},\"Password\":\"${UUID}\",\"StreamSecurity\":\"tls\",\"AllowInsecure\":\"false\",\"Sni\":\"addons.mozilla.org\",\"Cert\":\"${CERT_URL_2}\",\"ProtoExtraObj\":{\"UpMbps\":200,\"DownMbps\":1000}}" | base64 -w0 | tr '+/' '-_' | tr -d '=')"
11061108

11071109
[ "${TUIC}" = 'true' ] && local V2RAYN_SUBSCRIBE+="
11081110
----------------------------
1109-
v2rayn://tuic/$(echo -n "{\"ConfigType\":8,\"CoreType\":24,\"ConfigVersion\":4,\"Remarks\":\"${NODE_NAME} tuic\",\"Address\":\"${SERVER_IP}\",\"Port\":${PORT_TUIC},\"Password\":\"${UUID}\",\"Username\":\"${UUID}\",\"StreamSecurity\":\"tls\",\"AllowInsecure\":\"false\",\"Sni\":\"addons.mozilla.org\",\"Alpn\":\"h3\",\"Cert\":\"${CERT_URL}\",\"ProtoExtraObj\":{\"CongestionControl\":\"bbr\"}}" | base64 -w0 | tr '+/' '-_' | tr -d '=')"
1111+
v2rayn://tuic/$(echo -n "{\"ConfigType\":8,\"CoreType\":24,\"ConfigVersion\":4,\"Remarks\":\"${NODE_NAME} tuic\",\"Address\":\"${SERVER_IP}\",\"Port\":${PORT_TUIC},\"Password\":\"${UUID}\",\"Username\":\"${UUID}\",\"StreamSecurity\":\"tls\",\"AllowInsecure\":\"false\",\"Sni\":\"addons.mozilla.org\",\"Alpn\":\"h3\",\"Cert\":\"${CERT_URL_2}\",\"ProtoExtraObj\":{\"CongestionControl\":\"bbr\"}}" | base64 -w0 | tr '+/' '-_' | tr -d '=')"
11101112

11111113
[ "${SHADOWTLS}" = 'true' ] && local V2RAYN_SUBSCRIBE+="
11121114
----------------------------
@@ -1165,7 +1167,7 @@ ss://$(echo -n "${SIP022_METHOD}:${SIP022_PASSWORD}@${SERVER_IP_1}:$PORT_SHADOWS
11651167

11661168
[ "${TROJAN}" = 'true' ] && local V2RAYN_SUBSCRIBE+="
11671169
----------------------------
1168-
trojan://${UUID}@${SERVER_IP_1}:$PORT_TROJAN?security=tls&insecure=1&allowInsecure=1&pcs=${SELF_SIGNED_FINGERPRINT_SHA256//:/}&type=tcp&headerType=none#${NODE_NAME// /%20}%20trojan"
1170+
v2rayn://trojan/$(echo -n "{\"ConfigType\":6,\"ConfigVersion\":4,\"Remarks\":\"${NODE_NAME} trojan\",\"Address\":\"${SERVER_IP}\",\"Port\":${PORT_TROJAN},\"Password\":\"${UUID}\",\"Network\":\"raw\",\"StreamSecurity\":\"tls\",\"AllowInsecure\":\"false\",\"Sni\":\"addons.mozilla.org\",\"Cert\":\"${CERT_URL_2}\"}" | base64 -w0 | tr '+/' '-_' | tr -d '=')"
11691171

11701172
[ "${VMESS_WS}" = 'true' ] && local V2RAYN_SUBSCRIBE+="
11711173
----------------------------
@@ -1177,68 +1179,68 @@ vless://${UUID}@${CDN}:443?encryption=none&security=tls&sni=${ARGO_DOMAIN}&type=
11771179

11781180
[ "${H2_REALITY}" = 'true' ] && local V2RAYN_SUBSCRIBE+="
11791181
----------------------------
1180-
vless://${UUID}@${SERVER_IP_1}:${PORT_H2_REALITY}?encryption=none&security=reality&sni=addons.mozilla.org&fp=firefox&pbk=${REALITY_PUBLIC}&type=http#${NODE_NAME// /%20}%20h2-reality"
1182+
v2rayn://vless/$(echo -n "{\"ConfigType\":5,\"CoreType\":24,\"ConfigVersion\":4,\"Remarks\":\"${NODE_NAME} h2-reality\",\"Address\":\"${SERVER_IP}\",\"Port\":${PORT_H2_REALITY},\"Password\":\"${UUID}\",\"Network\":\"raw\",\"StreamSecurity\":\"reality\",\"AllowInsecure\":\"false\",\"Sni\":\"addons.mozilla.org\",\"Fingerprint\":\"firefox\",\"PublicKey\":\"${REALITY_PUBLIC}\"}" | base64 -w0 | tr '+/' '-_' | tr -d '=')"
11811183

11821184
[ "${GRPC_REALITY}" = 'true' ] && local V2RAYN_SUBSCRIBE+="
11831185
----------------------------
11841186
vless://${UUID}@${SERVER_IP_1}:${PORT_GRPC_REALITY}?encryption=none&security=reality&sni=addons.mozilla.org&fp=firefox&pbk=${REALITY_PUBLIC}&type=grpc&serviceName=grpc&mode=gun#${NODE_NAME// /%20}%20grpc-reality"
11851187

11861188
[ "${ANYTLS}" = 'true' ] && local V2RAYN_SUBSCRIBE+="
11871189
----------------------------
1188-
v2rayn://anytls/$(echo -n "{\"ConfigType\":11,\"CoreType\":24,\"ConfigVersion\":4,\"Remarks\":\"${NODE_NAME} anytls\",\"Address\":\"${SERVER_IP}\",\"Port\":${PORT_ANYTLS},\"Password\":\"${UUID}\",\"StreamSecurity\":\"tls\",\"AllowInsecure\":\"false\",\"Sni\":\"addons.mozilla.org\",\"Fingerprint\":\"firefox\",\"Cert\":\"${CERT_URL}\"}" | base64 -w0 | tr '+/' '-_' | tr -d '=')"
1190+
v2rayn://anytls/$(echo -n "{\"ConfigType\":11,\"CoreType\":24,\"ConfigVersion\":4,\"Remarks\":\"${NODE_NAME} anytls\",\"Address\":\"${SERVER_IP}\",\"Port\":${PORT_ANYTLS},\"Password\":\"${UUID}\",\"StreamSecurity\":\"tls\",\"AllowInsecure\":\"false\",\"Sni\":\"addons.mozilla.org\",\"Fingerprint\":\"firefox\",\"Cert\":\"${CERT_URL_2}\"}" | base64 -w0 | tr '+/' '-_' | tr -d '=')"
11891191

11901192
echo -n "$V2RAYN_SUBSCRIBE" | sed -E '/^[ ]*#|^[ ]+|^--|^\{|^\}/d' | sed '/^$/d' | base64 -w0 > ${WORK_DIR}/subscribe/v2rayn
11911193

1192-
# 生成 NekoBox 订阅文件
1193-
[ "${XTLS_REALITY}" = 'true' ] && local NEKOBOX_SUBSCRIBE+="
1194+
# 生成 Throne 订阅文件
1195+
[ "${XTLS_REALITY}" = 'true' ] && local THRONE_SUBSCRIBE+="
11941196
----------------------------
11951197
vless://${UUID}@${SERVER_IP_1}:${PORT_XTLS_REALITY}?security=reality&sni=addons.mozilla.org&fp=firefox&pbk=${REALITY_PUBLIC}&type=tcp&flow=xtls-rprx-vision&encryption=none#${NODE_NAME// /%20}%20xtls-reality"
11961198

1197-
[ "${HYSTERIA2}" = 'true' ] && local NEKOBOX_SUBSCRIBE+="
1199+
[ "${HYSTERIA2}" = 'true' ] && local THRONE_SUBSCRIBE+="
11981200
----------------------------
1199-
hy2://${UUID}@${SERVER_IP_1}:${PORT_HYSTERIA2}?insecure=1&sni=addons.mozilla.org#${NODE_NAME// /%20}%20hysteria2"
1201+
hysteria2://${UUID}@${SERVER_IP_1}:${PORT_HYSTERIA2}?allowInsecure=false&alpn&security=tls&sni=addons.mozilla.org&upmbps=200&downmbps=1000&security=tls&tls_certificate=${CERT_URL_1}#${NODE_NAME// /%20}%20hysteria2"
12001202

1201-
[ "${TUIC}" = 'true' ] && local NEKOBOX_SUBSCRIBE+="
1203+
[ "${TUIC}" = 'true' ] && local THRONE_SUBSCRIBE+="
12021204
----------------------------
1203-
tuic://${UUID}:${UUID}@${SERVER_IP_1}:${PORT_TUIC}?congestion_control=bbr&alpn=h3&sni=addons.mozilla.org&udp_relay_mode=native&allow_insecure=1#${NODE_NAME// /%20}%20tuic"
1205+
tuic://${UUID}:${UUID}@${SERVER_IP_1}:${PORT_TUIC}?congestion_control=bbr&alpn=h3&sni=addons.mozilla.org&udp_relay_mode=native&allow_insecure=0&security=tls&tls_certificate=${CERT_URL_1}#${NODE_NAME// /%20}%20tuic"
12041206

1205-
[ "${SHADOWTLS}" = 'true' ] && local NEKOBOX_SUBSCRIBE+="
1207+
[ "${SHADOWTLS}" = 'true' ] && local THRONE_SUBSCRIBE+="
12061208
----------------------------
12071209
nekoray://custom#$(echo -n "{\"_v\":0,\"addr\":\"127.0.0.1\",\"cmd\":[\"\"],\"core\":\"internal\",\"cs\":\"{\n \\\"password\\\": \\\"${UUID}\\\",\n \\\"server\\\": \\\"${SERVER_IP_1}\\\",\n \\\"server_port\\\": ${PORT_SHADOWTLS},\n \\\"tag\\\": \\\"shadowtls-out\\\",\n \\\"tls\\\": {\n \\\"enabled\\\": true,\n \\\"server_name\\\": \\\"addons.mozilla.org\\\"\n },\n \\\"type\\\": \\\"shadowtls\\\",\n \\\"version\\\": 3\n}\n\",\"mapping_port\":0,\"name\":\"1-tls-not-use\",\"port\":1080,\"socks_port\":0}" | base64 -w0)
12081210
12091211
nekoray://shadowsocks#$(echo -n "{\"_v\":0,\"method\":\"${SIP022_METHOD}\",\"name\":\"2-ss-not-use\",\"pass\":\"${SIP022_PASSWORD}\",\"port\":0,\"stream\":{\"ed_len\":0,\"insecure\":false,\"mux_s\":0,\"net\":\"tcp\"},\"uot\":0}" | base64 -w0)"
12101212

1211-
[ "${SHADOWSOCKS}" = 'true' ] && local NEKOBOX_SUBSCRIBE+="
1213+
[ "${SHADOWSOCKS}" = 'true' ] && local THRONE_SUBSCRIBE+="
12121214
----------------------------
12131215
ss://$(echo -n "${SIP022_METHOD}:${SIP022_PASSWORD}" | base64 -w0)@${SERVER_IP_1}:$PORT_SHADOWSOCKS#${NODE_NAME// /%20}%20shadowsocks"
12141216

1215-
[ "${TROJAN}" = 'true' ] && local NEKOBOX_SUBSCRIBE+="
1217+
[ "${TROJAN}" = 'true' ] && local THRONE_SUBSCRIBE+="
12161218
----------------------------
1217-
trojan://${UUID}@${SERVER_IP_1}:$PORT_TROJAN?security=tls&sni=addons.mozilla.org&allowInsecure=1&fp=firefox&type=tcp#${NODE_NAME// /%20}%20trojan"
1219+
trojan://${UUID}@${SERVER_IP_1}:${PORT_TROJAN}?security=tls&sni=addons.mozilla.org&allowInsecure=0&tls_certificate=${CERT_URL_1}&fp=firefox&type=tcp#${NODE_NAME// /%20}%20trojan"
12181220

1219-
[ "${VMESS_WS}" = 'true' ] && local NEKOBOX_SUBSCRIBE+="
1221+
[ "${VMESS_WS}" = 'true' ] && local THRONE_SUBSCRIBE+="
12201222
----------------------------
12211223
vmess://$(echo -n "{\"add\":\"${CDN}\",\"aid\":\"0\",\"host\":\"${ARGO_DOMAIN}\",\"id\":\"${UUID}\",\"net\":\"ws\",\"path\":\"/${UUID}-vmess\",\"port\":\"80\",\"ps\":\"${NODE_NAME} vmess-ws\",\"scy\":\"auto\",\"sni\":\"\",\"tls\":\"\",\"type\":\"\",\"v\":\"2\"}" | base64 -w0)
12221224
"
12231225

1224-
[ "${VLESS_WS}" = 'true' ] && local NEKOBOX_SUBSCRIBE+="
1226+
[ "${VLESS_WS}" = 'true' ] && local THRONE_SUBSCRIBE+="
12251227
----------------------------
12261228
vless://${UUID}@${CDN}:443?security=tls&sni=${ARGO_DOMAIN}&type=ws&path=/${UUID}-vless?ed%3D2560&host=${ARGO_DOMAIN}&encryption=none#${NODE_NAME// /%20}%20vless-ws-tls
12271229
"
12281230

1229-
[ "${H2_REALITY}" = 'true' ] && local NEKOBOX_SUBSCRIBE+="
1231+
[ "${H2_REALITY}" = 'true' ] && local THRONE_SUBSCRIBE+="
12301232
----------------------------
12311233
vless://${UUID}@${SERVER_IP_1}:${PORT_H2_REALITY}?security=reality&sni=addons.mozilla.org&alpn=h2&fp=firefox&pbk=${REALITY_PUBLIC}&type=http&encryption=none#${NODE_NAME// /%20}%20h2-reality"
12321234

1233-
[ "${GRPC_REALITY}" = 'true' ] && local NEKOBOX_SUBSCRIBE+="
1235+
[ "${GRPC_REALITY}" = 'true' ] && local THRONE_SUBSCRIBE+="
12341236
----------------------------
12351237
vless://${UUID}@${SERVER_IP_1}:${PORT_GRPC_REALITY}?security=reality&sni=addons.mozilla.org&fp=firefox&pbk=${REALITY_PUBLIC}&type=grpc&serviceName=grpc&encryption=none#${NODE_NAME// /%20}%20grpc-reality"
12361238

1237-
[ "${ANYTLS}" = 'true' ] && local NEKOBOX_SUBSCRIBE+="
1239+
[ "${ANYTLS}" = 'true' ] && local THRONE_SUBSCRIBE+="
12381240
----------------------------
1239-
anytls://${UUID}@${SERVER_IP_1}:${PORT_ANYTLS}?security=tls&sni=addons.mozilla.org&insecure=1&fp=firefox#${NODE_NAME// /%20}%20anytls"
1241+
anytls://${UUID}@${SERVER_IP_1}:${PORT_ANYTLS}?idle_session_check_interval=30s&idle_session_timeout=30s&min_idle_session=5&insecure=0&security=tls&sni=addons.mozilla.org&tls_certificate=${CERT_URL_1}&fp=firefox#${NODE_NAME// /%20}%20anytls"
12401242

1241-
echo -n "$NEKOBOX_SUBSCRIBE" | sed -E '/^[ ]*#|^--/d' | sed '/^$/d' | base64 -w0 > ${WORK_DIR}/subscribe/neko
1243+
echo -n "$THRONE_SUBSCRIBE" | sed -E '/^[ ]*#|^--/d' | sed '/^$/d' | base64 -w0 > ${WORK_DIR}/subscribe/throne
12421244

12431245
# 生成 Sing-box 订阅文件
12441246
[ "${XTLS_REALITY}" = 'true' ] &&
@@ -1294,7 +1296,7 @@ anytls://${UUID}@${SERVER_IP_1}:${PORT_ANYTLS}?security=tls&sni=addons.mozilla.o
12941296

12951297
# 生成二维码 url 文件
12961298
cat > ${WORK_DIR}/subscribe/qr << EOF
1297-
自适应 Clash / V2rayN / NekoBox / ShadowRocket / SFI / SFA / SFM 客户端:
1299+
自适应 Clash / V2rayN / Throne / ShadowRocket / SFI / SFA / SFM 客户端:
12981300
模版:
12991301
https://${ARGO_DOMAIN}/${UUID}/auto
13001302
@@ -1337,10 +1339,10 @@ $(info "$(sed '1d' <<< "${CLASH_SUBSCRIBE}")")
13371339
*******************************************
13381340
┌────────────────┐
13391341
│ │
1340-
$(warning "NekoBox")
1342+
$(warning "Throne")
13411343
│ │
13421344
└────────────────┘
1343-
$(hint "${NEKOBOX_SUBSCRIBE}")
1345+
$(hint "${THRONE_SUBSCRIBE}")
13441346
13451347
*******************************************
13461348
┌────────────────┐
@@ -1368,8 +1370,8 @@ https://${ARGO_DOMAIN}/${UUID}/qr
13681370
V2rayN 订阅:
13691371
https://${ARGO_DOMAIN}/${UUID}/v2rayn")
13701372
1371-
$(hint "NekoBox 订阅:
1372-
https://${ARGO_DOMAIN}/${UUID}/neko")
1373+
$(hint "Throne 订阅:
1374+
https://${ARGO_DOMAIN}/${UUID}/throne")
13731375
13741376
$(hint "Clash 订阅:
13751377
https://${ARGO_DOMAIN}/${UUID}/clash
@@ -1382,7 +1384,7 @@ https://${ARGO_DOMAIN}/${UUID}/shadowrocket")
13821384
13831385
*******************************************
13841386
1385-
$(info " 自适应 Clash / V2rayN / NekoBox / ShadowRocket / SFI / SFA / SFM 客户端:
1387+
$(info " 自适应 Clash / V2rayN / Throne / ShadowRocket / SFI / SFA / SFM 客户端:
13861388
模版:
13871389
https://${ARGO_DOMAIN}/${UUID}/auto
13881390

0 commit comments

Comments
 (0)