feat: initial commit of clean multi-protocol singbox core script

This commit is contained in:
jocay
2026-09-27 13:11:24 +08:00
commit 34565faa6b
10 changed files with 1475 additions and 0 deletions
+115
View File
@@ -0,0 +1,115 @@
# Sing-box Core (Clean 全协议版)
基于官方原版架构重构的 Sing-box 极简核心部署与管理工具。彻底剥离原项目中 4400+ 行的臃肿代码与高危隐患,专注纯净代理服务部署与标准化多平台订阅生成。
---
## 🌟 支持协议全景
| 协议类型 | 底层传输 / 认证 | 端口默认 | 特点与适用场景 | 免域名/证书 |
| :--- | :--- | :--- | :--- | :--- |
| **VLESS-Reality** | TCP + Vision + Reality | `443/tcp` | 顶级伪装防封锁,主流科学上网首选 | **是** (借用顶级站点 SNI) |
| **Hysteria 2** | UDP + QUIC (ALPN: h3) | `8443/udp` | 恶劣网络丢包环境下极速救星,自带拥塞控制 | **是** (内置自签 EC 证书) |
| **TUIC v5** | UDP + QUIC + BBR | `9443/udp` | 低延迟双向原生 UDP 转发,移动设备表现优异 | **是** (内置自签 EC 证书) |
| **VMess-WS** | TCP + WebSocket | `8080/tcp` | 经典通用传输,可结合 CDN 反代 | **是** (纯净明文/本地反代) |
| **AnyTLS** | TCP + TLS (Padding Scheme) | `10443/tcp`| Sing-box 原生 TLS 高效协议 | **是** (内置自签 EC 证书) |
---
## 📁 模块化目录结构
```text
sb-core/
├── sb.sh # 主程序入口(交互式菜单与 CLI 自动化指令)
├── README.md # 本项目使用与开发文档
└── lib/
├── env.sh # 环境变量、常量路径定义、权限检查与终端彩色日志
├── system.sh # 系统架构检测 (amd64/arm64)、依赖安装、安全防火墙放行
├── cert.sh # ECDSA (P-256) 现代自签证书自动化生成与管理
├── singbox.sh # Sing-box 官方正版二进制下载、校验与 Systemd 守护服务
├── config.sh # 多协议配置生成引擎与 Sing-box 原生语法校验
└── info.sh # 多协议分享链接、聚合 Base64 订阅与客户端配置生成
```
---
## 🚀 快速使用
### 1. 部署与运行
在 Linux VPS(Ubuntu / Debian / CentOS / Rocky 等)以 `root` 权限执行:
```bash
git clone https://git.draws.qzz.io/jocay/singbox-script.git
cd singbox-script
chmod +x sb.sh lib/*.sh
./sb.sh
```
首次运行后会自动建立全局快捷指令,之后在系统任意目录输入 `sb` 即可调出菜单。
### 2. 交互式菜单功能
```text
================================================================
Sing-box 现代化核心管理工具 (全协议纯净版)
================================================================
核心状态: ● 运行中
----------------------------------------------------------------
1) 一键安装【五协议共存套件】 (VLESS+Hy2+TUIC+VMess+AnyTLS)
2) 自选单协议独立安装
3) 查看当前已装节点信息与分享链接
4) 启动服务
5) 停止服务
6) 重启服务
7) 查看实时日志
8) 彻底干净卸载
0) 退出
================================================================
```
### 3. CLI 命令行无交互快捷调用(适合自动化部署)
```bash
# 一键安装五协议共存套件(使用默认端口)
sb install all
# 自定义指定各协议端口安装五协议
sb install all [vless端口] [hy2端口] [tuic端口] [vmess端口] [anytls端口]
# 单独安装指定协议
sb install vless [端口] [伪装SNI] # 例如: sb install vless 443 www.apple.com
sb install hy2 [端口] # 例如: sb install hy2 8443
sb install tuic [端口] # 例如: sb install tuic 9443
sb install vmess [端口] # 例如: sb install vmess 8080
sb install anytls [端口] # 例如: sb install anytls 10443
# 常用运维
sb info # 查看当前所有节点、通用分享链接及订阅内容
sb status # 查看服务运行状态
sb restart # 重启服务
sb stop # 停止服务
sb start # 启动服务
sb log # 查看实时内核运行日志 (Ctrl+C 退出)
sb uninstall # 彻底干净卸载
```
---
## 📱 客户端配置与导出文件
执行 `sb info` 或安装完成后,所有客户端所需格式都会保存在 `/etc/sing-box/`:
1. **单协议标准通用链接**:
- `vless://...` (VLESS-Reality)
- `hy2://...` (Hysteria 2)
- `tuic://...` (TUIC v5)
- `vmess://...` (VMess-WS)
- `anytls://...` (AnyTLS)
2. **聚合 Base64 订阅内容 (`/etc/sing-box/sub_base64.txt`)**:
- 包含当前已部署的所有协议节点,可直接整段复制粘贴到客户端(v2rayN、Nekobox、Shadowrocket、Quantumult X 等)作为批量导入或订阅。
3. **Clash-Meta / Mihomo 配置文件 (`/etc/sing-box/clash_meta.yaml`)**:
- 已经按 Mihomo 规范写好各协议代理节点,直接复制进客户端配置的 `proxies` 组即可。
4. **Sing-box 官方客户端出站配置 (`/etc/sing-box/singbox_client.json`)**:
- 包含完整的 `outbounds` 片段,直接贴入官方客户端即可。
5. **完整明文信息汇总 (`/etc/sing-box/node_info.txt`)**。