如何在 LightNode VPS 上部署 sing-box
sing-box 使用 JSON 管理入站、出站、DNS、路由、端点和服务,适合已经了解所需协议与网络结构的用户。
LightNode 提供 sing-box 应用镜像,镜像负责准备应用环境。实际运行的配置、允许的流量、凭据、证书、防火墙和更新仍由用户管理。
创建 VPS
- 打开 sing-box VPS 页面。
- 在 LightNode 应用镜像目录中选择 sing-box。
- 选择靠近实际端点的节点。
- 根据预计流量选择配置并创建 VPS。
- 保存公网 IP 和 SSH 凭据。
按小时计费适合先检查节点延迟和连通性,再决定是否长期保留。
连接并确认服务
ssh root@YOUR_SERVER_IP
检查安装版本和服务状态:
sing-box version
sudo systemctl status sing-box --no-pager
编辑配置前,先读取 systemd 服务单元:
sudo systemctl cat sing-box
检查 ExecStart,确认应用镜像实际使用的配置文件或配置目录。不要假设其他发行版或旧教程中的路径和当前服务一致。
备份当前配置
确认真实路径后,创建带日期的备份。如果服务使用 /etc/sing-box/config.json,可以运行:
sudo cp /etc/sing-box/config.json /etc/sing-box/config.json.backup-$(date +%F-%H%M%S)
凭据和私钥不要提交到公开代码仓库,也不要出现在共享截图中。
只修改需要的字段
sing-box 当前的顶层配置可以包含日志、DNS、端点、入站、出站、路由、服务和实验功能。
协议字段会随版本变化,应根据 VPS 已安装的版本查看 sing-box 官方配置文档。一份 JSON 语法正确的旧配置,也可能因为字段变化而无法运行。
用习惯的编辑器修改实际配置文件:
sudo nano /etc/sing-box/config.json
如果 systemd 服务显示的是其他路径,请替换示例命令中的文件名。
重启前先校验
对实际配置文件运行检查:
sudo sing-box check -c /etc/sing-box/config.json
如果 systemd 使用配置目录,则应使用 ExecStart 中对应的目录或参数。所有错误都处理完以后再重启服务。
sudo systemctl restart sing-box
sudo systemctl status sing-box --no-pager
sudo journalctl -u sing-box --output cat -e
sing-box 官方包管理文档列出了当前软件包使用的 systemd 管理命令。
只开放必要端口
LightNode 防火墙和 VPS 内的防火墙规则应与已经校验的入站配置一致。不要把管理端口或未使用的入站暴露到公网。
接入正式流量前,从已授权客户端分别测试需要的端口,并检查 sing-box 日志。服务正常运行也不能证明 DNS 和路由已经符合预期,两者需要单独验证。
回退失败的修改
新配置无法运行时,恢复备份并重启:
sudo cp /etc/sing-box/config.json.backup-TIMESTAMP /etc/sing-box/config.json
sudo sing-box check -c /etc/sing-box/config.json
sudo systemctl restart sing-box
修改服务和防火墙时保留一个 SSH 会话。普通网络访问被错误规则阻断后,还可以通过 LightNode 控制台恢复。
日常维护
- 修改配置前记录当前 sing-box 版本。
- 每次较大修改前备份实际配置文件。
- 重启前运行
sing-box check。 - 重启后检查 systemd 状态和日志。
- 凭据与私钥不要进入源码仓库。
- 增删入站后重新检查开放端口。
LightNode 提供 VPS 和应用镜像,网络策略与 sing-box 配置由用户管理。
