添加 Trojan 时,Address 决定连接到哪里,Port 决定连接哪个端口,Password 用于协议认证,SNI 用于 TLS 握手中的服务器名称。四项应按用户已有配置逐项对应,Allow Insecure 通常保持关闭。本文适合手动填写节点或排查导入后连接失败的用户,重点区分网络不可达、证书验证失败与密码错误,避免用跳过证书验证掩盖配置问题。
Trojan 与 TLS:先区分连接、证书和认证
Trojan 使用 TLS 承载代理协议数据。通常先与 Address、Port 指向的服务器建立连接,再进行 TLS 握手,之后在加密通道内完成 Trojan 认证与请求转发。TLS 提供传输加密及服务器身份验证,Password 则属于 Trojan 的访问认证;两者不是可以相互替代的设置。
因此,填对 Password 不代表证书一定有效,能连通端口也不代表 Trojan 认证已经成功。普通 HTTPS 站点与 Trojan 服务都可能使用 443 端口,但不能把任意 HTTPS 地址填入 Add Server 当作 Trojan 节点。
- 连接层:检查 Address 能否解析,以及指定 TCP 端口是否可达。连接超时应先检查这一层。
- TLS 层:检查服务器证书的有效期、信任链与验证名称。SNI 配错可能让服务器返回不匹配的证书。
- 认证层:检查 Password 是否与服务端完全一致。TLS 握手成功仍可能在此处被拒绝。
- 转发层:连接建立后,还需检查 Global Routing、规则及目标网站的解析和可达性。
Add Server 字段:Address、Port、Password 与 SNI
先取得自己已有服务的完整参数,再进入编辑页面。下面的域名和端口仅用于解释字段关系,不是可用连接信息;实际值必须按原配置填写。不要因为示例使用 443,就把自己的其他端口改成 443。
| 字段 | 填写内容 | 常见错误 |
|---|---|---|
| Type | 选择 Trojan,与服务端协议保持一致。 | 仅凭端口相同就选择其他协议。 |
| Address | 服务器域名或 IP,例如 edge.example.com。 | 粘贴完整网址,带入 https://、路径或端口。 |
| Port | 服务端监听端口,例如 443;合法范围为 1–65535。 | 漏填、自行猜测,或把端口重复写进 Address。 |
| Password | 原配置提供的 Trojan 密码,保持字符和大小写不变。 | 填写账户登录密码,或复制时带入空格、换行。 |
| SNI | 原配置指定的 TLS 服务器名称,例如 tls.example.com。 | 填写网址、IP 加端口,或随意换成其他网站域名。 |
| Allow Insecure | 通常保持关闭,保留正常证书验证。 | 遇到任何错误都打开,导致证书问题被掩盖。 |
Address 和 SNI 为什么可能不同
Address 是网络连接目的地,SNI 是 TLS ClientHello 中携带的服务器名称,服务器可据此选择证书或虚拟主机。二者可以相同,也可能由配置明确指定为不同值。例如,连接目的地是某个 IP,而 TLS 名称使用证书覆盖的域名;这时应保留配置提供的名称,不能把 SNI 简单改成该 IP。
SNI 与证书验证有关,但“发送了 SNI”本身不等于“证书已经通过验证”。证书仍需满足有效期、信任链和名称匹配等要求。不要依赖 SNI 留空后的默认推导来修复不完整参数;当 Address 是 IP 或与证书名称不同时,应先确认原配置要求的 TLS 名称。
- SNI 填主机名,不填
https://tls.example.com/,也不填tls.example.com:443。 - 证书名称必须符合证书的 Subject Alternative Name 范围。通配符证书也不代表可以匹配任意层级的域名。
- 若原配置还指定传输方式、Host、Path 等字段,应一起保留;这些字段不能用 SNI 代替。
手动添加步骤:先保存参数,再验证实际请求
以下按手动添加单个 Trojan 节点说明。若节点来自已有订阅,先核对订阅原始参数,避免把订阅条目改成与来源不一致的状态。后续订阅更新可能重新写入条目,因此应记录发现的问题并修正来源参数,而不是长期依赖本地临时修改。
-
打开添加页
进入 Home → 右上角「+」,打开 Add Server。先确认正在新建条目,避免误改其他可用配置。
-
选择协议
进入 Type → Trojan。协议以原配置为准;同一 Address、Port 下,选错 Type 仍会导致连接失败。
-
填写连接参数
返回 Add Server,填写 Address、Port、Password。Address 只保留主机部分,Password 按原值复制,不额外添加引号,也不要手动转换成摘要值。
-
核对安全项
在该条目的 TLS 相关设置中核对 SNI 与 Allow Insecure。SNI 使用原配置指定名称,Allow Insecure 保持关闭;若有其他传输字段,也按原配置逐项检查。
-
保存并测试
保存后回到 Home,选择刚添加的条目。为排查规则影响,可临时将 Global Routing 设为 Proxy,打开连接开关,并按系统提示允许 VPN 配置。访问一个已知可用的 HTTPS 页面,完成后恢复原来的路由模式。
Allow Insecure:比较证书验证设置
Allow Insecure 的核心影响是放宽或跳过正常的 TLS 证书验证,并不是让连接切换为明文传输。不过,加密通道如果不能可靠验证对端身份,仍可能连接到冒充的服务器。它也不能修复密码错误、端口关闭、域名解析失败或服务端协议不匹配。
Allow Insecure 关闭
推荐保留正常证书验证。证书名称不匹配、过期或信任链异常时,连接应报错,以便暴露需要修正的身份验证问题。
适合:日常使用、正式配置与常规排错。
Allow Insecure 开启
放宽证书验证后,即使请求能够继续,也不能证明服务器身份可信。该设置不应作为证书过期或 SNI 错误的长期解决方式。
适合:理解证书风险时识别配置差异;不作为日常使用方案。
结论:修正证书问题,不保留绕过设置
如果同一组参数只有开启 Allow Insecure 才能连接,应恢复关闭状态,再检查 SNI、设备时间及服务器证书链;无法自行修复时,将错误类型反馈给已有服务的维护方。
先在设备系统设置中确认日期与时间正确,再核对证书是否过期、证书覆盖的域名是否包含预期名称,以及服务端是否发送完整的中间证书链。自签名证书涉及独立的信任管理,不能用长期跳过验证来替代可信的配置方案。
按现象排错:超时、证书错误与认证失败
连接失败提示应按发生阶段解读。不同网络和服务端可能呈现相似的超时或断开结果,下面是排查顺序,不是仅凭一条提示就确定故障原因的方法。记录错误文字时可以保留类型,但应隐藏 Password、订阅令牌与完整连接信息。
一直超时,是 Password 填错了吗?
先回到 Home → 对应条目的编辑页,检查 Address、Port,再确认当前网络能够访问该地址与端口。超时可能发生在建立连接或握手阶段,不能直接判定为密码错误。换用另一条自己可用的网络进行相同测试,可帮助判断是否与当前网络有关。
出现证书错误,SNI 要填哪个域名?
填写已有配置指定的 TLS 名称,不是浏览器准备访问的目标网站域名。检查 SNI 是否带有协议前缀、端口或空格,并核对设备时间。若名称正确仍报错,应检查服务端证书有效期和证书链,而不是直接打开 Allow Insecure。
连接刚建立就断开,要重新生成密码吗?
先逐字符核对 Password 与 Type,检查复制是否混入换行,以及条目是否遗漏原配置指定的传输设置。不要自行生成新密码,因为服务端不会因此同步改变。TLS 建立后的快速断开也可能有其他原因,需要结合服务端记录确认。
测试有读数,但网页打不开怎么办?
在 Home 确认选中目标条目,临时使用 Global Routing → Proxy 再访问同一页面。若 Proxy 可用、Config 不可用,检查 Config 当前启用的规则与策略目标;若两种模式都失败,再检查认证、DNS 与目标站点,不要仅凭延迟读数认定节点正常。
验证完成后:恢复 Config,检查规则与更新
Global Routing → Proxy 用于本次隔离规则因素,并不意味着所有使用场景都应长期采用该模式。Direct 表示直连,不能用来验证 Trojan 转发;Config 按当前配置规则处理请求;Scene 则按已设置的场景选择路由行为。日常使用应恢复自己原来的有效模式。
如果 Proxy 正常而 Config 的访问结果不符合预期,检查当前 Config 中的规则顺序及其策略。例如,下面的语法示例把 example.com 及其子域名交给 PROXY,其余请求交给 DIRECT。这只是规则含义示例,不是要求覆盖现有配置;实际配置中的策略目标必须有效。
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT
- 核对规则顺序:前面的匹配规则可能先处理请求,后面的 DOMAIN-SUFFIX 不一定有机会命中。不要只搜索某一行就判断分流结果。
- 保留来源参数:订阅条目更新后,复核 Address、Port、SNI 与传输设置是否变化。不要把一次手动修正误认为来源已经永久修复。
- 处理自动连接:如果手动断开后连接又恢复,检查 Settings → On Demand 中已启用的按需连接条件,避免把自动重连误认为节点编辑没有生效。
- 保护认证信息:向维护方描述问题时提供错误阶段、网络类型及是否仅在 Config 下失败,不发送未遮盖的 Password 或订阅链接截图。