S-UI 是一款基于 sing-box 的 VPS 代理面板,可以通过网页后台创建 Shadowsocks、Trojan、VMess、Naive 等多种入站协议。和手动写服务端配置相比,S-UI 更适合新手在 VPS 上管理节点、用户、订阅和证书。
本文介绍如何使用 S-UI 面板搭建 Naive 节点,并在 Windows 电脑上通过 sing-box 和 ZeroOmega 让浏览器使用这个节点,配置完成后,浏览器访问网站时会通过 VPS 出口访问网络。
如果你的 VPS 还没有安装 S-UI 面板,需要先完成面板安装和登录后台,再继续本文操作,没有面板的情况下,后面的用户管理、TLS 模板和入站管理都无法操作,可以先参考 S-UI 面板安装教程:VPS 搭建 sing-box 多协议管理面板。
本文最终实现的连接方式可以理解为:
浏览器 → ZeroOmega → 本地 SOCKS5 → sing-box → S-UI Naive 节点 → VPS 出口
这里先说明一点:ZeroOmega 不是 Naive 客户端,它只是让浏览器连接本机 SOCKS5 代理,真正连接 Naive 节点的是 Windows 版 sing-box。
如果你只是想在浏览器里使用普通 HTTP 代理,不想配置 Naive、sing-box 和本地 SOCKS5,可以参考 S-UI 面板 HTTP代理配置教程:HTTP入站设置与浏览器使用方法。HTTP 入站更适合浏览器代理这种简单场景,本文的 Naive 更适合想体验 NaiveProxy 连接方式的用户。
一、准备 VPS、域名和客户端工具
开始之前,需要先准备好这些内容:
-
- 一台可以正常使用的 VPS;
- VPS 上已经安装好 S-UI 面板;
- 一个解析到 VPS 的域名;
- 一个后面用于创建 Naive TLS 模板的域名;
- Windows 电脑一台;
- 浏览器安装 ZeroOmega 扩展;
- 下载 Windows 版
sing-box。
如果域名托管在 Cloudflare,Naive 节点使用的域名建议设置为“仅 DNS”,也就是灰色云朵,不要使用橙色云朵代理。Naive 节点会使用自定义端口,如果被 Cloudflare 代理,客户端可能无法连接。
二、在 S-UI 添加 Naive 用户
进入 S-UI 面板后台后,点击左侧菜单里的“用户管理”,然后点击右上角“添加”按钮,开始创建一个用于 Naive 节点的用户。

进入 S-UI 用户管理页面后,点击添加按钮创建 Naive 节点用户
在添加客户端窗口里,先停留在“基础”页面,名称可以自己设置,例如:
naive-user
流量限制可以填写 0,表示不限制流量;到期时间可以保持“无限”,如果只是自己长期使用,这样设置就可以。

在 S-UI 添加客户端页面填写 Naive 用户名称、流量限制和到期时间
基础信息填好后,不要直接保存,先切换到“配置”页面,找到 naive 这一项,并复制对应的 Password,后面配置 sing-box 时,这个密码要填写到 config.json 的 password 字段里。

切换到配置页面查看 Naive Password,记录密码后点击保存
这里建议先把用户名和 Naive 密码复制到本地记事本里临时保存,用户名就是刚才填写的客户端名称,例如 naive-user;密码就是“配置”页面里 naive 对应的 Password,确认记录好以后,再点击右下角“保存”。
保存成功后,会回到用户管理列表,如果列表里已经出现刚才创建的 naive-user,说明 Naive 用户已经添加完成,后面创建 Naive 入站时,就可以绑定这个用户。

保存用户后返回用户管理列表,确认 naive-user 已经创建完成
三、添加 Naive 使用的 TLS 模板
Naive 节点需要配合域名和 TLS 使用,所以在创建 Naive 入站之前,先给 Naive 单独添加一个 TLS 模板。进入 S-UI 面板后,点击左侧菜单里的“TLS 设置”,然后点击右上角“添加”按钮。

进入 S-UI 的 TLS 设置页面,点击添加按钮创建 Naive 使用的 TLS 模板
在添加 TLS 窗口里,右上角选择 TLS,名称可以填写:
naive-tls
然后开启 ACME,域名填写已经解析到 VPS 的域名,这个域名后面也要填写到 sing-box 配置里的 server 和 tls.server_name 里。
接着点击右侧“TLS 选项”,开启 ALPN,并在 ALPN 下拉框里选择 H2,其它选项可以先保持默认,确认无误后点击右下角“保存”。

填写 naive-tls 模板名称和域名,开启 ALPN 并选择 H2 后保存
如果使用 ACME 自动申请证书,一般不需要手动填写证书文件路径和私钥文件路径。保存完成后,会回到 TLS 设置列表。如果列表里已经出现 naive-tls,并且 ACME 显示“确认”,说明 Naive 使用的 TLS 模板已经创建完成。

保存后返回 TLS 设置列表,确认 naive-tls 模板已经创建成功
这里的 入站管理 现在显示为空是正常的,因为 Naive 入站还没有创建,下一步创建 Naive 入站时,再选择这个 naive-tls 模板即可。
四、创建 Naive 入站节点
用户创建完成并添加好 TLS 模板后,点击左侧菜单里的“入站管理”,然后点击右上角“添加”按钮,开始创建 Naive 入站。

进入 S-UI 入站管理页面后,点击添加按钮创建 Naive 入站节点
在添加入站窗口里,先停留在“服务器端”页面,协议类型选择 Naive,常用配置可以按下面填写:
- 类型:
Naive - 标签:例如
naive-39867 - 监听地址:
:: - 端口:填写一个未被占用的端口,例如
39867 - 网络:选择
TCP/UDP - 用户管理:选择“用户管理”,并在右侧下拉框里选择刚才创建的
naive-user - TLS 模板:选择刚才创建的
naive-tls模板
这里的端口就是客户端连接 VPS 时使用的端口,后面写 sing-box 配置文件时,server_port 也要填写这个端口,TLS 模板要选择刚才创建的 naive-tls,不要保持为空。

在 S-UI 添加入站页面选择 Naive,填写端口、用户管理和 naive-tls 模板
然后切换到“客户端”页面,不安全并发数可以保持 0,UDP over TCP 保持关闭,下面的“多域名”位置点击加号,服务器地址填写前面绑定 TLS 证书的域名,服务器端口填写刚才设置的 Naive 入站端口,例如 39867。

在 Client 页面添加多域名,填写服务器地址和端口后保存 Naive 入站
这里的服务器地址要填写域名,不要填写 VPS IP,这个域名需要和 naive-tls 模板里的域名一致,后面 sing-box 配置里的 server 和 tls.server_name 也要使用同一个域名。确认无误后,点击右下角“保存”。
保存入站后,回到入站列表,确认 Naive 入站已经启用,并且可以看到协议、端口、TLS 状态和绑定用户数量。

Naive 入站创建完成后,列表中显示端口、TLS 状态和绑定用户数量
五、整理 Naive 节点连接信息
Naive 入站创建完成后,后面配置 Windows 客户端时,需要用到下面几项信息:
- 服务器域名:例如
your-domain.com - 连接端口:例如
39867 - 用户名:例如
your-username - 密码:S-UI 生成的 Naive 密码
其中服务器域名要和 TLS 模板里使用的域名一致,不要用 VPS IP 直接连接,否则容易遇到证书不匹配的问题。
如果你在 S-UI 的用户分享窗口里看到订阅、JSON 订阅、Clash 订阅或 SING-BOX 入口,也不要急着直接导入 Clash Verge。
如果你更想创建可以直接导入 Clash Verge 的常见节点,可以参考 S-UI 面板 VMess 教程:VPS创建 VMess 节点并导入 Clash Verge。VMess 的使用方式和本文不同,更适合想通过 Clash Verge 直接导入节点的新手。
Naive 节点和 Shadowsocks、Trojan、VMess 不一样,本文使用 Windows 版 sing-box 来连接 Naive 节点,然后在本机开启一个 SOCKS5 代理给浏览器使用。
六、下载 Windows 版 sing-box
Windows 电脑需要下载支持 Naive 出站的 sing-box,建议从官方 GitHub Releases 页面下载:sing-box 官方下载页面。
打开下载页面后,找到最新稳定版,不要下载带有 alpha、pre-release 标记的测试版本。
展开 Assets 文件列表,Windows 普通电脑一般选择:
sing-box-版本号-windows-amd64.zip
下载后解压,目录里应能看到:
sing-box.exelibcronet.dllLICENSE
libcronet.dll 对 Naive 出站很重要,必须和 sing-box.exe 放在同一个目录里,不要下载 Source code 源码包,也不要下载 Android、Linux、macOS、arm64 或其它不对应自己电脑的版本。

解压 Windows 版 sing-box 后,确认目录里包含 sing-box.exe、libcronet.dll 和 config.json
打开 PowerShell,进入 sing-box.exe 所在目录,执行下面命令查看版本:
.\sing-box.exe version
如果输出里能看到 with_naive_outbound,说明当前下载的 Windows 版 sing-box 支持 Naive 出站,可以继续后面的配置。

在 PowerShell 中运行 sing-box version,确认输出包含 with_naive_outbound
七、编写 sing-box 配置文件
在 sing-box.exe 所在目录新建 config.json 文件,可以直接用记事本打开:
notepad .\config.json
把下面配置复制进去,再把域名、端口、用户名和密码换成自己的信息:
{
"log": {
"level": "info",
"timestamp": true
},
"inbounds": [
{
"type": "socks",
"tag": "socks-in",
"listen": "127.0.0.1",
"listen_port": 1080
}
],
"outbounds": [
{
"type": "naive",
"tag": "naive-out",
"server": "your-domain.com",
"server_port": 39867,
"username": "your-username",
"password": "your-password",
"insecure_concurrency": 0,
"udp_over_tcp": false,
"quic": false,
"tls": {
"enabled": true,
"server_name": "your-domain.com"
}
}
],
"route": {
"final": "naive-out"
}
}
这段配置主要分为三部分:
inbounds:在本机开启127.0.0.1:1080这个SOCKS5代理;outbounds:让sing-box使用 Naive 协议连接 S-UI 面板里的 Naive 入站;route:让本地收到的代理流量都通过 Naive 节点发出去。
这里不要在 tls 里手动添加 alpn。如果添加了,sing-box 会提示 Naive 出站不支持 alpn 字段。

在 config.json 中填写 Naive 出站的域名、端口、用户名、密码和 TLS 信息
保存配置文件后,先检查配置是否有错误:
.\sing-box.exe check -c .\config.json
如果没有报错,说明配置文件格式没有问题。
然后启动 sing-box:
.\sing-box.exe run -c .\config.json
如果看到类似下面的输出,说明本机 SOCKS5 已经启动:
NaiveProxy started
tcp server started at 127.0.0.1:1080
sing-box started

运行 sing-box 后显示 NaiveProxy started,并监听 127.0.0.1:1080
这个 PowerShell 窗口不要关闭,只要关闭窗口,本机 127.0.0.1:1080 代理就会停止。
八、用 ZeroOmega 让浏览器走 Naive 节点
sing-box 启动后,浏览器不会自动使用它,这里需要用 ZeroOmega 新建一个代理情景模式,让浏览器连接本机的 SOCKS5 代理。
这里的 SOCKS5 是由本机 sing-box 提供的本地代理,如果你想直接在 S-UI 面板里创建 SOCKS 入站,并让浏览器或软件填写服务器地址、端口、用户名和密码,可以参考 S-UI 面板搭建 SOCKS5 代理教程,SOCKS 入站与用户密码设置。
如果你还不会安装 ZeroOmega、打开设置页面或者新建情景模式,可以先参考 ZeroOmega 配置教程:Chrome 浏览器设置 HTTP 代理,文章里的界面操作和情景模式设置方法是一样的,只是本文这里的代理协议要选择 SOCKS5。
打开 ZeroOmega 设置页面,新建或修改一个代理情景模式,按下面填写:
- 代理协议:
SOCKS5 - 代理服务器:
127.0.0.1 - 代理端口:
1080
下面“不代理的地址列表”可以保留默认的 127.0.0.1、::1、localhost。

在 ZeroOmega 的 proxy 情景模式中设置 SOCKS5 代理为 127.0.0.1:1080
保存后,点击“应用选项”,然后点击浏览器右上角的 ZeroOmega 图标,在弹出的菜单里选择刚才配置好的 proxy 情景模式。

点击浏览器右上角 ZeroOmega 图标,将当前模式切换为 proxy
完成后,浏览器访问网站的流量会先进入本机 127.0.0.1:1080,再由 sing-box 通过 S-UI Naive 节点发出去。
九、确认浏览器已经使用 VPS 出口
保持 PowerShell 里的 sing-box 运行,ZeroOmega 切换到 proxy 模式后,打开下面这个页面:
https://api.ipify.org
页面会直接显示当前浏览器的出口 IP,如果显示的是你的 VPS IP,说明 ZeroOmega 已经成功连接本机 127.0.0.1:1080,并通过 sing-box 连接到了 S-UI 创建的 Naive 节点。
也可以打开其它 IP 查询页面再次确认,只要显示的 IP 和 VPS 出口 IP 一致,就说明这条链路已经正常:
浏览器 → ZeroOmega → sing-box 本地 SOCKS5 → S-UI Naive 入站 → VPS 出口
十、常见问题
使用 S-UI 搭建 Naive 节点时,如果前面的用户、TLS 模板、入站和 sing-box 配置都填写正确,一般可以正常连接。遇到网页打不开、端口不通或日志报错时,可以按下面几个方向逐项排查。
1. 浏览器打不开网页怎么办?
如果浏览器无法通过 Naive 节点打开网页,先检查 sing-box 是否还在 PowerShell 窗口里正常运行。如果 PowerShell 窗口已经关闭,本机的 127.0.0.1:1080 代理也会停止,ZeroOmega 再连接这个地址就无法访问网页。
如果电脑里同时开着 Clash Verge、v2rayN 等其它代理软件,也建议先退出它们,特别是关闭系统代理和 TUN 模式。多个代理软件同时运行时,可能会接管本地代理或 DNS,导致 Naive 节点明明配置正确,但浏览器仍然打不开网页。
2. ACME 一直没有确认怎么办?
如果 naive-tls 保存后,TLS 设置列表里的 ACME 一直没有显示“确认”,先检查域名是否已经解析到 VPS。使用 Cloudflare 时,域名记录建议设置为“仅 DNS”,不要开启橙色云朵代理。
另外,还要确认 VPS 防火墙和服务商安全组没有拦截证书申请需要用到的端口。如果证书没有申请成功,后面的 Naive 入站即使创建完成,也可能无法正常连接。
3. 如何确认域名解析是否正确?
在 PowerShell 里执行:
nslookup your-domain.com
返回的 IP 应该是你的 VPS IP,如果使用 Cloudflare,确认域名记录是“仅 DNS”,不要使用橙色云朵代理。
4. 如何确认 Naive 端口是否放行?
在 PowerShell 里执行:
Test-NetConnection your-domain.com -Port 39867
如果看到:
TcpTestSucceeded : True
说明本地电脑可以连接到 VPS 的 Naive 端口。
如果是 False,需要检查 S-UI 入站是否启用、VPS 防火墙是否放行端口、服务商安全组是否放行端口。
5. 提示 alpn is not supported on naive outbound 怎么办?
如果执行 sing-box check 时看到:
alpn is not supported on naive outbound
说明你在 config.json 的 tls 里写了 alpn,Naive 出站这里不要手动写 alpn,删掉后重新检查即可。
6. 提示 write handshake failure 怎么办?
如果日志里出现:
write handshake failure: invalid argument
可以按下面顺序检查:
- S-UI 里的 Naive 用户是否已经绑定到入站;
username和password是否复制正确;server和tls.server_name是否填写同一个域名;- 域名是否解析到 VPS,而不是 Cloudflare 代理 IP;
- Clash Verge、v2rayN 等其它代理客户端是否已经退出。
不少连接失败并不是 Naive 节点本身配置错了,而是本地还有其它代理客户端在接管系统代理或 DNS。
十一、总结
使用 S-UI 搭建 Naive 节点的关键,是先在面板里创建 Naive 用户、添加 Naive 使用的 TLS 模板,再创建 Naive 入站并绑定用户。Windows 浏览器本身不直接连接 Naive,而是通过 ZeroOmega 连接本机 127.0.0.1:1080 这个 SOCKS5 代理,再由 sing-box 连接 S-UI 里的 Naive 节点。
配置完成后,只要 IP 查询页面显示的是 VPS 出口 IP,就说明浏览器已经通过 S-UI Naive 节点访问网络。后续如果要长期使用,保持 sing-box 运行即可;如果关闭 PowerShell 窗口,本地代理也会随之停止。
| 机房位置 | 带宽 | 流量 | 设备 | 价格 | 购买 |
|---|---|---|---|---|---|
| 洛杉矶 500 | 2.5Gbit | 500GB/月 | 5台 | $5.88/月-$58.88/年 | 购买 |
| 洛杉矶 1000 | 5Gbit | 1T/月 | 无限 | $9.88/月-$98.88/年 | 购买 |
| 洛杉矶 5000 | 5Gbit | 5T/月 | 无限 | $48.99/月-$489.99/年 | 购买 |
| 洛杉矶 10000 | 5Gbit | 10T/月 | 无限 | $93.99/月-$948.99/年 | 购买 |
| 香港 CMI+NTT | 2.5Gbps | 500GB/月 | 5台 | $8.99/月-$89.99/年 | 购买 |
| 香港 CMI+NTT | 5Gbps | 1T/月 | 无限 | $14.90/月-$113.99/年 | 购买 |
| 香港 CMI+NTT | 5Gbps | 5T/月 | 无限 | $59.99/月-$599.99/年 | 购买 |
| 香港 IPLC 专线 | 300MB 独享 | 300GB/月 | 3台 | $21.00/月-$210.00/年 | 购买 |
| 香港 IPLC 专线 | 1G 独享 | 1T/月 | 无限 | $59.00/月-$589.00/年 | 购买 |
| 香港 CN2 GIA | 100MB 独享 | 100GB/月 | 3台 | $34.99/月-$349.99/年 | 购买 |
| 香港 CN2 GIA | 500MB 独享 | 500GB/月 | 5台 | $149.99/月-$1499.99/年 | 购买 |
| 香港 CN2 GIA | 1G 独享 | 1T/月 | 无限 | $279.99/月-$2799.99/年 | 购买 |
| 日本 CN2 GIA | 100MB 独享 | 100GB/月 | 3台 | $29.99/月-$299.99/年 | 购买 |
| 日本 CN2 GIA | 200MB 独享 | 500GB月 | 5台 | $135.99/月-$1349.99/年 | 购买 |
| 日本 CN2 GIA | 500MB 独享 | 1T/月 | 无限 | $239.00/月-$2399.00/年 | 购买 |
| 日本 CN2 GIA | 700MB 独享 | 5T/月 | 无限 | $1135.00/月-$11395.00/年 | 购买 |
| 伦敦 500 | 2.5Gbps | 500GB/月 | 5台 | $6.8/月-$67.99/年 | 购买 |
| 伦敦 1000 | 5Gbps | 1T/月 | 无限 | $11.29/月-$113.99/年 | 购买 |
| 伦敦 5000 | 5Gbps | 5T/月 | 无限 | $59.99/月-$559.99/年 | 购买 |
需要 VPS 服务器?Just My Socks 更适合直接使用代理服务;如果您需要建站、部署项目、搭建环境或学习 Linux,可以选择搬瓦工 VPS,参考 搬瓦工在售 VPS 套餐整理与购买推荐。 |
|||||

搬瓦工教程