搬瓦工的服务器有着到国内的快速网络专线,所以在国内访问速度较快,是安装Trojan-go的首选。Trojan-go是用go语言写的Trojan版本,除了支持原有Trojan功能外,还新增了一些新的功能。
安装使用Trojan-go的准备
安装使用Trojan-go需要准备以下这几项
- 一个云服务器。如果你不知道哪个性能速度比较好,价格还便宜,可以看一下这里的搬瓦工云服务器推荐。如果你不知道如何购买则看一下这个搬瓦工服务器购买的详细教程
- 一个域名。如果你不知道哪里购买域名更实惠,可以看一下这个国际前三的 Namesilo ,使用优惠码TYVKWQ 享受更多优惠。
- Trojan-go二进制程序下载,可以从release页面下载,下面有详解。
- SSL证书,里面有cert和key在配置Trojan-go服务器端时需要。可以使用letsencrypt免费生成或者购买。
Trojan-go的下载
Trojan-go 有已编译好的二进制可执行文件,这里是Trojan-go下载连接。打开这个连接后,里面有不同操作系统和服务器硬件架构的压缩文件,一般用的linux系统的是trojan-go-linux-amd64.zip,这里arm64表示服务器硬件架构,目前大多服务器硬件架构都是这种。如果你的是较旧的386架构则用这个 trojan-go-linux-386.zip
Trojan-go的安装
下载下来以后,上传到服务器上进行解压缩(需要服务器有解压zip的软件,可以用unzip),
如果没有unzip,可以使用 sudo install unzip 安装。
解压文件 unzip -d trojan-go trojan-go-linux-arm64.zip
这里-d用来指示解压的文件放到哪个目录下。如果提示你 trojan-go目录不存在,则创建trojan-go目录用 mkdir trojan-go
之后使用cd 进入解压的目录中,将trojan-go可执行文件拷贝到/usr/bin下,cp trojan-go /usr/bin/trojan-go。
将配置文件拷贝到/etc/trojan-go,首先cd /etc, 再mkdir trojan-go,之后cd example,再cp server.json /etc/trojan-go/config.json
将数据文件拷贝到/usr/share/trojan-go,首先 cd /usr/share,在mkdir trojan-go ,在cp geoip.dat /usr/share/trojan-go/
也可以直接用下面的脚本。将这个脚本内容复制到一个.sh结尾的文件中进行执行即可。
#!/bin/bash
_INSTALL(){
if [ -f /etc/centos-release ]; then
yum install -y wget curl zip
else
apt install -y wget curl zip
fi
mkdir /etc/trojan-go
mkdir /usr/share/trojan-go
wget -N --no-check-certificate https://github.com/p4gefau1t/trojan-go/releases/download/$(curl -fsSL https://api.github.com/repos/p4gefau1t/trojan-go/releases | grep '"tag_name":' | head -n 1 | sed -E 's/.*"([^"]+)".*/\1/')/trojan-go-linux-amd64.zip && unzip -d /usr/share/trojan-go/ ./trojan-go-linux-amd64.zip && mv /usr/share/trojan-go/trojan-go /usr/bin/ && chmod +x /usr/bin/trojan-go && rm -rf ./trojan-go-linux-amd64.zip
cp /usr/share/trojan-go/example/server.json /etc/trojan-go/config.json
cp /usr/share/trojan-go/example/trojan-go.service /etc/systemd/system/trojan-go.service
systemctl daemon-reload
systemctl enable trojan-go
echo Done!
}
_INSTALL
Trojan-go服务启动的安装
这里要在linux系统上安装Trojan-go的服务,这样可以Trojan-go一直运行,通过服务的方式启动,停止Trojan-go。
还是在example目录中,将这两个文件trojan-go.service和trojan-go@.service拷贝到linux的服务目录(/lib/systemd/system/ 或 /etc/systemd/system/)中即可。
cp trojan-go.service /lib/systemd/system/
cp trojan-go@.service /lib/systemd/system/
这里也可以拷贝到 /etc/systemd/system下
Trojan-go服务器端的配置
{
"run_type": "server",
"local_addr": "0.0.0.0",
"local_port": 443,
"remote_addr": "127.0.0.1",
"remote_port": 80,
"password": [
"your_awesome_password"
],
"ssl": {
"cert": "server.crt",
"key": "server.key",
"fallback_port": 1234
}
}
这里需要改动的是 ssl里的cert 和 key的文件路径,这两个是你的域名的ssl的cert和key,可以用免费的letsencrty生成或或者购买。
password就是你的密码,你可以根据需要进行设置,这个密码在客户端时会使用。
Trojan-go服务的启动和停止
按照上面的配置好Trojan-go服务后,即可启动服务。
启动服务 systemctl start trojan-go
停止服务使用 systemctl stop trojan-go
查看服务状态使用 system status trojan-go
Trojan-go服务启动后即可通过客户端来使用。
Trojan-go客户端
Trojan-go的客户端程序和服务器端程序时一样的,如果你的电脑客户端也是linux,那么刚才下载那个即可也作为客户端。
进入example 目录 把里面的client.json拷贝出来 cp client.json ../config.json
下面配置 client.json
{
"run_type": "client",
"local_addr": "127.0.0.1",
"local_port": 1080,
"remote_addr": "your_awesome_server",
"remote_port": 443,
"password": [
"your_awesome_password"
],
"ssl": {
"sni": "your-domain-name.com"
}
}
这里需要更改remote_addr 为你的域名,password更改为你在服务器设置的密码,sni可以省略(因为remote_addr写的是域名,如果写的是ip地址,则sni需要写域名)
注意sni地址在tls协议中是明文传送的,所以才不建议使用,而是直接在remote_addr中写域名即可。
之后即可启动客户端 ./trojan-go -config config.json
Trojan-go Windows 客户端以及手机客户端
Trojan-go 本身没有Windows系统下的客户端,但是Trojan-go 支持很多其他的图形客户端 Clash(虽然被x了,但留存的依然有),同时支持Qv2ray 以及安卓手机的 Igniter-Go
Trojan-go的扩展特性
Trojan-go支持多路复用和websocket,其中websocket 可以让你配合Cloud CDN使用,这样你的IP就是CDN动态生成的,优势就是它很难封锁掉你。
一键安装Trojan
可以使用下面的一键安装脚本来图形化安装Trojan,同时配置SSL
#安装/更新
source <(curl -sL https://git.io/trojan-install)
#卸载
source <(curl -sL https://git.io/trojan-install) --remove
发表回复