什么是 Trojan
Trojan 是一个比较新的翻墙软件,它模仿了互联网上最常见的HTTPS协议,以诱骗 GFW 认为它就是 HTTPS,从而不被识别。所谓魔高一尺道高一丈,墙在不断往上砌,那工具也得跟着变了。

Trojan 工作在 443 端口,并且处理来自外界的 HTTPS 请求,如果是合法的 Trojan 请求,那么为该请求提供服务,否则将该流量转交给 WEB 服务器 Nginx,由 Nginx 为其提供服务。基于这个工作过程可以知道,Trojan 的一切表现均与 Nginx 一致,不会引入额外特征,从而达到无法识别的效果。当然,为了防止恶意探测,我们需要将 80 端口的流量全部重定向到 443 端口,并且服务器只暴露 80 和 443 端口,这样可以使得服务器与常见的 WEB 服务器表现一致。
项目地址: https://github.com/trojan-gfw
搭建前准备
域名申请
目前免费顶级域名我知道的只有 http://www.freenom.com/zh/index.html 可申请。另外,在一些域名商家也可购买几块钱一年的,我看阿里云现在有 6 元一年的,一年一换也不费事。
VPS 购买
还是建议 VULTR.COM,主要是因为在同价位 VPS 中比较稳定,IP 虽然日本经常有被墙的,但可以随时换啊,无论是换地区还是换 IP。论小时计费,如果用 IPV6 的话最低 $2.5/月,IPV4 的最低有美区 $3.5/月,我觉得还是比较合适的。
DNS 解析
免费解析网站有很多,首先域名申请机构一般都会解析,如腾讯云,阿里云,godaddy 等,还有:
- cloudflare.com
- dns.he.net
- dnsever.com
将域名解析设置到购买的 VPS 对应 IP,并确认已成功。使用 cloudflare 的记得将 DNS only 灰掉。Dns
一键安装 Trojan
系统建议:
- Debian 9,10(推荐)
- Ubuntu 14,16,18
- CentOS 7,8
安装依赖包
安装依赖包(Debian/Ubuntu):
apt-get update && apt-get install sudo whiptail curl locales -y && sudo -i
安装依赖包(Centos):
yum update -y && yum install sudo newt curl -y && sudo -i
一键安装脚本
sudo bash -c "$(curl -fsSL https://raw.githubusercontent.com/johnrosen1/trojan-gfw-script/master/vps.sh)"
注:
开发者更新后删除了 v2ray 等,我 fork 后回退了一下版本,想安装多个应用的用这个吧:
sudo bash -c "$(curl -fsSL https://raw.githubusercontent.com/harry3633/trojan-gfw-script/master/trojangui.sh)"
/etc/trojan/trojan.crt
客户端及配置
Windows,Linux,MacOS
开发者有发布三大系统客户端:
https://github.com/trojan-gfw/trojan/releases
只说下 Windows 下使用,下载解压缩,如果启动 trojan.exe 报错,说明系统没有 C++ 运行环境,需要安装 VC++ 运行环境,压缩包里已经有了:VC_redist.x64.exe。
修改配置文件 config.json,很简单,就下面两个地方,本地端口默认 1080,可选修改:
{
"run_type": "client",
"local_addr": "127.0.0.1",
"local_port": 1080,
"remote_addr": "example.com #改为解析的域名",
"remote_port": 443,
"password": [
"password1 #改为服务器端安装时设置的第一密码"
],
"log_level": 1,
"ssl": {
"verify": true,
"verify_hostname": true,
"cert": "",
"cipher": "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:AES128-SHA:AES256-SHA:DES-CBC3-SHA",
"cipher_tls13": "TLS_AES_128_GCM_SHA256:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384",
"sni": "",
"alpn": [
"h2",
"http/1.1"
],
"reuse_session": true,
"session_ticket": false,
"curves": ""
},
"tcp": {
"no_delay": true,
"keep_alive": true,
"reuse_port": false,
"fast_open": false,
"fast_open_qlen": 20
}
}
目前 Trojan 客户端没有全局代理而且仅支持 socks5,因此得配合 Chrome 的 SwitchOmeaga 插件或者用Trojan-qt5客户端把 socks5 转换成 http 使用。
Android
下载安装,填上域名,密码就可以使用了,目前没过多选项,而且仅支持一个节点连接:
https://github.com/trojan-gfw/igniter/releases
支持 IPV6 和大陆白名单,不过我发现大陆白名单的使能开关需要关闭再打开一次才起作用。
如果运营商支持 IPV6,可在 DNS 解析设置 IPV6 ,我这没法测试,不知道速度会不会更好。
iOS
因为已经很多年没用过 iOS 了,所以就知道目前 Shadowrocket 俗称小火箭最新版是支持 Trojan 的。
路由器
目前仅有 Openwrt 系统有支持 Trojan 的插件,可根据路由器型号选择刷机。
在 LuCI 里有 SSR-Plus 和 passwall 插件,都支持 SS,SSR,V2ray,Trojan 等,就体验来讲,我个人更喜欢 passwall 插件。
后记
因为手动安装复杂很多,涉及到的知识面也更多,所以不想写了,一键安装确实方便了我这样的懒汉。
Trojan 似乎和 V2Ray+WS+TLS 机理差不多,从安全性来说两者稍有点差异但不大,而速度 Trojan 更有优势。就我测试的美国主机,本身速度就比较慢,V2Ray+WS+TLS 平均下载 1M 左右,最高 1.5M,而 Trojan 平均下载速度 2M 以上,最高可以到 3.5M。
最后分享我们的成品节点服务器,享受多台服务器,企业级速度,包含所有傻瓜式客户端,配置简单直接导入使用,Trojan-Qt5和Winxray,包含所有系统客户端下载