要说起科学上网,很多喜欢上YouTube或看Netflix的小伙伴一定不陌生,但是要说起最近最火的科学上网技术你未必都知晓,很多小伙伴可能会说是SS/SSR,或者V2Ray。的确,从年初到现在,新冠肺炎病毒肆虐让几乎每个人都成为了各种宅,科学上网也变得比以前更受欢迎。与此同时,GFW的技术封锁也是越来越强,SS/SSR机场几乎全军覆没,V2Ray机场表现神勇,能保障大部分服务器节点稳定在线。你是不是还忽略了什么?对,应该有小伙伴想到了Trojan,这个在以前并不太引起大家注意的科学上网技术,也在这个疫情期间被越来越多的大神和小白使用,也有部分机场开始提供Trojan服务器节点。
本文目录
1、什么是Trojan?Trojan与V2Ray对比有什么区别?
Trojan原来多是指特洛伊木马,是一种计算机病毒程序。但是,我们今天所说的Trojan是一种新的科学上网技术,是目前最成功的科学上网伪装技术。你可以认为Trojan是V2Ray的“ws+tls”模式的精简版,速度比V2Ray更快。那么Trojan协议的速度慢不慢?Trojan 和 “V2Ray+WS+TLS” 使用 SpeedTest 和 YouTube 测速,结果如下图所示:
显而易见,Trojan协议的速度比“V2Ray+WS+TLS”更快,所以Trojan在实际应用中还是有一定优势的,尤其是隐蔽性好,且稳定、轻巧、速度快。
2、Trojan伪装HTTPS通信实现科学上网的原理
Trojan工作原理:Trojan通过监听443端口,模仿互联网上最常见的 HTTPS 协议,把合法的Trojan代理数据伪装成正常的 HTTPS 通信,并真正地完整完成的TLS 握手,以诱骗GFW认为它就是 HTTPS,从而不被识别。Trojan处理来自外界的 HTTPS 请求,如果是合法的,那么为该请求提供服务,否则将该流量转交给Caddy、Nginx等 web 服务器,由 Caddy、Nginx 等为其提供网页访问服务。基于整个交互过程,这样能让你的VPS更像一个正常的web服务器,因为Trojan的所有行为均与 Caddy、Nginx等 web 服务器一致,并没有引入额外特征,从而达到难以识别的效果。
3、Trojan搭建教程
搭建Trojan节点的技术已经越来越成熟,甚至有些专业机场已经增加了Trojan节点,走向了商用。与此同时,有大神编写了Trojan一键安装代码,以及Trojan科学上网教程。现在,小白用户也可以轻松搭建属于自己的Trojan机场,我将以Debian系统演示一键搭建Trojan节点的详细过程。
(1)购买域名和非中国大陆地区VPS
首先,你需要准备至少一个要绑定的域名,并成功把域名解析到VPS的IP地址。如果你还没有域名,可以先登录到 Freenom 尝试申请免费顶级域名;如果无法申请成功,就只能去购买了。可以去 Namesilo 或 Namecheap 申请购买0.99美元/年的域名,支持PayPal、支付宝和信用卡付款,建议使用二级域名绑定Trojan服务器。
如果你想成功申请 Freenom 免费顶级域名,请参考文章 最新的国外免费顶级域名网站Freenom注册免费域名教程与Cloudflare托管解析的方法
然后,你还需要至少一个非中国大陆地区的VPS。既然Trojan伪装那么隐蔽,速度也很稳,那么搭建Trojan节点肯定选择更好的VPS才配得上它,反正也不用担心IP会被墙。别得瑟了,先推荐优质VPS,推荐列表如下:
【1】搬瓦工 – 洛杉矶CN2线路 | 建站做外贸首选
【2】VULTR – 最低月付2.5刀,日本/洛杉矶CN2
(2)Trojan-GFW 一键安装脚本(推荐)
Trojan-GFW 一键安装脚本不建议在CentOS系统上运行,我这里建议你的VPS安装Debian/Ubuntu,如果你的VPS系统版本低于 Debian 10,那么安装过程中,脚本提示你升级到Debian 10,直接回车即可。
Trojan-GFW 一键安装脚本正式名称叫VPS ToolBox,也就是VPS工具箱。具有以下功能特点:
- 自动安装和配置NGINX;
- 自动续订让我们加密证书并在续订后自动重新加载Trojan-GFW;
- 自动操作系统检测支持Debian Ubuntu(不建议使用Centos);
- 自动域解析验证;
- 自动iptables(包括ipv6)防火墙配置和iptables-persistent;
- 自动生成Trojan-GFW 客户端配置;
- 自动Nginx性能优化;
- 自动Trojan-GFW trojan://共享链接和QR码生成;
- 自动https 301重定向而不会影响证书续订;
- 自动启用HSTS标头;
- 自动随机HTML模板选择;
- 自动启用完全IPv6支持;
- 自动启用时间同步;
- 自动启用失败重启;
- 自动卸载Aliyun Aegis;
- 支持自动安装和配置Trojan-GFW Dnscrypt-proxy Qbittorrent Bittorrent-Tracker Aria2 Filebrowser Netdata和TOR;
- 支持自动TCP Turbo启用(包括TCP-BBR);
- 支持BBRPLUS;
- 仅支持TLS1.3;
- 支持手动检查更新;
- 支持全部/部分卸载;
- 等等更多功能。
执行Trojan-GFW 一键安装脚本只需要以下两条命令即可。如下所示:
1)安装依赖包 curl,执行如下命令:
apt-get update && apt-get install sudo curl -y && sudo -i
2)安装Trojan-GFW一键脚本,执行如下命令:
apt-get update && apt-get install sudo curl -y && curl -sO https://raw.githubusercontent.com/johnrosen1/vpstoolbox/master/vps.sh && sudo bash vps.sh
如果你是小白,按照提示一步步操作就可,因为除了绑定域名需要输入,就一直按“Enter”键即可成功完成。
Trojan-GFW一键安装脚本 VPS ToolBox Menu 主菜单窗口,如下图所示:
其他用户详细定制配置菜单,一般保持默认即可,直接按“Enter”键执行。如下图所示:
如果你是小白用户,除了绑定域名需要输入,其他操作只需要一直按“Enter”键即可成功完成安装,最后脚本会提示你需要重启VPS。
3)重启后,Trojan服务会自动运行,这时候你只需要按提示操作即可。如果Trojan服务器成功运行,你可以正常访问https://yoururl/yourpassword.html,比如https://example.www.nonmonk.com/123456.html,其中“example.www.nonmonk.com”是你的Trojan服务器绑定的域名,“123456”是你的Trojan服务器远程连接密码。
上述yourpassword.html文件包含生成的Trojan-GFW 客户端(client) 配置文件(config profiles)、Trojan-GFW 分享链接(Share Links) 和Trojan-GFW 二维码以及Trojan全平台客户端的相关下载链接。
注意事项:如果你已有绑定域名的SSL证书,请放置于“/etc/trojan/”文件夹下,脚本执行过程中会自动跳过域名解析验证、申请证书以及acme.sh安装的步骤。
(3)trojan多用户管理部署程序
trojan多用户管理部署程序是一款比Trojan官方更强大、更稳定的可视化面板,目前支持在线web页面管理,不仅支持生成客户端配置文件,而且还支持生成 trojan://分享链接 和 二维码 直接配置,功能很丰富。
1)功能特点
- 在线web页面和命令行两种方式管理trojan多用户
- 启动 / 停止 / 重启 trojan 服务端
- 支持流量统计和流量限制
- 命令行模式管理, 支持命令补全
- 集成acme.sh证书申请
- 生成客户端配置文件
- 支持trojan://分享链接和二维码分享(二维码仅限web页面)
2)安装方式
a、一键脚本安装命令
#安装 Curl 支持环境 apt-get update -y && apt-get install curl -y #Debian/Ubuntu yum update -y && yum install curl -y #CentOS #安装/更新 source <(curl -sL https://git.io/trojan-install) #卸载 source <(curl -sL https://git.io/trojan-install) --remove
安装完后,输入’trojan’可进入管理程序,在浏览器访问 https://域名 即可在web页面管理trojan用户。
b、docker运行安装命令
安装mysql,执行命令如下:
docker run --name trojan-mysql --restart=always -p 3306:3306 -v /home/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=trojan -e MYSQL_ROOT_HOST=% -e MYSQL_DATABASE=trojan -d mysql/mysql-server:5.7
端口和root密码以及持久化目录都可以改成其他的。
安装trojan,执行命令如下:
docker run -it -d --name trojan --net=host --restart=always --privileged jrohy/trojan init
运行完后进入容器 docker exec -it trojan bash, 然后输入'trojan'即可进行初始化安装
启动web服务: systemctl start trojan-web
设置自启动: systemctl enable trojan-web
更新管理程序: source <(curl -sL https://git.io/trojan-install)
c、开启BBR/LotServer(锐速)等一键加速
安装BBR/LotServer(锐速)等一键加速,执行脚本命令如下:
cd /usr/src && wget -N --no-check-certificate "https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh" && chmod +x tcp.sh && ./tcp.sh
d、其他命令用法
Usage: trojan [flags] trojan [command] Available Commands: add 添加用户 completion 自动命令补全(支持bash和zsh) del 删除用户 help Help about any command info 用户信息列表 restart 重启trojan start 启动trojan status 查看trojan状态 stop 停止trojan tls 证书安装 update 更新trojan version 显示版本号 web 以web方式启动 Flags: -h, --help help for trojan
4、Trojan客户端下载与使用教程
关于Trojan客户端下载与详细的使用配置教程,请参考本站已发布文章 Windows、Android、Mac、iOS、Linux、路由器全平台Trojan客户端下载与配置使用教程
5、优质稳定高速Trojan机场推荐
如果您对Trojan技术非常感兴趣,并想要使用Trojan机场节点,我建议您参考文章 优质高速稳定SS/SSR/Xray/Trojan/V2Ray机场推荐 | 网络加速器梯子推荐,选择一家最适合您的优质可靠的Trojan机场。
Trojan算是V2Ray世界独立出来的清流,因为纯SS/SSR节点的大部分机场会逐渐没落(技术资源实力强,或走高端IPLC/IEPL内网专线的机场除外),只有拥有超强技术和资源实力的大厂才能稳定运行下去。当然,现在IPLC内网专线还是以SS/SSR为主,毕竟SS/SSR相较于V2Ray/Trojan有速度优势,而且IPLC/IEPL内网专线不过GFW,不存在被墙的可能。众所周知,IPLC/IEPL专线价格昂贵,而且带宽没有BGP中继线路大,所以中继线路的V2Ray和Trojan在速度上并不比IPLC/IEPL专线的SS/SSR差,甚至更快。在晚高峰时期,BGP中也是受干扰非常严重的,所以IPLC/IEPL才是唯一稳定的线路选择,是商业办公和游戏加速用户的首选。目前,Trojan-Go 已经实现 Trojan-GFW 在性能上的突破,也期待更多机场能用上这些新技术,支持让我们拭目以待。
关于 Trojan-GFW 和 Trojan-Go 的区别和关系,请参考文章 Trojan跟V2Ray哪个好?V2Ray自研VMess/VLESS协议跟Trojan/Trojan-Go协议的区别和优缺点对比
本文由一灯不是和尚于2022年4月6日更新;如果您有什么意见或建议,请在文章下面评论区留言反馈。
Github 间谍项目 vpstoolbox,避雷,有用的小伙伴记得改密码
https://v2ex.com/t/928400
感谢您的提醒!希望小伙伴使用其他的一键脚本搭建代理。
如果Trojan服务器成功运行,你可以正常访问https://yoururl/yourpassword.html,比如https://example.www.nonmonk.com/123456.html,其中“example.www.nonmonk.com”是你的Trojan服务器绑定的域名,“123456”是你的Trojan服务器远程连接密码。
——-
你好,我装了之后,改成自己的域名,根本无法访问啊。
我推荐您使用其他一键搭建脚本,站内有相关文章,更方便管理和操作,你可以在站内搜索找到。
请问Trojan-Qt5能否解决trojan客户端查询代理服务器域名的DNS流量裸奔的问题?
也就是说,如果代理服务器是用域名的形式,那么trojan客户端首先要解析这个域名,这个时候跟正常上网没戴套一样,如果解析过程中遭到DNS污染,客户端就会连接到假服务器,表面上看连通了,其实是废的,说不定还掉进蜜罐。
能否配置Trojan-Qt5使得它查询代理服务器域名的DNS流量戴起套来,比如说通过DNS over HTTPS发送到可信域名服务器?
据我目前所知,trojan程序本身是不管DNS的,只能寄希望于作为前端程序的Trojan-Qt5了,但找了半天也不知道在哪里配置
不要想太多,目前国内网络环境不怎么支持 DNS over HTTPS 的,否则你当GFW不存在了。另外,Trojan-Qt5太老了,已经不在更新了,不推荐继续使用,你可以尝试使用 Clash for Windows 或 V2RayN 等。
好吧,不过DoH的问题自有办法解决,不像你说的那样。
肯定跟我说的差不多,因为这个是国内大环境导致的,ZF行为,否则GFW的作用就大打折扣了。也就是你即使部署了DoH,但是国内DNS支持不好,大部分国外DNS服务在国内运行都受一定的影响和限制。