Trojan介绍
Trojan-GFW作为一款新兴的代理软件,相比于L2TP,PPTP,OPENVPN等传统VPN以及SS,SSR,V2ray等主流代理软件,有着轻量化,配置简单,使用方便,速度更快等优势;听说前不久某研究学院破解了ss、ssr代理,真tm一群吃饱了没事干的家伙,以后科学上网更难,寻找备用科学上网方式很有必要。本文将简单介绍Trojan的搭建以及使用方式,不会介绍的很详细,关键点不会漏,点到为止:)
项目地址:https://github.com/trojan-gfw/trojan
实现原理图解
搭建准备
根据实现原理,trojan监听443端口,再配合web服务器实现伪装,访问80端口重定向443端口,所以需要https证书,同时访问域名是正常的网站,避开GFW的检测,相对难检测到。接下来介绍具体搭建需要哪些。
一台vps
搬瓦工、vultr、谷歌云、阿里云均可,但vps所在ip必须是非国内的,原因你懂得。
域名
随便注册个便宜的域名即可,.xyz后缀的很便宜,一年一美元不到。提供几个可购买域名服务商:
证书
方法一:去https://letsencrypt.org/免费申请证书,三个月后过期,可以脚本自动续期。
方法二:如果域名在阿里云买的,可以免费申请一年的证书。
看你自己情况选择,申请方法略,自己搜索相关教程,最终得到两个文件,.pem证书文件和.key密钥文件。将这个两个文件上传到vps目录下备用
域名解析
将域名A记录解析到vps的ip上,每个服务商界面不一样,最终效果都是这样
- A www ip地址 这样访问域名带www,比如你的域名是betterme.xin,那么访问链接就是www.betterme.xin
- A @ ip地址 这样访问域名不带www,直接访问betterme.xin即可
开始搭建
下面展示在Debian 9 64位安装trojan。有很多一键脚本,我尝试过一个没成功,手动配置搭建成功了,所以主要分享手动搭建。
搭建trojan服务
ssh工具连接上你的vps
安装Trojan-GFW
|
|
- 替换配置文件
|
|
- 修改配置文件
|
|
只需修改客户端连接密码和申请的域名证书文件,其他默认即可
|
|
想了解更多参数配置,官方配置参考->config
- 开启并启用trojan服务
|
|
查看启用状态,可用于启动失败排错
|
|
搭建nginx服务伪装https
- 安装nginx
|
|
- 修改配置文件
删除默认配置文件,只留conf.d目录下配置文件
|
|
trojan.conf,修改时注意每句结尾的分号别漏了
server {
listen 127.0.0.1:80; #放在Trojan后面即可做伪装也可以是真正的网站
server_name example.com; # 申请的域名,例如betterme.xin www.betterme.xin
location / {
# 这里可以反向代理自己另外一个网站,比如 proxy_pass https://betterme.xin;
root /usr/share/nginx/html/; #默认的根目录
index index.html; #默认的html文件
}
add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload" always; #HSTS标头
}
server {
listen 80;
listen [::]:80;
server_name example.com;
return 301 https://example.com; #301 https重定向
}
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
return 444;
}
检测配置文件是否正确,错误请修改正确。
|
|
软启动nginx
|
|
这样访问自己的域名就正常了。
选装bbrplus并禁用TCP慢启动提高吞吐量以及加快连接建立
使用一键脚本
|
|
TCP加速 一键安装管理脚本 [v1.3.2]
– 就是爱生活 | 94ish.me –
- 升级脚本
————————————内核管理———————————— - 安装 BBR/BBR魔改版内核
- 安装 BBRplus版内核
- 安装 Lotserver(锐速)内核
————————————加速管理———————————— - 使用BBR加速
- 使用BBR魔改版加速
- 使用暴力BBR魔改版加速(不支持部分系统)
- 使用BBRplus版加速
- 使用Lotserver(锐速)加速
————————————杂项管理———————————— - 卸载全部加速
- 系统配置优化
- 退出脚本
————————————————————————————————
选择2 enter,当提示是否卸载内核时,选择[否/no],安装后重启,登录vps后,再执行一次./tcp.sh
选择7启用bbr plus
查看是否启用成功sudo sysctl -p
当显示net.ipv4.tcp_congestion_control = bbrplus
表示启用bbrplus成功
选装dns缓存配置
备份原有配置文件、自己新建
|
|
监听本机
sudo echo "port=53" >> /etc/dnsmasq.conf
sudo echo "no-resolv" >> /etc/dnsmasq.conf
sudo echo "server=1.1.1.1#53" >> /etc/dnsmasq.conf
sudo echo "interface=lo" >> /etc/dnsmasq.conf
sudo echo "listen-address=127.0.0.1" >> /etc/dnsmasq.conf
sudo echo "cache-size=1000" >> /etc/dnsmasq.conf
设定系统dns服务器为本机
chattr -i /etc/resolv.conf && echo "nameserver 127.0.0.1" > /etc/resolv.conf && chattr +i /etc/resolv.conf
开启服务并查看启动状态
|
|
呼耶,服务端已经安装完毕,接下来就等客户端连接使用咯。
客户端连接使用
由于该科学上网还比较新颖,目前适配的客户端还不够齐全。
电脑上,不管是window还是macOs,都是先下载客户端服务,让Ta在控制台后台运行,然后再在谷歌浏览器安装SwitchyOmega插件配合使用
手机端,安卓有igniter,仅支持全局代理,功能比较单一,安装后输入域名和密码点击连接即可
苹果设备,shadowroket支持trojan,简单配置域名,端口443,连接密码即可
注意,当我连接时,域名带了https://,这样是连接不上的,只需域名,比如申请的域名是betterme.xin,那么请填写betterme.xin,密码是服务端配置的某一个密码
自己vps线路的质量好坏决定了上网体验,如果没有特殊需求,看youtube,1080p完全没问题。
另外分享自己刚搭建的链接,拿去用吧,访问域名做了反向代理,访问https://93jc.cn会显示本博客首页
本人亲自测试,电信200M,看youtube 4k60帧
- 域名:93jc.cn
- 端口:443
- 密码:||||小|额|打|赏|可|见|||