步骤 1:安装Trojan Go
确保你已经安装了Go语言,在终端中执行以下命令来安装Trojan Go:
go get -u github.com/goproxy/trojan-go/cmd/trojan
这将下载并安装Trojan Go,随后你可以运行 trojan 命令来管理代理。
步骤 2:生成配置文件
运行以下命令生成新的配置文件:
trojan config generate
根据提示,回答问题:
- 代理地址(remote proxy address):远程服务器的IP地址和端口,
tcp://example.com:900。 - 本地代理端口(local proxy port):你希望Trojan Go监听的本地端口,
1234。 - 使用加密(use encryption):如果你想加密通信,输入
yes,否则输入no。
生成后的配置文件路径会显示在终端中,通常是 config.json。
步骤 3:设置环境变量
在你的 shell 配置文件(如 .bashrc 或 .zshrc)中,添加以下内容:
export PROXY=127...1:1234 export PROXY_HOST=remote.example.com export PROXY_PORT=900
这将告诉应用程序使用Trojan Go作为代理。
步骤 4:配置应用程序使用代理
在你的应用程序中,确保它使用这些环境变量来连接代理,在 Go 项目中,可以在 main.go 中添加:
import "os/sys"
import "net/http"
func main() {
httpClient := &http.Client{}
req, err := http.NewRequest("GET", "http://example.com", http.Client)
if err != nil {
log.Fatal(err)
}
req_PROXY := "http://PROXY:PROXY_PORT"
req.Header.Set("Proxy", req_PROXY)
client := http.Client{}
resp, err := client.Do(req)
if err != nil {
log.Fatal(err)
}
defer resp.Body.Close()
body, err := io.ReadAll(resp.Body)
if err != nil {
log.Fatal(err)
}
log.Printf("Data: %v", body)
}
步骤 5:验证配置
运行以下命令验证配置是否正确:
curl -I http://example.com
检查响应头中的 X-Proxy-Original-For 字段,应显示 remote.example.com,确认代理生效。
步骤 6:启动代理服务(如果需要)
如果你正在使用Trojan Go作为系统级服务,可以启动它:
systemctl start trojan-go systemctl enable trojan-go
注意事项
- 协议支持:Trojan Go 支持 HTTP/HTTPS 和 SOCKS5 协议。
- 加密:默认启用加密,如果需要禁用,修改配置文件中的
use_encryption参数。 - 性能:Trojan Go 高效,适合处理大量连接。
完成以上步骤后,你应该能够成功配置并使用Trojan Go 作为代理。




