Ongoing
Sbx — sing-box 一鍵部署腳本
將 sing-box 代理伺服器的部署時間從數小時縮短至 2 分鐘,支援 VLESS+Reality、多用戶管理、Cloudflare Warp 整合。
Overview
Sbx 是一個基於 sing-box 的一鍵安裝與管理腳本,專為 VPS 使用者設計。提供 VLESS+Reality 協議、多用戶管理、Cloudflare Warp 整合、自動化防火牆配置等功能。
Problem
手動部署 sing-box 需要大量配置工作:TLS 憑證、協議選擇、防火牆規則、多用戶管理。新手容易出錯,且缺乏系統化的管理工具。
Constraints
- 必須相容 Ubuntu 20.04+/Debian 11+
- 需支援 IPv4/IPv6 雙棧
- 腳本需零依賴(僅 bash)
- 不能影響現有服務
Approach
採用模組化 bash 腳本設計,將安裝、配置、用戶管理、Warp 整合分離為獨立模組。使用互動式選單降低使用門檻,同時支援命令列參數供自動化使用。
Key Decisions
選擇 sing-box 而非 Xray/Shadowsocks
Reasoning:
sing-box 效能更好、協議支援全面、社群活躍
Alternatives considered:
- Xray-core
- Shadowsocks-rust
純 bash 而非 Python/Go
Reasoning:
零依賴、所有 Linux 發行版原生支援、方便使用者審計原始碼
Alternatives considered:
- Python 腳本
- Go 編譯二進位
VLESS+Reality 作為預設協議
Reasoning:
Reality 協定可完美偽裝流量,無需購買域名或 TLS 憑證
Alternatives considered:
- VMess+WebSocket+TLS
- Trojan
Tech Stack
- Bash
- sing-box
- Cloudflare Warp
- systemd
- UFW
Result & Impact
- 數小時 → 2 分鐘部署時間
降低了 sing-box 的入門門檻,讓非技術使用者也能安全部署代理服務。
Learnings
- Bash 腳本的最佳實踐:set -euo pipefail + 錯誤處理
- 互動式 TUI 設計:使用者體驗比功能更重要
- 跨發行版相容性:Ubuntu/Debian 套件名稱差異處理
Sbx 是一個基於 sing-box 的一鍵安裝與管理腳本,專為 VPS 使用者設計。提供 VLESS+Reality 協議、多用戶管理、Cloudflare Warp 整合、自動化防火牆配置等功能。