国内的机子,外网访问真是太慢了,GitHub部署个项目,下载个文件,几kb的跑,忍不了!
所以研究了下trojan的客户端。
一、准备
1)国内任意linux vps
2)trojan连接信息
二、部署trojan client
可以选择编译安装或者下载编译好的二进制包安装,这里就二进制包安装。
1)下载
打开 https://github.com/trojan-gfw/trojan/releases ,下载编译好的trojan-x.xx.x-linux-amd64.tar.xz的最新xz包
使用wget下载(或者本机下载好再上传到vps,毕竟就是要解决下载慢的问题)
wget --no-check-certificate https://github.com/trojan-gfw/trojan/releases/download/v1.16.0/trojan-1.16.0-linux-amd64.tar.xz
2)解包
这个包不是tar.gz的包,不能使用tar zxvf解压
xz -d trojan-1.16.0-linux-amd64.tar.xz
tar xvf trojan-1.16.0-linux-amd64.tar
# 得到trojan文件夹
ls -l
3)安装
mv trojan /opt/sources/trojan-1.16.0 # 移动,方便管理
ln -s /opt/sources/trojan-1.16.0/ /opt/services/trojan # 创建软连接
cd /opt/services/trojan
ls -l
cp config.json config.json_bak # 备份配置文件
vim config.json # 编辑配置文件
参考配置文件,具体查看官网,https://trojan-gfw.github.io/trojan/config,需要填写trojan的连接信息。
{
"run_type": "client", # 运行模式
"local_addr": "127.0.0.1", # 监听地址
"local_port": 1080, # 监听端口
"remote_addr": "xxxx.xxxx", # trojan服务域名
"remote_port": 443, # trojan服务端口
"password": [ # 密码,可以写多个,逗号分隔,第一个生效
"xxxxxxxx"
],
"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 -l ./trojan.log -c ./config.json
# -l 日志文件路径
# -c 配置文件路径
ssh打开另一个连接窗口
查看是否监听127.0.0.1:1080
ss -tlnp | grep 1080
安装完成!
三、后台运行与自启动
回到第一个窗口,退出前台
ctrl+c
1)写一个新的systemd配置文件
vim trojan.service
写入以下配置
[Unit]
Description=trojan
After=network.target network-online.target nss-lookup.target
[Service]
Type=simple
StandardError=journal
ExecStart=/opt/services/trojan/trojan -l /opt/services/trojan/trojan.log -c /opt/services/trojan/config.json
ExecReload=/bin/kill -HUP $MAINPID
Restart=on-failure
RestartSec=3s
[Install]
WantedBy=multi-user.target
2)启动
systemctl start trojan
3)开机自启动
systemctl enable trojan
trojan客户端安装好了!