这里为什么没有再推荐使用 shadowsocks 了,因为经过实际的使用,shadowsocks 的标识太过于明显,很容易被识别拦截。
今天我给大家推荐 trojan-go 的代理环境及安装,请合理使用,科学上网!
实际服务器强烈建议安装内核版本大于 4.9 的 linux 发行版本,例如 ubuntu 22.0  ,因为启用 BBR 会极大提高网络传输效率。
服务端 
下载 trojan-go: 
1 2 wget https://github.com/p4gefau1t/trojan-go/releases/download/v0.10.6/trojan-go-linux-amd64.zip mkdir -p /root/trojan-go && unzip -d /root/trojan-go/ trojan-go-linux-amd64.zip 
 
拷贝配置文件出 trojan 目录: 
1 cp /root/trojan-go/example/server.json /root/trojan-go/config.json 
 
修改配置文件: 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 {     "run_type" :  "server" ,      "local_addr" :  "0.0.0.0" ,      "local_port" :  1443 ,      "remote_addr" :  "127.0.0.1" ,      "remote_port" :  80 ,      "password" :  [ "123456" ] ,      "ssl" :  {          "cert" :  "/www/server/panel/vhost/ssl/trojan.webape.net/fullchain.pem" ,          "key" :  "/www/server/panel/vhost/ssl/trojan.webape.net/privkey.pem" ,          "sni" :  "trojan.webape.net" ,          "fallback_addr" :  "127.0.0.1" ,          "fallback_port" :  80 ,          "reuse_session" :  true ,          "session_ticket" :  true ,          "session_timeout" :  600 ,          "plain_http_response" :  "HTTP/1.1 200 OK\r\n\r\n"      } ,      "tcp" :  {          "no_delay" :  true ,          "keep_alive" :  true ,          "prefer_ipv4" :  true ,          "fast_open" :  true ,          "fast_open_qlen" :  20 ,          "tcp_window_scale" :  65535      } ,      "mux" :  {          "enabled" :  true ,          "concurrency" :  8 ,          "idle_timeout" :  60      } ,      "router" :  {          "enabled" :  true ,          "block" :  [ "geoip:private" ] ,          "geoip" :  "/usr/share/trojan-go/geoip.dat" ,          "geosite" :  "/usr/share/trojan-go/geosite.dat"      } ,      "websocket" :  {          "enabled" :  false      }  } 
 
其中 80 是一个网站 http 地址,1443 也是一个 ssl 的站点,配置了 ssl 证书,需要注意该证书的过期后要重新申请
除了 SSL 证书外,Trojan-Go 的路由功能需要 geoip.dat 文件来根据 IP 地址进行地理定位和路由规则判断
1 2 3 4 5 sudo mkdir -p /usr/share/trojan-go/ #  下载完整的 GeoIP 数据库 sudo wget -O /usr/share/trojan-go/geoip.dat https://github.com/v2fly/geoip/releases/latest/download/geoip.dat #  下载 Geosite 数据库文件 sudo wget -O /usr/share/trojan-go/geosite.dat https://github.com/v2fly/domain-list-community/releases/latest/download/dlc.dat 
 
切换内核拥塞控制算法 BBR 
TCP BBR(Bottleneck Bandwidth and Round-trip propagation time)是由 Google 开发的一种 TCP 拥塞控制算法,旨在显著提高互联网传输速度,同时减少网络延迟。BBR 的核心思想是基于网络的瓶颈带宽和往返时间(RTT)来控制网络流量,而不是依赖于传统方法中的数据包丢失作为网络拥塞的主要指标。BBR 拥塞控制算法在内核 4.9 版本正式发布,用户只需要简单开启即可。BBR 积极地争取带宽使用权,能更快突破 GFW 的限速窗口,其对抗 GFW 限速、丢包等轻度干扰效果明显。现在 BBR 算法存在多个版本,如需最新版本可能需要重新编译内核模块。
 
1 2 3 echo "net.core.default_qdisc=fq" | sudo tee -a /etc/sysctl.conf echo "net.ipv4.tcp_congestion_control=bbr" | sudo tee -a /etc/sysctl.conf sudo sysctl -p 
 
启动服务 
1 /root/trojan-go/trojan-go -config /root/trojan-go/config.json 
 
如果跳出了,则需要检测端口和配置是否正确
开机自启动 
1 vi /usr/lib/systemd/system/trojan-go.service 
 
写入内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 [Unit] Description=trojan-go After=network.target nss-lookup.target Wants=network-online.target [Service] Type=simple ExecStart=/root/trojan-go/trojan-go -config /root/trojan-go/config.json Restart=on-failure RestartSec=10 RestartPreventExitStatus=23 [Install] WantedBy=multi-user.target 
 
启动 
1 systemctl start trojan-go 
 
关闭 
1 systemctl stop trojan-go 
 
设置开机自启动 
1 systemctl enable trojan-go 
 
客户端 
安装 trojan 
 
客户端配置 
从服务端安装的文件中复制一份客户端示例配置 /root/trojan-go/example/client.json 到本地的 /etc/trojan/config.json 中新建配置文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 {     "run_type" :  "client" ,      "local_addr" :  "127.0.0.1" ,      "local_port" :  1080 ,      "remote_addr" :  "192.168.3.1" ,      "remote_port" :  2443 ,      "password" :  [ "123456" ] ,      "ssl" :  {          "sni" :  "trojan.webape.net"      } ,      "mux" :  {          "enabled" :  true      } ,      "router" :  {          "enabled" :  true ,          "bypass" :  [              "geoip:cn" ,              "geoip:private" ,              "geosite:cn" ,              "geosite:private"          ] ,          "block" :  [ "geosite:category-ads" ] ,          "proxy" :  [ "geosite:geolocation-!cn" ] ,          "default_policy" :  "proxy" ,          "geoip" :  "/usr/share/trojan-go/geoip.dat" ,          "geosite" :  "/usr/share/trojan-go/geosite.dat"      }  } 
 
启动服务 
启动 
 
关闭 
 
设置开机自启动 
 
验证 
1 curl --socks5 127.0.0.1:1080 http://www.google.com -k 
 
能正确返回则表示配置正常
使用 
浏览器使用,配合 switchyOmega 浏览器插件,添加代理
代理协议:socks5 
代理服务器:127.0.0.1 
代理端口:1080 
 
简便应用 
在上面的过程中,我们也看到了,还需要安装客户端,而用客户端还是基于 socks 的,如果想要 http 的代理,并且在像 windows 环境中,就不是那么好用了。
如何解决这个问题呢,有一款应用非常好用,适合 windows 和 ubuntu 环境,就是nekoray ,还有适合安卓环境的包。
安装后,新建配置并填写服务端的地址、端口、trojan 的密码后,这样默认本地就有了一个 2080 端口的代码服务
这样例如我们在使用 switchyOmega 浏览器插件中,就可以添加代理
代理协议:http 
代理服务器:127.0.0.1 
代理端口:2080 
 
而且在设置 git 、npm 等代理时,也更加方便好用,而且在 nekoray 面板上,也可以直接设置全局代理。
      
     
    
      
  
 
  
    
      
      
        
        致力于网站建设与Web开发。喜欢新事物,关注前后端动态,对新的技术有追求, 做一个优秀的web全栈工程师。