1
0
mirror of https://github.com/proxysu/ProxySU.git synced 2024-11-30 00:56:07 +03:00
ProxySU/README.md
2020-08-11 10:29:37 +08:00

10 KiB
Raw Blame History

使用V2ray的任何TLS加密的尽快升级到最新版本4.23.2及以上。原因如下:

v2ray的TLS流量可被简单特征码匹配精准识别

ProxySU

V2ray, Trojan, NaiveProxy, Trojan-Go, BBR install tools for windows。V2rayTrojanNaiveProxy, Trojan-Go 一键安装工具。BBR一键开启仅支持CentOS8/Debian9/10/Ubuntu18.04及以上)

编译环境Visual Studio 2017 使用WPF界面。可一键安装V2ray、Trojan、NaiveProxyTrojan-Go 后续还会再添加其他。

V2ray可一键安装的模式有
  • tcp
  • tcp+http伪装
  • tcp+TLS
  • tcp+TLS (自签证书)
  • WebSocket
  • WebSocket+TLS
  • WebSocket+TLS+Web
  • WebSocket+TLS自签证书
  • http2
  • http2+TLS+Web
  • http2自签证书
  • mKCP及各种伪装
  • QUIC及各种伪装。
    mKCP和QUIC模式使用udp协议可以有效减少网络延时有加速的作用但在网络管控严厉时期会导致IP被封我遇到的一次就是刚安装好使用了3个小时后IP被封现已确认是mKCP的流量被识别导致项目组正在维护中。2020.6.10维护完毕升级到版本4.24.2及以上启用mKCP密钥可增强抗识别。以上模式最推荐的是WebSocket+TLS+Web 和http2+TLS+Web 需要有一个域名。如果能加上CDN则稳定性更好。加上CDN后是加速还是减速与线路有关。
Trojan 可一键安装的模式有:
  • Trojan + TLS + Web
Trojan-Go 可一键安装的模式有:
  • Trojan-Go + TLS + Web
  • Trojan-Go + WebSocket + TLS + Web
NaiveProxy一键安装
  • NaiveProxy + TLS +Web
支持的VPS系统为
  • CentOS 7/8
  • Debian 8/9/10 (推荐 9)
  • Ubuntu 16.04及以上

(注意如果系统启用了SELinux且工作在Enforcing模式下时需要将Enforcing更改为Permissive模式否则使用WebSocket+TLS+Web时Caddy的service无法开机启动这种情形一般出现在Centos7/8中程序在安装过程中将自动处理。)

V2ray模式目前已支持生成用于

程序中只实现生成v2rayN的但是Shadowrocket和v2rayNG都可以导入。

Trojan模式目前已支持生成用于
Trojan-Go模式目前已支持生成用于
NaiveProxy支持生成用于
  • NaiveProxy官方客户端配置文件windows客户端配置
  • NaiveGUI(第三方Windows图形客户端)URL导入链接。
  • Qv2ray (windows)客户端导入二维码和网址
    这里多说几句NaiveProxy现在墙越来越高翻墙软件需要隐藏访问目标网址和加密数据的同时还要隐藏自己的流量特征不被识别出是代理流量。V2rayTrojan都有其自己的实现。而NaiveProxy是配合Caddy的一个http.forwardproxy插件插件有防嗅探转发流量的功能。代理http流量很完美但是在代理https流量时会出现长度特征NaiverProxy则弥补了这一点消除了代理https时的流量特征(当配置文件中Padding=true时),另外还应用 Chrome's network stack.更好的消除TLS的指纹特征。详细介绍请看项目官方介绍NaiveProxy官方文档。有兴趣的不妨一试。

程序工作流程:

  1. 使用SSH.NET登录远程主机
  2. 根据选择的代理来调用相应的脚本:
  • 选择V2ray则调用V2ray官方安装脚本 curl -o /tmp/go.sh https://raw.githubusercontent.com/v2fly/fhs-install-v2ray/master/install-release.sh bash /tmp/go.sh -f 安装V2ray。
  • 选择Trojan则调用Trojan官方安装脚本 curl -o /tmp/trojan-quickstart.sh https://raw.githubusercontent.com/trojan-gfw/trojan-quickstart/master/trojan-quickstart.sh yes | bash /tmp/trojan-quickstart.sh 安装Trojan。
  • 选择Trojan-Go则调用本项目内的trojan-go.sh安装 curl -o /tmp/trojan-go.sh https://raw.githubusercontent.com/proxysu/shellscript/master/trojan-go.sh bash /tmp/trojan-go.sh -f 安装Trojan-GO。
  • 选择NaiveProxy则调用本项目内的naive-quickstart.sh安装curl -o /tmp/naive-quickstart.sh https://raw.githubusercontent.com/proxysu/shellscript/master/naive-quickstart.sh yes | bash /tmp/naive-quickstart.sh 安装NaiveProxy。
  1. 根据选择读取相应配置模板,调用Newtonsoft.Json生成相应配置文件,并上传到服务器。所有模板及配置文件 在这里
  2. 如果使用WebSocket + TLS + Web/http2 + TLS + Web/Trojan + TLS + Web/NaiveProxy + TLS + Web模式则调用Caddy官方安装脚本 curl https://getcaddy.com -o getcaddy
    bash getcaddy personal hook.service 、或bash getcaddy personal hook.service,http.forwardproxy 安装 Caddy。
  3. 如果使用Http2/tcp+TLS/WebSocket+TLS/Trojan+TLS+Web模式则调用 curl https://raw.githubusercontent.com/acmesh-official/acme.sh/master/acme.sh | INSTALLONLINE=1 sh 安装acme.sh使用acme.sh申请并安装证书到V2ray/Trojan.
  4. 安装成功后,使用Newtonsoft.Json生成兼容于相应客户端的json文件用C#内置的Base64库将json生成url链接使用QRcoder生成二维码。

License

(GPL-V3)

运行文件下载

  • Beta版(随代码更新新添加功能可能有bug或不完善)
    下载
  • 正式版(正式发布的版本,新功能完善后发布)
    下载

Windows系统需要安装net4.0及以上

Microsoft .NET Framework 4.0 or higher

使用的C# 库

SSH.NET --------------- https://github.com/sshnet/SSH.NET
Newtonsoft.Json ------ https://github.com/JamesNK/Newtonsoft.Json
QRcoder --------------- https://github.com/codebude/QRCoder

程序安全

为了布署方便程序使用root账户登录主机出于慎重请不要在运行重要程序及用于生产的主机上使用。程序所有源码开源所使用的库都是github开源项目可以保障最大的使用安全程序不夹带任何私货、恶意代码及后门也不会收集任何个人资料不是在本项目地址下载的不做任何保障请尽可能从本项目地址下载。

程序使用问题反馈

v1.0.0发布小记

足足用了近两个月的业余时间终于做成一个功能还算完善的版本。虽是一个简单的小工具没想到对于我这个初学C#的人还是有点小吃力如果不是因为武汉肺炎疫情被禁足在家还真没时间。学习C#,为啥编写这样一个小工具软件来练手?现在一键安装脚本多的是,这样的工具还有必要吗?咋说呢?我也不知道有多少人会喜欢这个小工具,只是觉得自己用着方便,也想方便一下别人吧,喜欢用就用,不喜欢,也随意。
生意又忙起来了,对于我这个业余的编程爱好者,可能没有多少业余时间继续折腾了,尽力吧。
记于2020.4.18