Giter Site home page Giter Site logo

lwd-temp / integrated-examples Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lxhao61/integrated-examples

0.0 0.0 0.0 10.25 MB

以Xray或v2ray(V4)、trojan或trojan-go、naiveproxy、hysteria等打造科学上网的优化配置及最优组合示例,且提供集成常用插件的caddy(caddy2)程序,分享给大家食用及自己备份。

License: GNU General Public License v3.0

Shell 100.00%

integrated-examples's Introduction

这里是分享怎么搭建主流科学上网的优化配置及最优组合示例(如是不太了解科学上网,建议先依次从简单到复杂参考及部署。),其特点如下:

  1. 实现了SNI分流使用Local Loopback连接或使用Unix Domain Socket(UDS)连接及启用PROXY protocol支持。
  2. 实现了回落/分流使用Local Loopback连接或使用Unix Domain Socket(UDS)连接及启用PROXY protocol支持。
  3. 实现了反代使用Local Loopback连接或使用Unix Domain Socket(UDS)连接支持。
  4. 实现了nginx SNI分流(TCP转发)与定向UDP转发,以支持SNI分流后的naiveproxy HTTP/3代理应用。
  5. 实现了caddy Caddyfile配置开启H2C server、H2C proxy及接收PROXY protocol等应用支持,让caddy配置简单化。
  6. 实现了caddy json配置SNI分流应用,且支持针对转发端口或进程开启或关闭发送PROXY protocol,灵活性等同haproxy SNI分流。
  7. 实现了caddy与Xray相关应用的SSL/TLS证书申请与更新全自动化。
  8. 实现了CDN流量中转(基于WebSocket over TLS或基于gRPC over TLS)与正常应用同时使用。
  9. 实现了除Xray/v2ray mKCP与hysteria应用外,其它应用对外都使用443端口,各应用互不影响。
  10. 实现了除Xray/v2ray mKCP与hysteria应用外,其它应用都支持流量伪装与防探测,且提供流量伪装与防探测的回落或代理网站都支持HTTP自动跳转到HTTPS,SSL/TLS安全评估报告为A+等,即所有特征完全与真实网站一致。

服务端单一/简单应用配置示例

 caddy插件应用

  1. naiveproxy(caddy+forwardproxy) (基于caddy插件的naiveproxy应用。标记为N。)
  2. trojan-go(caddy+caddy-trojan) (基于caddy插件的trojan-go应用。标记为T。)
  3. caddy(N+T) (基于caddy插件的naiveproxy与trojian-go应用。)

 trojan-go/trojan回落应用

  1. trojan-go\trojan+nginx (trojan-go/trojan回落nginx应用。)
  2. trojan-go\trojan+caddy(N) (trojan-go/trojan加naiveproxy应用。)

 Xray/v2ray mKCP与hysteria应用

  1. v2ray(vless\vmess+kcp+seed) (vless+kcp+seed/vmess+kcp+seed应用。vless+kcp+seed标记为A。)
  2. hysteria (基于QUIC协议修改的双边加速代理应用。)

 Xray/v2ray WebSocket反代应用

  1. v2ray(vless\vmess+WS)+caddy\nginx (vless+ws+tls/vmess+ws+tls反代应用。vmess+ws+tls标记为B。)
  2. v2ray(SS+WS)+caddy\nginx (shadowsocks+ws+tls反代应用。)
  3. v2ray(SS+v2ray-plugin)+caddy\nginx (兼容原版shadowsocks加v2ray-plugin插件的WS反代应用。)
  4. v2ray(trojan+WS)+caddy\nginx (trojan+ws+tls反代应用。标记为C。)

 Xray/v2ray H2C反代应用

  1. v2ray(vless\vmess+h2c)+caddy (vless+h2c+tls/vmess+h2c+tls反代应用。vless+h2c+tls标记为D。)
  2. v2ray(trojan+h2c)+caddy (trojan+h2c+tls反代应用。)

 Xray/v2ray gRPC反代应用

  1. v2ray(vless\vmess+grpc)+caddy\nginx(vless+grpc+tls/vmess+grpc+tls反代应用。)
  2. v2ray(SS+grpc)+caddy\nginx(兼容原版shadowsocks加v2ray-plugin插件的gRPC反代应用。标记为G。)
  3. v2ray(trojan+grpc)+caddy\nginx(trojan+grpc+tls反代应用。)

 Xray/v2ray vless/trojan回落应用

  1. v2ray(vless\trojan+tcp+tls)+nginx (vless+tcp+tls/xtls或trojan+tcp+tls/xtls回落nginx应用。分别标记为E与F。)
  2. v2ray(vless\trojan+tcp+tls)+caddy (vless+tcp+tls/xtls或trojan+tcp+tls/xtls回落caddy应用。分别标记为E与F。)

服务端综合应用配置示例

 Xray/v2ray反向代理的综合应用

  1. v2ray(B+G+A)+nginx (反向代理WebSocket、gRPC的综合应用。)
  2. v2ray(B+D+G+A)+caddy(N+T) (反向代理WebSocket、H2C、gRPC加naiveproxy与trojian-go的综合应用。)

 Xray/v2ray vless回落/分流为主的综合应用

  1. v2ray(E+B+G+A)+nginx (以vless+tcp+tls/xtls为主的综合应用。)
  2. v2ray(E+B+D+G+A)+caddy(N+T) (以vless+tcp+tls/xtls为主加naiveproxy与trojian-go的综合应用。)

 Xray/v2ray trojan回落/分流为主的综合应用

  1. v2ray(F+C+G+A)+nginx (以trojan+tcp+tls/xtls为主的综合应用。)
  2. v2ray(F+C+D+G+A)+caddy(N) (以trojan+tcp+tls/xtls为主加naiveproxy的综合应用。)

 以套娃方式实现vless回落/分流与trojan回落共存为主的综合应用

  1. v2ray(E+C+F+A)+nginx (由套娃方式实现的综合应用。)
  2. v2ray(E+C+F+A)+caddy (由套娃方式实现的综合应用。)

 以nginx/caddy兼顾SNI分流实现vless回落/分流与trojan回落/分流共存为主的综合应用

  1. v2ray(E+B+F+C+G+A)+nginx (由nginx兼顾SNI分流实现的综合应用。)
  2. v2ray(E+B+F+C+D+G+A)+caddy(N) (由caddy兼顾SNI分流实现的综合应用。)

 以nginx/caddy兼顾SNI分流实现vless回落/分流为主的综合应用与trojan-go/trojan共存

  1. v2ray(E+B+G+A)+trojan+nginx (由nginx兼顾SNI分流实现的综合应用。)
  2. v2ray(E+B+D+G+A)+trojan+caddy(N) (由caddy兼顾SNI分流实现的综合应用。)

 由nginx/haproxy专职SNI分流实现兼顾各方优势的综合应用

  1. v2ray(E+B+D+G+A)+trojan+caddy(N)+nginx\haproxy (trojan-go/trojan由原版实现的综合应用。)
  2. v2ray(E+B+D+G+A)+caddy(N+T)+nginx\haproxy (trojan-go/trojan由caddy插件实现的综合应用。)
  3. v2ray(E+B+F+C+D+G+A)+caddy(N)+nginx\haproxy (trojan/trojan-go由Xray/v2ray配置实现的综合应用。)

 注意(以上所有示例):

  1. v2ray从v4.33.0版开始删除了XTLS应用,故若还想用XTLS应用,请选Xray。Xray是v2ray的超集(更好的整体性能和XTLS等一系列增强,且完全兼容。),也是因为这个应用分家独自发展。
  2. Xray/v2ray单一核心应用简记:A=vless+kcp+seed、B=vmess+ws+tls、C=trojan+ws+tls、D=vless+h2c+tls、E=vless+tcp+tls/xtls、F=trojan+tcp+tls/xtls、G=shadowsocks+grpc+tls。
  3. Xray/v2ray示例中各应用都配置了禁用BT。如不需要,可参考v2ray(other configuration)中BT_config.json示例删除相关配置。
  4. caddy插件单一应用简记:N=naiveproxy(caddy+forwardproxy)、T=trojan-go(caddy+caddy-trojan)。
  5. 目前caddy采用UDS监听不支持HTTP/3,即仅端口监听才支持开启HTTP/3。
  6. 受限应用条件及场景,naiveproxy的QUIC应用(即caddy的HTTP/3代理应用)不是所有相关naiveproxy示例都支持。
  7. 当前caddy从Let's Encrypt或ZeroSSL自动申请的SSL/TLS证书都为ECC证书。
  8. 流量伪装与防探测网站可由其它WEB应用软件实现,其支持反代(WebSocket、gRPC及H2C)与支持回落(H2C server及HTTP/1.1 server)取决于自身,配置自行参考caddy或nginx对应示例。
  9. 附加相关插件的caddy程序文件已编译好,去本人Releases中下载即可。
  10. trojan-go安卓客户端可以去本人Releases中下载(最末)。

服务端特殊应用配置示例

  1. v2ray(other configuration) (Xray或v2ray的特色应用配置方法。)
  2. caddy(other configuration) (caddy的特色应用配置方法。)

原版客户端配置示例

client configuration(若使用第三方客户端参考即可。)

systemd服务文件

service configuration(配置软件服务由systemd管理。)

使用/贡献指南

  1. 若科学上网相关软件增加新功能,开始在服务端单一应用配置示例中添加;过一段时间(测试及验证稳定后)才会服务端综合应用配置示例中添加。
  2. 欢迎你提交 PR,如对现行配置示例优化修订,或将自己使用的配置制作模板提交等。

integrated-examples's People

Contributors

johnshall avatar lxhao61 avatar misaka-blog avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.