Skip to content

S-UI 进阶教程 HTTPS证书配置 + 多节点管理

  • 第一部分:为 S-UI 面板和订阅链接配置 HTTPS 证书,实现安全访问
  • 第二部分:在 S-UI 中添加 Trojan、Hysteria2等节点,实现多节点备用
  • 第三部分:S-UI 命令行菜单速查,掌握日常运维必备操作
  • 已完成 S-UI 安装并可正常登录(参考上一期视频教程)
  • 一个解析到服务器 IP 的域名(推荐托管在 Cloudflare)
  • SSH 登录服务器的权限

证书申请会临时占用 80 端口,先确认没有程序占用:

Terminal window
ss -tlnp | grep :80
# 无输出 = 空闲,可以继续

登录 Cloudflare 控制台 → 选择域名 → DNS → Records → Add record

字段填写内容
TypeA
Namepanel(子域名)
IPv4 address服务器公网 IP
Proxy status关闭(灰色云朵) ⚠️

⚠️ 必须关闭 Cloudflare 代理,否则证书申请时的 HTTP 验证会被拦截失败。

验证 DNS 解析是否生效:

Terminal window
ping panel.yourdomain.com
# 确认解析到的 IP 是本服务器 IP
Terminal window
ufw allow 80/tcp # 证书申请用,申请完可关闭
ufw allow 2095/tcp # 面板端口(替换为实际端口)
ufw allow 2096/tcp # 订阅端口(替换为实际端口)
ufw reload

使用腾讯云、阿里云等云服务商的,还需在控制台安全组中放行对应端口。

Terminal window
s-ui

进入菜单后:

输入 19 → SSL Certificate Management
输入 1 → Get SSL
输入域名:panel.yourdomain.com

等待 30~60 秒,脚本自动完成证书申请和安装。

证书默认保存在:

/root/cert/panel.yourdomain.com/
├── fullchain.cer ← 证书文件
└── panel.yourdomain.com.key ← 私钥文件
Terminal window
s-ui
# 输入 9 → Set Panel settings

按提示逐项填写(其他项直接回车跳过):

Certificate file path:
> /root/cert/panel.yourdomain.com/fullchain.cer
Certificate key file path:
> /root/cert/panel.yourdomain.com/panel.yourdomain.com.key
Subscription address:
> https://panel.yourdomain.com
Terminal window
s-ui
# 输入 13 → S-UI Restart

浏览器访问 https://panel.yourdomain.com:2095,地址栏出现 🔒 锁标志即表示配置成功。


S-UI 支持多种节点协议,推荐配置 2~3 个不同协议作为备用:

协议特点推荐场景
VLESS + Reality无需证书,隐蔽性最高日常首选
Trojan + TLS伪装成 HTTPS,稳定备用节点
Hysteria2UDP 高速,垃圾线路救星网速差时备用
TUIC v5UDP 低延迟游戏/低延迟场景
VLESS + WS + TLS可套 CDN,封 IP 时备用套 CDN 场景

LESS + WS + TLS 协议需要使用自己的域名+申请SSL证书

面板操作路径:Inbounds → Add Inbound → 选择协议 → 填写参数 → Save

Trojan 节点关键参数:

Hysteria2 节点关键参数:

TUIC 节点关键参数:

配置建议: 不同节点使用不同端口,添加后立即用客户端测试连接。


Terminal window
s-ui # 进入交互菜单
编号功能常用场景
1安装 s-ui首次部署
2更新 s-ui有新版本时
4卸载 s-ui彻底清理重装
5重置密码为默认忘记密码(→ admin/admin)
6设置用户名和密码首次安装后必做
7查看当前凭据确认账号密码
9配置面板参数修改端口、证书路径等
10查看面板参数确认当前配置
11启动服务服务停止时
12停止服务维护时
13重启服务修改配置后 最常用
14查看服务状态排查是否运行正常
15查看运行日志排查报错原因
16开启开机自启防止服务器重启后不自动运行
18开启/关闭 BBR优化网络性能(推荐开启)
19SSL 证书管理申请/续期/强制续期
20Cloudflare DNS 证书申请通配符证书

非交互式命令(适合脚本调用)

Section titled “非交互式命令(适合脚本调用)”
Terminal window
s-ui start # 启动
s-ui stop # 停止
s-ui restart # 重启
s-ui status # 查看状态
s-ui log # 查看日志
s-ui enable # 开启自启
s-ui update # 更新

首次安装后初始化:

6 → 设置强密码
18 → 开启 BBR
19→1 → 申请 SSL 证书
9 → 面板设置,含面板、订阅链接的端口和路径
13 → 重启服务

忘记密码无法登录:

5 → 重置为 admin/admin
6 → 立即重设新密码

修改配置后不生效:

13 → 重启服务(最常见解决方法)

排查服务异常:

14 → 查看状态(是否 failed)
15 → 查看日志(找具体报错)

证书异常或即将过期:

19→3 → 强制续期
13 → 重启服务加载新证书

防火墙规则未开放对于协议的UDP端口

  • vless-reality (端口: 443) —— TCP
  • trojan (端口: 56838) —— TCP
  • tuic (端口: 23978) —— UDP
  • hysteria2 (端口: 443) —— UDP

注:建议把端口对应的TCP和UDP端口,在防火墙规则中都打开

2、证书申请失败:「80 端口被占用」

Section titled “2、证书申请失败:「80 端口被占用」”
Terminal window
ss -tlnp | grep :80 # 查看占用进程
systemctl stop nginx # 临时停止(以 nginx 为例)
# 申请完成后再恢复

3、证书申请失败:「域名无法验证」

Section titled “3、证书申请失败:「域名无法验证」”

排查顺序:

  1. Cloudflare 代理是否关闭(灰色云朵)
  2. DNS 解析是否生效:ping panel.yourdomain.com 结果是否为服务器 IP
  3. 云服务商安全组是否已放行 80 端口
Terminal window
s-ui # 选 15,查看日志,找报错关键词
ls -la /root/cert/panel.yourdomain.com/ # 确认证书文件存在

常见原因:证书路径填错,或文件名大小写不对。

5、订阅链接导入后「TLS 握手失败」

Section titled “5、订阅链接导入后「TLS 握手失败」”

一般是证书过期了,SSL证书有效期是90天,到期后自动续期,但是如果80端口关闭了,就是无法自动续期;这个细节很重要