Trojan为何物
Trojan是一种科学上网代理协议,与V2Ray的WS(WebSocket)+TLS模式很相似,是其简化版本。Trojan会将你的流量加密伪装为HTTPS流量,也就是看起来更为正常的流量,以此躲过GFW的审查。理论上讲,应该会比V2Ray的WS+TLS模式更快,但是看了一些大佬的实际测试,发现网速提升是有的,但是没有想象中那么大。
预期的搭建效果
本次教程采用的是Github上一位大佬制作的一键工具包。操作过程可视化,步骤简单易懂,同时搭建完毕会生成一个可以正常访问的伪装网站,提高隐蔽性。
一键工具项目地址:https://github.com/johnrosen1/trojan-gfw-script
脚本特性:
- 安裝並配置 NGINX
- 申请并续签 let's encrypt 证书 and 全自动在证书续签完成后reload Trojan-GFW
- OS 探測 支援 Debian Ubuntu Centos(不推荐)
- domain resolve verification
- iptables(包括 ipv6) 防火墙配置以及 iptables-persistent
- 全自动生成 Trojan-GFW 客戶端配置文件
- Nginx 效能優化
- Trojan-GFW trojan:// 分享链接 以及 二维码 生成
- https 301 redirect 不會影響證書的續簽
- HSTS header
- 隨機html偽裝模板選擇
- 完整的 IPv6 支持
- 時間校準
- 失败自动重启
- 卸載 Aliyun Aegis
- 安裝並配置 Trojan-GFW Dnscrypt-proxy Qbittorrent Bittorrent-Tracker Aria2 Filebrowser Netdata and TOR
- TCP Turbo ( TCP-BBR 已包含)
- BBRPLUS
- TLS1.3 ONLY
- 手动 检查更新
- 完全/部分 卸載
前期准备
- 域名一个(免费或付费的均可)
- VPS一台(请先全国ping一下,确保可用性)
- 愿意学习的心
关于域名
如果想使用免费域名,推荐到freenom申请,但是成功率非100%,且解析生效时间较长。
如果想使用付费域名,推荐到namesilo购买。支持支付宝付款,一般也很便宜,低至0.99美元/年。
建议将域名的DNS解析交给CloudFlare,后边一键脚本会用到。(只用DNS解析,不要使用CDN,因为Trojan不支持)
其它域名服务商的解析方法请自行谷歌。
正式开始
测试环境
本次测试环境为:Debian 10
其它环境尚未测试过,但是步骤都是一样的。
运行脚本
执行此脚本:
apt-get update && apt-get install sudo curl -y && curl -Ss https://raw.githubusercontent.com/johnrosen1/vpstoolbox/master/vps.sh | sudo bash
接下来就很简单了。看图操作。按回车键即可确认。
使用空格来选择项目,选中的项目前边会有*
号。根据自己的需要选择安装项目。这是我的选择:
选好项目以后,可以按下回车键继续。
在这里输入自己的域名。
设置密码1
设置密码2,建议密码让系统默认生成。
如果没有选择安装Netdata,请直接忽略以下这一步:
设置Netdata的安装路径,这个是一个VPS状态监控软件。这一步建议直接按回车,使用默认位置。(之前自定义的时候遇到了莫名其妙的问题)
这里推荐选择使用DNS API来自动申请。
如果选择HTTP申请,则脚本会自动完成相关操作,一直等到代码跑完,根据提示操作。
接下来到CloudFlare网站寻找自己的API Key。
登陆CF
官网后点击自己的域名,然后在Overview
页面右下角找到API入口。
点击View
生成Key。
输入注册CloudFlare的邮箱。
然后静静等待安装成功。
按下回车之后可以查看安装结果。
Netdata的界面是这样的:
可以随时查看自己的VPS状态。界面挺高大上的,但是咱也不是专业的,也就看看负载率了。😂
这个工具在安装时会自动搭建一个HEXO博客作为伪装网站,且可以正常访问,看起来是一个很正常的博客界面,实际上它是一台代理服务器。这样更为隐蔽。
出新货了,嘻嘻
(●ˇ∀ˇ●)
Netdata 怎么访问的啊 我没改安装路径呀,跳出404
打开vps查看以下安装结果,安装结果网页上有你的netdata入口。
请教一下,nginx 打不开,用的是阿里云轻量服务器,请问这种一般什么情况?伪装页面也打不开。
nginx.service - The NGINX HTTP and reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: activating (auto-restart) (Result: exit-code) since Mon 2020-03-16 23:06:26 HKT; 106ms ago
Process: 1705 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=203/EXEC)
建议重装一下机器,使用Ubuntu系统出错比较少。
Algorithm negotiation fail
安装完之后重启就报这个了
建议到作者的github上提一下issue。
请问一下,一个域名是不是只能搭建一个嘞OωO
是的,因为trojan会占用443端口。
请教一下,在使用gcp搭建的时候到第二个命令时,总是提示这个-bash: /usr/bin/sudo: Argument list too long要怎么办嘞。
这个还没遇到过,建议咨询一下脚本作者:https://github.com/johnrosen1/trojan-gfw-script
你最后解决了吗?我也碰到了这个问题。
请问一下vps到期了,不用删除脚本,下一台vps还能用那个域名吗?
代码可以不删除,但是域名解析需要转移到你的新机器上。
博主有什么VPS推荐吗,想要搭个梯子和博客OωO
建议试试Vultr
老大你可以看看这项目,我用着感觉还不错
https://github.com/phlinhng/v2ray-tcp-tls-web
好的,谢谢分享。回头我有时间了研究一下。