本文适合已经从自己的服务商处取得 Trojan 参数、需要在 Shadowrocket 手动添加或检查配置的用户。先区分服务器地址、认证密码与 TLS 身份,再按 Add Server 的字段填写;遇到证书错误、认证失败或连接后无法访问时,按连接阶段排查,不把打开 Allow Insecure 当作通用修复方法。
Trojan 连接中,地址、密码与 TLS 分别负责什么
Shadowrocket(小火箭)中的 Trojan 是一种代理协议。典型连接先找到服务器并建立 TCP 连接,再完成 TLS 握手,随后发送 Trojan 认证信息与目标请求。TLS 用于保护传输并验证服务器身份,Trojan 密码用于服务端认证;二者解决的问题不同,不能互相替代。
填写之前,从你的服务商处获取完整参数:服务器地址、端口、密码、TLS 使用的域名,以及是否有额外的传输设置。不要只凭“Trojan”这一项猜测其余字段。如果来源是已有订阅,应先使用订阅导入,只有需要核对差异时才逐项查看,避免手动复制遗漏。
先补齐参数,再创建条目
若资料只有地址和密码,先向你的服务商确认端口与 TLS 域名,不通过轮换端口或关闭证书校验试出配置。
Add Server 逐项填写:哪些值必须原样保留
在 Home 右上角点击“+”进入 Add Server,将 Type 设为 Trojan。不同平台的字段排列可能不同,应按字段含义核对,不按截图中的位置机械填写。下面的示例使用保留示例域名,仅解释字段关系,不能作为可连接的配置。
| 字段 | 填写方法 | 常见错误 |
|---|---|---|
| Type | 选择 Trojan。 | 只改条目名称,没有改变协议类型。 |
| Address | 填写服务商给出的域名或 IP,例如 edge.example.com。 | 粘贴成带 https://、路径或端口的完整网址。 |
| Port | 填写提供的整数端口,例如 443;有效范围为 1–65535。 | 将示例端口当成固定端口,或把端口写入地址栏。 |
| Password | 原样填写 Trojan 认证密码,保留大小写及特殊字符。 | 误填订阅令牌、账户登录密码,或粘贴出首尾空格。 |
| SNI | 填写指定的 TLS 域名,例如 tls.example.com。 | 填写网址、路径、端口,或者误填正在访问的网站域名。 |
| Allow Insecure | 正常使用保持关闭,让客户端执行服务器证书校验。 | 把跳过证书校验当成连接加速或认证修复开关。 |
Trojan 的 Password 通常是一个认证字符串,不是需要自行选择的加密算法,也不是“用户名加密码”的组合。服务商给出的字符串应直接填入对应字段,不自行做 Base64 编码、散列或添加引号。如果从分享链接手工拆出密码,要注意链接中的百分号编码;优先让客户端导入完整链接,减少把编码文本当成原密码的风险。
如果资料另有 WebSocket 等传输要求,还必须按资料配置对应传输参数。SNI、WebSocket 的 Host 与路径承担不同角色,即使某份配置使用了相同域名,也不能由此推断它们在所有服务中都相同。资料没有要求的选项,不凭名称相似自行启用。
SNI 与证书域名:服务器 IP 不等于 TLS 身份
SNI 是 TLS 握手时发送的服务器名称,常用于让同一服务器根据域名选择证书与服务。Address 决定连接到哪里,SNI 表明这次 TLS 连接请求哪个名称。二者可以相同,也可以不同,必须以你的服务商给出的参数为依据。
- 地址为域名:如果地址就是证书覆盖的域名,且服务商没有另行指定 SNI,可按其导入配置或填写说明处理。不要因为字段可以留空,就假定所有配置都不需要 SNI。
- 地址为 IP:例如连接到
192.0.2.10,而证书覆盖tls.example.com,通常需要按提供的配置设置对应 TLS 域名。不能假定面向域名签发的证书也覆盖该 IP。 - 存在多个域名:节点显示名称、订阅地址的域名与 TLS 域名不是同一个概念。显示名称只是备注,订阅地址负责获取配置,都不能用来推断 SNI。
- 证书校验失败:核对域名拼写、证书有效期、证书链以及设备日期时间。SNI 填对也不保证过期证书或不受信任的证书链能通过验证。
填写 SNI 时只写名称,例如 tls.example.com,不要写成 https://tls.example.com:443/path。TLS 证书校验通常会检查证书中的名称是否匹配预期服务器身份;修改 SNI 不是任意替换连接目标的方式,更不能把目标网站的域名填进去来修复代理服务器的证书。
Allow Insecure 选项:保留校验与跳过校验的区别
Allow Insecure 的关键作用是放宽服务器证书验证。即便连接仍使用 TLS 加密,跳过身份校验也会削弱确认“连接的是预期服务器”的能力。它不会修正错误密码,不会打开服务器未监听的端口,也不会让失效的订阅恢复。
Allow Insecure 关闭
推荐执行服务器证书校验。出现域名不匹配、证书过期或信任链问题时,应检查配置和服务端证书,而不是绕过错误继续使用。
适合:日常连接,以及使用有效证书的 Trojan 配置
Allow Insecure 开启
放宽证书校验,降低对服务器身份的确认能力。仅在理解风险的受控诊断中考虑,不能把“开启后能连接”视为配置已经正确。
适合:由维护者明确安排的临时证书故障定位,不作为长期配置
把证书错误交给正确的环节处理
核对设备时间和 SNI 后仍报证书错误,应向你的服务商反馈错误类别并确认服务端证书状态;解决后使用关闭 Allow Insecure 的配置重新验证。
从添加到验证:一次只改变一个设置
下面以手动添加为例。已有订阅时,从你的服务商处获取订阅链接并按导入流程使用,不要为了验证一个参数删除原订阅。订阅管理的条目可能在下次更新时被覆盖,需要长期修正的参数应先确认服务商配置。
-
核对资料
准备地址、端口、Password、SNI 与传输要求。记录原来的 Global Routing 姿态;若 Settings → On Demand 已启用自动连接,测试期间注意其可能触发重连,不把自动重连误判为手动设置未保存。
-
新建条目
Home → “+” → Add Server → Type → Trojan。分别填写地址与端口,不把完整分享链接塞入 Address,也不把订阅链接当成服务器地址。
-
核对身份
将原始认证字符串填入 Password,按资料填写 SNI,保持 Allow Insecure 关闭。额外传输设置只按资料填写,完成后保存并回到 Home 选择该条目。
-
执行测试
在 Home 使用 Connectivity Test 检查基本连通情况,再建立连接并访问明确需要经过代理的目标。测试有响应不等于所有网站、规则和 UDP 请求都已验证。
-
检查分流
若需要隔离规则影响,可暂时将 Global Routing 设为 Proxy,再重复同一访问。测试后恢复原来的 Config 等姿态,避免长期改变原有分流行为。
一次只修改一个字段,并记录修改前后的错误现象。例如“改正 SNI 后证书错误消失,但出现认证失败”,说明已经推进到另一个检查阶段,此时应核对 Password,而不是继续随机修改 TLS 选项。不要在截图或反馈中公开密码、完整分享链接和订阅令牌。
常见问题:按错误发生阶段排查
地址和密码都填了,为什么一直超时?
先核对 Port 与地址,确认地址栏没有协议前缀和路径。域名解析失败、网络不可达、服务器端口未开放都可能导致超时;这类错误不一定已进行到 TLS 或密码认证。换用可用网络重复同一测试,再向你的服务商确认服务器状态,不先打开 Allow Insecure。
提示证书错误,是不是密码不对?
先处理 TLS 阶段:检查 SNI 拼写、设备日期时间及服务端证书状态。Password 用于后续 Trojan 认证,修改密码通常不能修复证书域名不匹配。保留错误原文反馈,比反复切换所有 TLS 选项更有助于定位。
已经连接,为什么网页还是直连?
检查 Home → Global Routing。Direct 不用于验证代理路径;Config 按当前配置的规则决定策略。临时使用 Proxy 重试后若现象改变,再到 Config 核对启用的配置和规则顺序,不把分流问题当成 Trojan 密码错误。
昨天手动改好,更新订阅后怎么又变了?
订阅更新可能重新生成其管理的条目。核对更新后的 Address、Port 与 SNI 是否回到来源值,并向你的服务商确认订阅数据。需要对照时保留一个单独的手动测试条目,不反复修改受订阅管理的记录来掩盖来源问题。
Global Routing 的 Proxy、Direct、Config、Scene 不应混为协议选项:它们影响路由决策,Trojan 参数则决定如何连接服务器。Scene 依据场景设置工作,排查时也应确认实际采用的策略。不要把出现连接图标直接等同于某个网页请求已走选中的 Trojan 条目。
规则验证与参数保管
恢复 Config 后,需要用可识别的请求验证规则。以下片段只说明匹配关系:匹配示例域名的请求交给 PROXY,其余交给 DIRECT。PROXY 必须能解析到配置中实际可用的代理策略;仅复制规则文本并不会创建 Trojan 服务器。
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT
规则按顺序检查。DOMAIN-SUFFIX 匹配域名及其子域名;FINAL 是未命中前序规则时的兜底。正式配置中如果已有更靠前的匹配规则,应一起检查,不能只看刚追加的两行。需要更多语法时,查看规则参考,不要用修改 SNI 来改变网站分流。
- 日常使用保留证书校验,确认测试结束后恢复原来的 Global Routing 与 On Demand 设置。
- 密码、节点分享链接和订阅链接都按敏感资料保管。反馈问题时只提供脱敏后的字段关系、错误原文和发生阶段。
- 分享链接通常表示单个连接配置;订阅链接用于获取并更新一组配置。需要补充资料时,从你的服务商处获取。
- 若新密码已生效,旧条目的保存副本也要同步处理,避免下次误选后重复排查已解决的认证问题。